feat(analytics): persona logging upgrade and Sentry system config

Add client-logging SDK, expanded event taxonomy, API observability, admin domain events UI, and move SENTRY_DSN to HQ system settings with @sentry/node bootstrap after config preload.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-03 22:30:02 +08:00
parent ab10431001
commit 89fd333702
91 changed files with 1805 additions and 136 deletions
+26
View File
@@ -0,0 +1,26 @@
import { createStoreTracker } from '@dukang/client-logging';
import { apiBase } from './api';
const tracker = createStoreTracker({
apiBase,
clientApp: 'SHOP_H5',
getToken: () => localStorage.getItem('shopAccessToken'),
getStoreId: () => {
try {
const raw = localStorage.getItem('shopSession');
if (!raw) return null;
const parsed = JSON.parse(raw) as { storeId?: string };
return parsed.storeId ?? null;
} catch {
return null;
}
},
});
export function trackStore(eventName: string, params?: Record<string, unknown>) {
tracker.track(eventName, params);
}
export function trackStorePageView(eventName: string, params?: Record<string, unknown>) {
tracker.trackPageView(eventName, params);
}