feat(web): add client-side telemetry for API calls, errors, and scan operations

This commit is contained in:
MythEclipse
2026-06-08 01:23:51 +07:00
parent 89dcbe8fa2
commit 64dcfa70d8
3 changed files with 25 additions and 1 deletions
+13 -1
View File
@@ -16,7 +16,7 @@ import { ExpertReviewsPage } from "@/pages/expert-reviews-page";
import { DiagnosesPage } from "@/pages/diagnoses-page";
import { TelemetryPage } from "@/pages/telemetry-page";
import { MainLayout } from "@/components/layout/main-layout";
import { trackPageView } from "./lib/telemetry";
import { trackPageView, trackError } from "./lib/telemetry";
const queryClient = new QueryClient();
@@ -104,11 +104,23 @@ function PageViewTracker() {
return null;
}
function GlobalErrorTracker() {
useEffect(() => {
const handler = (event: ErrorEvent) => {
trackError(event.filename || "global");
};
window.addEventListener("error", handler);
return () => window.removeEventListener("error", handler);
}, []);
return null;
}
export function App() {
return (
<QueryClientProvider client={queryClient}>
<AuthInitializer />
<PageViewTracker />
<GlobalErrorTracker />
<RouterProvider router={router} />
</QueryClientProvider>
);