@datadog/browser-logs
Version:
34 lines (29 loc) • 974 B
text/typescript
import type { Logger, HandlerType } from '../logger'
export function isAuthorized(status: StatusType, handlerType: HandlerType, logger: Logger) {
const loggerHandler = logger.getHandler()
const sanitizedHandlerType = Array.isArray(loggerHandler) ? loggerHandler : [loggerHandler]
return STATUS_PRIORITIES[status] >= STATUS_PRIORITIES[logger.getLevel()] && sanitizedHandlerType.includes(handlerType)
}
export const StatusType = {
ok: 'ok',
debug: 'debug',
info: 'info',
notice: 'notice',
warn: 'warn',
error: 'error',
critical: 'critical',
alert: 'alert',
emerg: 'emerg',
} as const
export const STATUS_PRIORITIES: { [key in StatusType]: number } = {
[]: 0,
[]: 1,
[]: 2,
[]: 4,
[]: 5,
[]: 6,
[]: 7,
[]: 8,
[]: 9,
}
export type StatusType = (typeof StatusType)[keyof typeof StatusType]