enterprise-logging-system 1.0.30 → 1.0.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/backend/models/AccessLog.d.ts +2 -46
- package/dist/backend/models/AccessLog.d.ts.map +1 -1
- package/dist/backend/models/AccessLog.js +4 -4
- package/dist/backend/models/AccessLog.js.map +1 -1
- package/dist/backend/models/SessionLog.d.ts +1 -45
- package/dist/backend/models/SessionLog.d.ts.map +1 -1
- package/dist/backend/models/SessionLog.js +5 -4
- package/dist/backend/models/SessionLog.js.map +1 -1
- package/dist/backend/repositories/AccessLogRepository.d.ts.map +1 -1
- package/dist/backend/repositories/AccessLogRepository.js +96 -101
- package/dist/backend/repositories/AccessLogRepository.js.map +1 -1
- package/dist/backend/repositories/SessionLogRepository.d.ts.map +1 -1
- package/dist/backend/repositories/SessionLogRepository.js +0 -15
- package/dist/backend/repositories/SessionLogRepository.js.map +1 -1
- package/package.json +1 -1
|
@@ -30,52 +30,8 @@ export interface AccessLog extends BaseLogEntry {
|
|
|
30
30
|
tenant_user_date: string;
|
|
31
31
|
session_time: string;
|
|
32
32
|
page_time: string;
|
|
33
|
-
session_date
|
|
33
|
+
session_date: string;
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
|
-
export declare const ACCESS_LOG_INDEXES:
|
|
37
|
-
keys: {
|
|
38
|
-
'indexes.session_date': number;
|
|
39
|
-
tenantId?: undefined;
|
|
40
|
-
userId?: undefined;
|
|
41
|
-
timestamp?: undefined;
|
|
42
|
-
sessionId?: undefined;
|
|
43
|
-
};
|
|
44
|
-
name: string;
|
|
45
|
-
sparse: boolean;
|
|
46
|
-
expireAfterSeconds?: undefined;
|
|
47
|
-
} | {
|
|
48
|
-
keys: {
|
|
49
|
-
tenantId: number;
|
|
50
|
-
userId: number;
|
|
51
|
-
timestamp: number;
|
|
52
|
-
'indexes.session_date'?: undefined;
|
|
53
|
-
sessionId?: undefined;
|
|
54
|
-
};
|
|
55
|
-
name: string;
|
|
56
|
-
sparse?: undefined;
|
|
57
|
-
expireAfterSeconds?: undefined;
|
|
58
|
-
} | {
|
|
59
|
-
keys: {
|
|
60
|
-
sessionId: number;
|
|
61
|
-
timestamp: number;
|
|
62
|
-
'indexes.session_date'?: undefined;
|
|
63
|
-
tenantId?: undefined;
|
|
64
|
-
userId?: undefined;
|
|
65
|
-
};
|
|
66
|
-
name: string;
|
|
67
|
-
sparse?: undefined;
|
|
68
|
-
expireAfterSeconds?: undefined;
|
|
69
|
-
} | {
|
|
70
|
-
keys: {
|
|
71
|
-
timestamp: number;
|
|
72
|
-
'indexes.session_date'?: undefined;
|
|
73
|
-
tenantId?: undefined;
|
|
74
|
-
userId?: undefined;
|
|
75
|
-
sessionId?: undefined;
|
|
76
|
-
};
|
|
77
|
-
name: string;
|
|
78
|
-
expireAfterSeconds: number;
|
|
79
|
-
sparse?: undefined;
|
|
80
|
-
})[];
|
|
36
|
+
export declare const ACCESS_LOG_INDEXES: any[];
|
|
81
37
|
//# sourceMappingURL=AccessLog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessLog.d.ts","sourceRoot":"","sources":["../../../src/backend/models/AccessLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEzF,MAAM,WAAW,SAAU,SAAQ,YAAY;IAE7C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,IAAI,EAAE,WAAW,GAAG,kBAAkB,GAAG,eAAe,GAAG,aAAa,CAAC;IACzE,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAGrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAGjC,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IAGjB,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,WAAW,CAAC;IAGtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,OAAO,EAAE;QACP,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,
|
|
1
|
+
{"version":3,"file":"AccessLog.d.ts","sourceRoot":"","sources":["../../../src/backend/models/AccessLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEzF,MAAM,WAAW,SAAU,SAAQ,YAAY;IAE7C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,IAAI,EAAE,WAAW,GAAG,kBAAkB,GAAG,eAAe,GAAG,aAAa,CAAC;IACzE,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IAGrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAGjC,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IAGjB,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,WAAW,CAAC;IAGtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,OAAO,EAAE;QACP,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,eAAO,MAAM,kBAAkB,OAK9B,CAAC"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ACCESS_LOG_INDEXES = void 0;
|
|
4
4
|
exports.ACCESS_LOG_INDEXES = [
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
// { keys: { tenantId: 1, userId: 1, timestamp: -1 }, name: 'tenant_user_date_idx' },
|
|
6
|
+
// { keys: { sessionId: 1, activityType: 1, timestamp: -1 }, name: 'session_activity_idx' },
|
|
7
|
+
// { keys: { pageId: 1, timestamp: -1 }, name: 'page_tracking_idx' },
|
|
8
|
+
// { keys: { timestamp: 1 }, name: 'timestamp_idx', expireAfterSeconds: 2592000 } // 30 days TTL
|
|
9
9
|
];
|
|
10
10
|
//# sourceMappingURL=AccessLog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessLog.js","sourceRoot":"","sources":["../../../src/backend/models/AccessLog.ts"],"names":[],"mappings":";;;AAsDa,QAAA,kBAAkB,GAAG;
|
|
1
|
+
{"version":3,"file":"AccessLog.js","sourceRoot":"","sources":["../../../src/backend/models/AccessLog.ts"],"names":[],"mappings":";;;AAsDa,QAAA,kBAAkB,GAAG;AAChC,qFAAqF;AACrF,4FAA4F;AAC5F,qEAAqE;AACrE,gGAAgG;CACjG,CAAC"}
|
|
@@ -37,49 +37,5 @@ export interface SessionLog extends BaseLogEntry {
|
|
|
37
37
|
session_duration: string;
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
|
-
export declare const SESSION_LOG_INDEXES:
|
|
41
|
-
keys: {
|
|
42
|
-
sessionId: number;
|
|
43
|
-
tenantId?: undefined;
|
|
44
|
-
userId?: undefined;
|
|
45
|
-
loginTime?: undefined;
|
|
46
|
-
timestamp?: undefined;
|
|
47
|
-
};
|
|
48
|
-
name: string;
|
|
49
|
-
unique: boolean;
|
|
50
|
-
expireAfterSeconds?: undefined;
|
|
51
|
-
} | {
|
|
52
|
-
keys: {
|
|
53
|
-
tenantId: number;
|
|
54
|
-
userId: number;
|
|
55
|
-
loginTime: number;
|
|
56
|
-
sessionId?: undefined;
|
|
57
|
-
timestamp?: undefined;
|
|
58
|
-
};
|
|
59
|
-
name: string;
|
|
60
|
-
unique?: undefined;
|
|
61
|
-
expireAfterSeconds?: undefined;
|
|
62
|
-
} | {
|
|
63
|
-
keys: {
|
|
64
|
-
loginTime: number;
|
|
65
|
-
sessionId?: undefined;
|
|
66
|
-
tenantId?: undefined;
|
|
67
|
-
userId?: undefined;
|
|
68
|
-
timestamp?: undefined;
|
|
69
|
-
};
|
|
70
|
-
name: string;
|
|
71
|
-
unique?: undefined;
|
|
72
|
-
expireAfterSeconds?: undefined;
|
|
73
|
-
} | {
|
|
74
|
-
keys: {
|
|
75
|
-
timestamp: number;
|
|
76
|
-
sessionId?: undefined;
|
|
77
|
-
tenantId?: undefined;
|
|
78
|
-
userId?: undefined;
|
|
79
|
-
loginTime?: undefined;
|
|
80
|
-
};
|
|
81
|
-
name: string;
|
|
82
|
-
expireAfterSeconds: number;
|
|
83
|
-
unique?: undefined;
|
|
84
|
-
})[];
|
|
40
|
+
export declare const SESSION_LOG_INDEXES: any[];
|
|
85
41
|
//# sourceMappingURL=SessionLog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionLog.d.ts","sourceRoot":"","sources":["../../../src/backend/models/SessionLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA4B,MAAM,oBAAoB,CAAC;AAE5E,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACxB,gBAAgB,EAAE,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAC7C,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAG5C,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IAGxB,eAAe,EAAE,cAAc,EAAE,CAAC;IAGlC,aAAa,EAAE,KAAK,CAAC;QACnB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,aAAa,GAAG,gBAAgB,GAAG,YAAY,GAAG,UAAU,CAAC;QACxF,SAAS,EAAE,IAAI,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IAEH,gBAAgB,EAAE,IAAI,CAAC;IAGvB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,IAAI,CAAC;IAGxB,iBAAiB,EAAE,KAAK,CAAC;QACvB,SAAS,EAAE,IAAI,CAAC;QAChB,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IAGH,OAAO,EAAE;QACP,mBAAmB,EAAE,MAAM,CAAC;QAC5B,UAAU,EAAE,MAAM,CAAC;QACnB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"SessionLog.d.ts","sourceRoot":"","sources":["../../../src/backend/models/SessionLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA4B,MAAM,oBAAoB,CAAC;AAE5E,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACxB,gBAAgB,EAAE,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAC7C,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAG5C,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IAGxB,eAAe,EAAE,cAAc,EAAE,CAAC;IAGlC,aAAa,EAAE,KAAK,CAAC;QACnB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,aAAa,GAAG,gBAAgB,GAAG,YAAY,GAAG,UAAU,CAAC;QACxF,SAAS,EAAE,IAAI,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IAEH,gBAAgB,EAAE,IAAI,CAAC;IAGvB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,IAAI,CAAC;IAGxB,iBAAiB,EAAE,KAAK,CAAC;QACvB,SAAS,EAAE,IAAI,CAAC;QAChB,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IAGH,OAAO,EAAE;QACP,mBAAmB,EAAE,MAAM,CAAC;QAC5B,UAAU,EAAE,MAAM,CAAC;QACnB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED,eAAO,MAAM,mBAAmB,OAM/B,CAAC"}
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SESSION_LOG_INDEXES = void 0;
|
|
4
4
|
exports.SESSION_LOG_INDEXES = [
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
// { keys: { tenantId: 1, userId: 1, sessionId: 1 }, name: 'tenant_user_session_idx' },
|
|
6
|
+
// { keys: { loginTime: -1 }, name: 'login_time_idx' },
|
|
7
|
+
// { keys: { sessionDuration: -1 }, name: 'session_duration_idx' },
|
|
8
|
+
// { keys: { 'activityPeriods.startTime': 1 }, name: 'activity_periods_idx' },
|
|
9
|
+
// { keys: { timestamp: 1 }, name: 'timestamp_idx', expireAfterSeconds: 2592000 } // 30 days TTL
|
|
9
10
|
];
|
|
10
11
|
//# sourceMappingURL=SessionLog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionLog.js","sourceRoot":"","sources":["../../../src/backend/models/SessionLog.ts"],"names":[],"mappings":";;;AAuDa,QAAA,mBAAmB,GAAG;
|
|
1
|
+
{"version":3,"file":"SessionLog.js","sourceRoot":"","sources":["../../../src/backend/models/SessionLog.ts"],"names":[],"mappings":";;;AAuDa,QAAA,mBAAmB,GAAG;AACjC,uFAAuF;AACvF,uDAAuD;AACvD,mEAAmE;AACnE,8EAA8E;AAC9E,gGAAgG;CACjG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessLogRepository.d.ts","sourceRoot":"","sources":["../../../src/backend/repositories/AccessLogRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAsB,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAoB,kBAAkB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEjG,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,SAAS,CAAC;gBACpD,EAAE,EAAE,EAAE;IAIlB;;;;OAIG;IACG,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"AccessLogRepository.d.ts","sourceRoot":"","sources":["../../../src/backend/repositories/AccessLogRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAsB,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAoB,kBAAkB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEjG,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,SAAS,CAAC;gBACpD,EAAE,EAAE,EAAE;IAIlB;;;;OAIG;IACG,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAgGvF;;;;OAIG;IACG,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IA6F/E,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAO3E,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAInE;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAyC/D,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAYrF,OAAO,CAAC,UAAU;CAGnB"}
|
|
@@ -20,19 +20,13 @@ class AccessLogRepository extends BaseRepository_1.BaseRepository {
|
|
|
20
20
|
// Create a unique daily key for this session
|
|
21
21
|
const dateKey = `${currentDate.getFullYear()}-${String(currentDate.getMonth() + 1).padStart(2, '0')}-${String(currentDate.getDate()).padStart(2, '0')}`;
|
|
22
22
|
const dailyKey = `${log.sessionId}_${dateKey}`;
|
|
23
|
-
//
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
]
|
|
32
|
-
});
|
|
33
|
-
if (existingLog) {
|
|
34
|
-
// Update existing log
|
|
35
|
-
const updatedLog = await this.update(existingLog._id, {
|
|
23
|
+
// Use upsert with a unique daily key to ensure only one entry per session per day
|
|
24
|
+
const filter = {
|
|
25
|
+
'indexes.session_date': dailyKey
|
|
26
|
+
};
|
|
27
|
+
const update = {
|
|
28
|
+
$set: {
|
|
29
|
+
// Always update these fields to latest values
|
|
36
30
|
timestamp: log.timestamp,
|
|
37
31
|
pageId: log.pageId,
|
|
38
32
|
pageTitle: log.pageTitle,
|
|
@@ -44,51 +38,54 @@ class AccessLogRepository extends BaseRepository_1.BaseRepository {
|
|
|
44
38
|
geoLocation: log.geoLocation,
|
|
45
39
|
network: log.network,
|
|
46
40
|
...(log.metadata && { metadata: log.metadata }),
|
|
47
|
-
indexes: {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
41
|
+
'indexes.tenant_user_date': `${log.tenantId}_${log.userId}_${log.timestamp.getTime()}`,
|
|
42
|
+
'indexes.session_time': `${log.sessionId}_${log.activityType}`,
|
|
43
|
+
'indexes.page_time': `${log.pageId}_${log.timestamp.getTime()}`
|
|
44
|
+
},
|
|
45
|
+
$setOnInsert: {
|
|
46
|
+
// Only set these on first insert
|
|
47
|
+
_id: this.generateId(),
|
|
48
|
+
type: 'PAGE_OPEN',
|
|
49
|
+
tenantId: log.tenantId,
|
|
50
|
+
userId: log.userId,
|
|
51
|
+
userRole: log.userRole,
|
|
52
|
+
sessionId: log.sessionId,
|
|
53
|
+
ipAddress: log.ipAddress,
|
|
54
|
+
userAgent: log.userAgent,
|
|
55
|
+
username: log.username,
|
|
56
|
+
employeeId: log.employeeId,
|
|
57
|
+
activityType: log.activityType,
|
|
58
|
+
activityName: log.activityName,
|
|
59
|
+
eventTime: log.eventTime,
|
|
60
|
+
startTime: log.startTime || log.timestamp,
|
|
61
|
+
'indexes.session_date': dailyKey
|
|
62
|
+
},
|
|
63
|
+
$inc: {
|
|
64
|
+
// Track how many times this session was active today
|
|
65
|
+
activityCount: 1
|
|
58
66
|
}
|
|
67
|
+
};
|
|
68
|
+
const result = await this.collection.findOneAndUpdate(filter, update, {
|
|
69
|
+
upsert: true,
|
|
70
|
+
returnDocument: 'after'
|
|
71
|
+
});
|
|
72
|
+
if (result.value) {
|
|
73
|
+
// Calculate duration for existing entries
|
|
74
|
+
const startTime = new Date(result.value.startTime || result.value.timestamp);
|
|
75
|
+
result.value.activeDuration = log.timestamp.getTime() - startTime.getTime();
|
|
76
|
+
return result.value;
|
|
77
|
+
}
|
|
78
|
+
// Fallback: if upsert failed, try to find the existing record
|
|
79
|
+
const existingLog = await this.findOne(filter);
|
|
80
|
+
if (existingLog) {
|
|
81
|
+
return existingLog;
|
|
59
82
|
}
|
|
60
|
-
//
|
|
83
|
+
// Last resort: create new record manually
|
|
61
84
|
const accessLog = {
|
|
62
|
-
|
|
85
|
+
...log,
|
|
63
86
|
_id: this.generateId(),
|
|
64
|
-
tenantId: log.tenantId,
|
|
65
|
-
userId: log.userId,
|
|
66
|
-
userRole: log.userRole,
|
|
67
|
-
sessionId: log.sessionId,
|
|
68
|
-
ipAddress: log.ipAddress,
|
|
69
|
-
userAgent: log.userAgent,
|
|
70
|
-
timestamp: log.timestamp,
|
|
71
|
-
metadata: log.metadata,
|
|
72
|
-
// AccessLog specific fields
|
|
73
|
-
username: log.username,
|
|
74
|
-
employeeId: log.employeeId,
|
|
75
87
|
type: 'PAGE_OPEN',
|
|
76
|
-
activityType: log.activityType,
|
|
77
|
-
activityName: log.activityName,
|
|
78
|
-
eventTime: log.eventTime,
|
|
79
|
-
startTime: log.startTime,
|
|
80
|
-
browser: log.browser,
|
|
81
|
-
// Optional fields
|
|
82
|
-
pageId: log.pageId,
|
|
83
|
-
pageTitle: log.pageTitle,
|
|
84
|
-
pageUrl: log.pageUrl,
|
|
85
|
-
pageRoute: log.pageRoute,
|
|
86
|
-
previousPage: log.previousPage,
|
|
87
|
-
geoLocation: log.geoLocation,
|
|
88
|
-
network: log.network,
|
|
89
|
-
// Tracking fields
|
|
90
88
|
activityCount: 1,
|
|
91
|
-
// Indexes
|
|
92
89
|
indexes: {
|
|
93
90
|
tenant_user_date: `${log.tenantId}_${log.userId}_${log.timestamp.getTime()}`,
|
|
94
91
|
session_time: `${log.sessionId}_${log.activityType}`,
|
|
@@ -111,19 +108,13 @@ class AccessLogRepository extends BaseRepository_1.BaseRepository {
|
|
|
111
108
|
// Create a unique daily key for this session
|
|
112
109
|
const dateKey = `${currentDate.getFullYear()}-${String(currentDate.getMonth() + 1).padStart(2, '0')}-${String(currentDate.getDate()).padStart(2, '0')}`;
|
|
113
110
|
const dailyKey = `${log.sessionId}_${dateKey}`;
|
|
114
|
-
//
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
}
|
|
122
|
-
]
|
|
123
|
-
});
|
|
124
|
-
if (existingLog) {
|
|
125
|
-
// Update existing log
|
|
126
|
-
const updatedLog = await this.update(existingLog._id, {
|
|
111
|
+
// Use upsert with a unique daily key to ensure only one entry per session per day
|
|
112
|
+
const filter = {
|
|
113
|
+
'indexes.session_date': dailyKey
|
|
114
|
+
};
|
|
115
|
+
const update = {
|
|
116
|
+
$set: {
|
|
117
|
+
// Always update these fields to latest values
|
|
127
118
|
timestamp: log.timestamp,
|
|
128
119
|
activityType: log.activityType,
|
|
129
120
|
activityName: log.activityName,
|
|
@@ -134,48 +125,52 @@ class AccessLogRepository extends BaseRepository_1.BaseRepository {
|
|
|
134
125
|
browser: log.browser,
|
|
135
126
|
...(log.pageId && { pageId: log.pageId }),
|
|
136
127
|
...(log.metadata && { metadata: log.metadata }),
|
|
137
|
-
indexes: {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
128
|
+
'indexes.tenant_user_date': `${log.tenantId}_${log.userId}_${log.timestamp.getTime()}`,
|
|
129
|
+
'indexes.session_time': `${log.sessionId}_${log.activityType}`,
|
|
130
|
+
'indexes.page_time': `${log.pageId}_${log.timestamp.getTime()}`
|
|
131
|
+
},
|
|
132
|
+
$setOnInsert: {
|
|
133
|
+
// Only set these on first insert
|
|
134
|
+
_id: this.generateId(),
|
|
135
|
+
type: 'ACTION_PERFORMED',
|
|
136
|
+
tenantId: log.tenantId,
|
|
137
|
+
userId: log.userId,
|
|
138
|
+
userRole: log.userRole,
|
|
139
|
+
sessionId: log.sessionId,
|
|
140
|
+
ipAddress: log.ipAddress,
|
|
141
|
+
userAgent: log.userAgent,
|
|
142
|
+
username: log.username,
|
|
143
|
+
employeeId: log.employeeId,
|
|
144
|
+
eventTime: log.eventTime,
|
|
145
|
+
startTime: log.startTime || log.timestamp,
|
|
146
|
+
'indexes.session_date': dailyKey
|
|
147
|
+
},
|
|
148
|
+
$inc: {
|
|
149
|
+
// Track how many actions this session performed today
|
|
150
|
+
actionCount: 1
|
|
148
151
|
}
|
|
152
|
+
};
|
|
153
|
+
const result = await this.collection.findOneAndUpdate(filter, update, {
|
|
154
|
+
upsert: true,
|
|
155
|
+
returnDocument: 'after'
|
|
156
|
+
});
|
|
157
|
+
if (result.value) {
|
|
158
|
+
// Calculate duration for existing entries
|
|
159
|
+
const startTime = new Date(result.value.startTime || result.value.timestamp);
|
|
160
|
+
result.value.activeDuration = log.timestamp.getTime() - startTime.getTime();
|
|
161
|
+
return result.value;
|
|
162
|
+
}
|
|
163
|
+
// Fallback: if upsert failed, try to find the existing record
|
|
164
|
+
const existingLog = await this.findOne(filter);
|
|
165
|
+
if (existingLog) {
|
|
166
|
+
return existingLog;
|
|
149
167
|
}
|
|
150
|
-
//
|
|
168
|
+
// Last resort: create new record manually
|
|
151
169
|
const accessLog = {
|
|
152
|
-
|
|
170
|
+
...log,
|
|
153
171
|
_id: this.generateId(),
|
|
154
|
-
tenantId: log.tenantId,
|
|
155
|
-
userId: log.userId,
|
|
156
|
-
userRole: log.userRole,
|
|
157
|
-
sessionId: log.sessionId,
|
|
158
|
-
ipAddress: log.ipAddress,
|
|
159
|
-
userAgent: log.userAgent,
|
|
160
|
-
timestamp: log.timestamp,
|
|
161
|
-
metadata: log.metadata,
|
|
162
|
-
// AccessLog specific fields
|
|
163
|
-
username: log.username,
|
|
164
|
-
employeeId: log.employeeId,
|
|
165
172
|
type: 'ACTION_PERFORMED',
|
|
166
|
-
activityType: log.activityType,
|
|
167
|
-
activityName: log.activityName,
|
|
168
|
-
eventTime: log.eventTime,
|
|
169
|
-
startTime: log.startTime,
|
|
170
|
-
browser: log.browser,
|
|
171
|
-
// Optional fields
|
|
172
|
-
pageId: log.pageId,
|
|
173
|
-
actionType: log.actionType,
|
|
174
|
-
actionTarget: log.actionTarget,
|
|
175
|
-
actionData: log.actionData,
|
|
176
|
-
// Tracking fields
|
|
177
173
|
actionCount: 1,
|
|
178
|
-
// Indexes
|
|
179
174
|
indexes: {
|
|
180
175
|
tenant_user_date: `${log.tenantId}_${log.userId}_${log.timestamp.getTime()}`,
|
|
181
176
|
session_time: `${log.sessionId}_${log.activityType}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessLogRepository.js","sourceRoot":"","sources":["../../../src/backend/repositories/AccessLogRepository.ts"],"names":[],"mappings":";;;AACA,qDAAkD;AAClD,mDAAoE;AAGpE,MAAa,mBAAoB,SAAQ,+BAAyB;IAChE,YAAY,EAAM;QAChB,KAAK,CAAC,EAAE,EAAE,aAAa,EAAE,8BAAkB,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,GAAgD;QAChE,yDAAyD;QACzD,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAClH,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAErH,6CAA6C;QAC7C,MAAM,OAAO,GAAG,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QACxJ,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,SAAS,IAAI,OAAO,EAAE,CAAC;QAE/C,
|
|
1
|
+
{"version":3,"file":"AccessLogRepository.js","sourceRoot":"","sources":["../../../src/backend/repositories/AccessLogRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionLogRepository.d.ts","sourceRoot":"","sources":["../../../src/backend/repositories/SessionLogRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAuC,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhF,qBAAa,oBAAqB,SAAQ,cAAc,CAAC,UAAU,CAAC;IAClE,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAiB;gBAE5C,EAAE,EAAE,EAAE;IAIZ,QAAQ,CACZ,GAAG,EAAE,IAAI,CACP,UAAU,EACR,KAAK,GACL,MAAM,GACN,iBAAiB,GACjB,gBAAgB,GAChB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GACrB,mBAAmB,GACnB,iBAAiB,GACjB,kBAAkB,GAClB,SAAS,CACZ,GACA,OAAO,CAAC,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionLogRepository.d.ts","sourceRoot":"","sources":["../../../src/backend/repositories/SessionLogRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAuC,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhF,qBAAa,oBAAqB,SAAQ,cAAc,CAAC,UAAU,CAAC;IAClE,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAiB;gBAE5C,EAAE,EAAE,EAAE;IAIZ,QAAQ,CACZ,GAAG,EAAE,IAAI,CACP,UAAU,EACR,KAAK,GACL,MAAM,GACN,iBAAiB,GACjB,gBAAgB,GAChB,mBAAmB,GACnB,mBAAmB,GACnB,qBAAqB,GACrB,mBAAmB,GACnB,iBAAiB,GACjB,kBAAkB,GAClB,SAAS,CACZ,GACA,OAAO,CAAC,UAAU,CAAC;IAkChB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,GAAG,SAAS,GAAG,OAAgB,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAsCvG,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAyEjF,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAY9D,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAgBlG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAO5E,iBAAiB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAM1C,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAIpE;;OAEG;IACH,0BAA0B,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG;IA4FpD,OAAO,CAAC,0BAA0B;IAelC;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAoChE;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA+D/B,OAAO,CAAC,wBAAwB;IAYhC,OAAO,CAAC,uBAAuB;IAe/B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,UAAU;CAGnB"}
|
|
@@ -10,21 +10,6 @@ class SessionLogRepository extends BaseRepository_1.BaseRepository {
|
|
|
10
10
|
}
|
|
11
11
|
async logLogin(log) {
|
|
12
12
|
const now = new Date();
|
|
13
|
-
// Check if a session with this sessionId already exists
|
|
14
|
-
const existingSession = await this.findBySessionId(log.sessionId);
|
|
15
|
-
if (existingSession) {
|
|
16
|
-
// Update the existing session instead of creating a new one
|
|
17
|
-
// This handles cases where the frontend sends multiple start requests
|
|
18
|
-
const updatedSession = await this.update(existingSession._id, {
|
|
19
|
-
lastActivityTime: now,
|
|
20
|
-
lastHeartbeatTime: now,
|
|
21
|
-
heartbeatCount: existingSession.heartbeatCount + 1,
|
|
22
|
-
// Update session state to ACTIVE if it was ended
|
|
23
|
-
...(existingSession.sessionState === 'ENDED' && { sessionState: 'ACTIVE' })
|
|
24
|
-
});
|
|
25
|
-
return updatedSession || existingSession;
|
|
26
|
-
}
|
|
27
|
-
// Create new session only if it doesn't exist
|
|
28
13
|
const sessionLog = {
|
|
29
14
|
...log,
|
|
30
15
|
_id: this.generateId(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionLogRepository.js","sourceRoot":"","sources":["../../../src/backend/repositories/SessionLogRepository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SessionLogRepository.js","sourceRoot":"","sources":["../../../src/backend/repositories/SessionLogRepository.ts"],"names":[],"mappings":"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"}
|