add long and lat to events
This commit is contained in:
@@ -15,7 +15,8 @@ CREATE TABLE openpanel.events (
|
||||
`country` String,
|
||||
`city` String,
|
||||
`region` String,
|
||||
`continent` String,
|
||||
`longitude` Int16,
|
||||
`latitude` Int16,
|
||||
`os` String,
|
||||
`os_version` String,
|
||||
`browser` String,
|
||||
@@ -77,6 +78,16 @@ ALTER TABLE
|
||||
ADD
|
||||
COLUMN id UUID DEFAULT generateUUIDv4() FIRST;
|
||||
|
||||
ALTER TABLE
|
||||
events
|
||||
ADD
|
||||
COLUMN longitude Nullable(Int16);
|
||||
|
||||
ALTER TABLE
|
||||
events
|
||||
ADD
|
||||
COLUMN latitude Nullable(Int16);
|
||||
|
||||
--- Materialized views (DAU)
|
||||
CREATE MATERIALIZED VIEW dau_mv ENGINE = AggregatingMergeTree() PARTITION BY toYYYYMMDD(date)
|
||||
ORDER BY
|
||||
|
||||
@@ -37,6 +37,8 @@ export interface IClickhouseEvent {
|
||||
country: string;
|
||||
city: string;
|
||||
region: string;
|
||||
longitude: number | null;
|
||||
latitude: number | null;
|
||||
os: string;
|
||||
os_version: string;
|
||||
browser: string;
|
||||
@@ -65,6 +67,8 @@ export function transformEvent(
|
||||
country: event.country,
|
||||
city: event.city,
|
||||
region: event.region,
|
||||
longitude: event.longitude,
|
||||
latitude: event.latitude,
|
||||
os: event.os,
|
||||
osVersion: event.os_version,
|
||||
browser: event.browser,
|
||||
@@ -97,7 +101,8 @@ export interface IServiceCreateEventPayload {
|
||||
country?: string | undefined;
|
||||
city?: string | undefined;
|
||||
region?: string | undefined;
|
||||
continent?: string | undefined;
|
||||
longitude?: number | undefined | null;
|
||||
latitude?: number | undefined | null;
|
||||
os?: string | undefined;
|
||||
osVersion?: string | undefined;
|
||||
browser?: string | undefined;
|
||||
@@ -121,6 +126,8 @@ export interface IServiceEventMinimal {
|
||||
sessionId: string;
|
||||
createdAt: Date;
|
||||
country?: string | undefined;
|
||||
longitude?: number | undefined | null;
|
||||
latitude?: number | undefined | null;
|
||||
os?: string | undefined;
|
||||
browser?: string | undefined;
|
||||
device?: string | undefined;
|
||||
@@ -156,6 +163,8 @@ export function transformMinimalEvent(
|
||||
sessionId: event.sessionId,
|
||||
createdAt: event.createdAt,
|
||||
country: event.country,
|
||||
longitude: event.longitude,
|
||||
latitude: event.latitude,
|
||||
os: event.os,
|
||||
browser: event.browser,
|
||||
device: event.device,
|
||||
@@ -228,6 +237,8 @@ export async function createEvent(
|
||||
country: payload.country,
|
||||
city: payload.city,
|
||||
region: payload.region,
|
||||
longitude: payload.longitude,
|
||||
latitude: payload.latitude,
|
||||
os: payload.os,
|
||||
os_version: payload.osVersion,
|
||||
browser: payload.browser,
|
||||
@@ -255,6 +266,8 @@ export async function createEvent(
|
||||
country: payload.country ?? '',
|
||||
city: payload.city ?? '',
|
||||
region: payload.region ?? '',
|
||||
longitude: payload.longitude ?? null,
|
||||
latitude: payload.latitude ?? null,
|
||||
os: payload.os ?? '',
|
||||
os_version: payload.osVersion ?? '',
|
||||
browser: payload.browser ?? '',
|
||||
|
||||
@@ -14,7 +14,8 @@ export interface EventsQueuePayloadIncomingEvent {
|
||||
country: string | undefined;
|
||||
city: string | undefined;
|
||||
region: string | undefined;
|
||||
continent: string | undefined;
|
||||
longitude: number | undefined;
|
||||
latitude: number | undefined;
|
||||
};
|
||||
headers: {
|
||||
origin: string | undefined;
|
||||
|
||||
Reference in New Issue
Block a user