fix: notifications on session_start
This commit is contained in:
@@ -1,10 +1,6 @@
|
|||||||
import { logger as baseLogger } from '@/utils/logger';
|
import { logger as baseLogger } from '@/utils/logger';
|
||||||
import {
|
import { createSessionEndJob, getSessionEnd } from '@/utils/session-handler';
|
||||||
createSessionEndJob,
|
import { getTime, isSameDomain, parsePath } from '@openpanel/common';
|
||||||
createSessionStart,
|
|
||||||
getSessionEnd,
|
|
||||||
} from '@/utils/session-handler';
|
|
||||||
import { isSameDomain, parsePath } from '@openpanel/common';
|
|
||||||
import {
|
import {
|
||||||
getReferrerWithQuery,
|
getReferrerWithQuery,
|
||||||
parseReferrer,
|
parseReferrer,
|
||||||
@@ -193,7 +189,14 @@ export async function incomingEvent(
|
|||||||
|
|
||||||
if (!sessionEnd) {
|
if (!sessionEnd) {
|
||||||
logger.info('Creating session start event', { event: payload });
|
logger.info('Creating session start event', { event: payload });
|
||||||
await createSessionStart({ payload }).catch((error) => {
|
await createEventAndNotify(
|
||||||
|
{
|
||||||
|
...payload,
|
||||||
|
name: 'session_start',
|
||||||
|
createdAt: new Date(getTime(payload.createdAt) - 100),
|
||||||
|
},
|
||||||
|
logger,
|
||||||
|
).catch((error) => {
|
||||||
logger.error('Error creating session start event', { event: payload });
|
logger.error('Error creating session start event', { event: payload });
|
||||||
throw error;
|
throw error;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -12,18 +12,6 @@ export const SESSION_TIMEOUT = 1000 * 60 * 30;
|
|||||||
const getSessionEndJobId = (projectId: string, deviceId: string) =>
|
const getSessionEndJobId = (projectId: string, deviceId: string) =>
|
||||||
`sessionEnd:${projectId}:${deviceId}`;
|
`sessionEnd:${projectId}:${deviceId}`;
|
||||||
|
|
||||||
export async function createSessionStart({
|
|
||||||
payload,
|
|
||||||
}: {
|
|
||||||
payload: IServiceCreateEventPayload;
|
|
||||||
}) {
|
|
||||||
return createEvent({
|
|
||||||
...payload,
|
|
||||||
name: 'session_start',
|
|
||||||
createdAt: new Date(getTime(payload.createdAt) - 100),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function createSessionEndJob({
|
export async function createSessionEndJob({
|
||||||
payload,
|
payload,
|
||||||
}: {
|
}: {
|
||||||
|
|||||||
Reference in New Issue
Block a user