@opentelemetry/api
Version:
Public API for OpenTelemetry
1 lines • 1.66 kB
Source Map (JSON)
{"version":3,"file":"logLevelLogger.mjs","names":[],"sources":["../../../src/diag/internal/logLevelLogger.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { DiagLogFunction, DiagLogger } from '../types';\nimport { DiagLogLevel } from '../types';\n\nexport function createLogLevelDiagLogger(\n maxLevel: DiagLogLevel,\n logger: DiagLogger\n): DiagLogger {\n if (maxLevel < DiagLogLevel.NONE) {\n maxLevel = DiagLogLevel.NONE;\n } else if (maxLevel > DiagLogLevel.ALL) {\n maxLevel = DiagLogLevel.ALL;\n }\n\n // In case the logger is null or undefined\n logger = logger || {};\n\n function _filterFunc(\n funcName: keyof DiagLogger,\n theLevel: DiagLogLevel\n ): DiagLogFunction {\n const theFunc = logger[funcName];\n\n if (typeof theFunc === 'function' && maxLevel >= theLevel) {\n return theFunc.bind(logger);\n }\n return function () {};\n }\n\n return {\n error: _filterFunc('error', DiagLogLevel.ERROR),\n warn: _filterFunc('warn', DiagLogLevel.WARN),\n info: _filterFunc('info', DiagLogLevel.INFO),\n debug: _filterFunc('debug', DiagLogLevel.DEBUG),\n verbose: _filterFunc('verbose', DiagLogLevel.VERBOSE),\n };\n}\n"],"mappings":";;AAQA,SAAgB,yBACd,UACA,QACY;CACZ,IAAI,WAAA,GACF,WAAA;MACK,IAAI,WAAA,MACT,WAAA;CAIF,SAAS,UAAU,CAAC;CAEpB,SAAS,YACP,UACA,UACiB;EACjB,MAAM,UAAU,OAAO;EAEvB,IAAI,OAAO,YAAY,cAAc,YAAY,UAC/C,OAAO,QAAQ,KAAK,MAAM;EAE5B,OAAO,WAAY,CAAC;CACtB;CAEA,OAAO;EACL,OAAO,YAAY,SAAA,EAA2B;EAC9C,MAAM,YAAY,QAAA,EAAyB;EAC3C,MAAM,YAAY,QAAA,EAAyB;EAC3C,OAAO,YAAY,SAAA,EAA2B;EAC9C,SAAS,YAAY,WAAA,EAA+B;CACtD;AACF"}