learning_ai_common_plat/packages/diagnostics-client/src/index.ts
saravanakumardb1 6e0b6c33c9 test(admin-web): Add Playwright E2E tests for broadcasts and surveys
- Broadcasts: list, create, target, clone, pause/resume, metrics, delete
- Surveys: list, create with NPS/questions, conditional logic, activate/pause
- Integration: navigation, targeting, incentives, export
2026-03-03 08:31:31 -08:00

72 lines
1.5 KiB
TypeScript

/**
* @bytelyst/diagnostics-client
*
* Remote diagnostics and debug tracing client for the ByteLyst ecosystem.
* Provides polling, logging, tracing, network capture, and breadcrumbs.
*
* @example
* ```typescript
* import { DiagnosticsClient } from '@bytelyst/diagnostics-client';
*
* const client = DiagnosticsClient.getInstance({
* productId: 'myapp',
* anonymousInstallId: 'install_123',
* platform: 'web',
* channel: 'web_app',
* osFamily: 'macos',
* appVersion: '1.0.0',
* buildNumber: '100',
* releaseChannel: 'stable',
* serverUrl: 'https://api.bytelyst.com',
* });
*
* await client.start();
*
* // Auto-instrumented trace
* const result = await client.trace('fetchUser', async () => {
* return await fetch('/api/user').then(r => r.json());
* });
*
* // Manual breadcrumb
* client.breadcrumb('user', 'Clicked submit button', { formId: 'signup' });
*
* // Manual log
* client.log('info', 'User signed up', { userId: '123' });
* ```
*/
export {
DiagnosticsClient,
type DiagnosticsClientOptions,
} from './client.js';
export {
BreadcrumbTrail,
type BreadcrumbTrailOptions,
} from './breadcrumbs.js';
export {
NetworkInterceptor,
type NetworkInterceptorOptions,
} from './network.js';
export {
collectDeviceState,
subscribeToConnectivity,
} from './device.js';
export type {
LogLevel,
SessionStatus,
CollectionLevel,
DiagnosticsSession,
TraceSpan,
LogEntry,
Breadcrumb,
NetworkRequest,
DeviceState,
DiagnosticsConfig,
ClientState,
IngestBatch,
} from './types.js';