704e36c280
* Fix web build * Fix circular deps * Hoist log functions
70 lines
1.4 KiB
TypeScript
70 lines
1.4 KiB
TypeScript
import type {Sentry} from '#/logger/sentry'
|
|
|
|
export enum LogLevel {
|
|
Debug = 'debug',
|
|
Info = 'info',
|
|
Log = 'log',
|
|
Warn = 'warn',
|
|
Error = 'error',
|
|
}
|
|
|
|
export type Transport = (
|
|
level: LogLevel,
|
|
message: string | Error,
|
|
metadata: Metadata,
|
|
timestamp: number,
|
|
) => void
|
|
|
|
/**
|
|
* A union of some of Sentry's breadcrumb properties as well as Sentry's
|
|
* `captureException` parameter, `CaptureContext`.
|
|
*/
|
|
export type Metadata = {
|
|
/**
|
|
* Applied as Sentry breadcrumb types. Defaults to `default`.
|
|
*
|
|
* @see https://develop.sentry.dev/sdk/event-payloads/breadcrumbs/#breadcrumb-types
|
|
*/
|
|
type?:
|
|
| 'default'
|
|
| 'debug'
|
|
| 'error'
|
|
| 'navigation'
|
|
| 'http'
|
|
| 'info'
|
|
| 'query'
|
|
| 'transaction'
|
|
| 'ui'
|
|
| 'user'
|
|
|
|
/**
|
|
* Passed through to `Sentry.captureException`
|
|
*
|
|
* @see https://github.com/getsentry/sentry-javascript/blob/903addf9a1a1534a6cb2ba3143654b918a86f6dd/packages/types/src/misc.ts#L65
|
|
*/
|
|
tags?: {
|
|
[key: string]:
|
|
| number
|
|
| string
|
|
| boolean
|
|
| bigint
|
|
| symbol
|
|
| null
|
|
| undefined
|
|
}
|
|
|
|
/**
|
|
* Any additional data, passed through to Sentry as `extra` param on
|
|
* exceptions, or the `data` param on breadcrumbs.
|
|
*/
|
|
[key: string]: unknown
|
|
} & Parameters<typeof Sentry.captureException>[1]
|
|
|
|
export type ConsoleTransportEntry = {
|
|
id: string
|
|
timestamp: number
|
|
level: LogLevel
|
|
message: string | Error
|
|
metadata: Metadata
|
|
}
|