Refactor monitoring services into separate packages
Separated and isolated the responsibilities of monitoring tools. Reorganized the code by introducing a core package that contains common code related to monitoring and moved all the service operations like error capturing and identification of users into their respective packages. This ensures each tool is independent and easy to maintain.
This commit is contained in:
2
packages/monitoring/api/src/hooks/index.ts
Normal file
2
packages/monitoring/api/src/hooks/index.ts
Normal file
@@ -0,0 +1,2 @@
|
||||
export * from './use-monitoring';
|
||||
export * from './use-capture-exception';
|
||||
@@ -0,0 +1,7 @@
|
||||
import { useMonitoring } from './use-monitoring';
|
||||
|
||||
export function useCaptureException(error: Error) {
|
||||
const service = useMonitoring();
|
||||
|
||||
return service.captureException(error);
|
||||
}
|
||||
12
packages/monitoring/api/src/hooks/use-monitoring.ts
Normal file
12
packages/monitoring/api/src/hooks/use-monitoring.ts
Normal file
@@ -0,0 +1,12 @@
|
||||
import { useContext } from 'react';
|
||||
|
||||
import { MonitoringContext } from '@kit/monitoring-core';
|
||||
|
||||
/**
|
||||
* @name useMonitoring
|
||||
* @description Asynchronously load the monitoring service based on the MONITORING_PROVIDER environment variable.
|
||||
* Use Suspense to suspend while loading the service.
|
||||
*/
|
||||
export function useMonitoring() {
|
||||
return useContext(MonitoringContext);
|
||||
}
|
||||
Reference in New Issue
Block a user