UNPKG

@datadog/browser-logs

Version:
55 lines (54 loc) 1.71 kB
import type { ErrorSource, RawErrorCause, TimeStamp, ErrorHandling } from '@datadog/browser-core'; import type { StatusType } from './domain/logger/isAuthorized'; export type RawLogsEvent = RawConsoleLogsEvent | RawNetworkLogsEvent | RawLoggerLogsEvent | RawAgentLogsEvent | RawReportLogsEvent | RawRuntimeLogsEvent; interface Error { message?: string; kind?: string; stack?: string; fingerprint?: string; causes?: RawErrorCause[]; handling: ErrorHandling | undefined; } interface CommonRawLogsEvent { date: TimeStamp; message: string; status: StatusType; error?: Error; origin: ErrorSource; } export interface RawConsoleLogsEvent extends CommonRawLogsEvent { origin: typeof ErrorSource.CONSOLE; } export interface RawLoggerLogsEvent extends CommonRawLogsEvent { origin: typeof ErrorSource.LOGGER; } export interface RawNetworkLogsEvent extends CommonRawLogsEvent { origin: typeof ErrorSource.NETWORK; status: typeof StatusType.error; error: Error; http: { method: 'POST' | 'GET' | 'HEAD' | 'PUT' | 'DELETE' | 'PATCH'; status_code: number; url: string; [k: string]: unknown; }; } export interface RawReportLogsEvent extends CommonRawLogsEvent { origin: typeof ErrorSource.REPORT; } export interface RawRuntimeLogsEvent extends CommonRawLogsEvent { origin: typeof ErrorSource.SOURCE; status: typeof StatusType.error; error: Error; } export interface RawAgentLogsEvent extends CommonRawLogsEvent { origin: typeof ErrorSource.AGENT; status: typeof StatusType.error; } export interface CommonContext { view?: { referrer: string; url: string; }; } export {};