@datadog/mobile-react-native
Version:
A client-side React Native module to interact with Datadog
49 lines (46 loc) • 1.87 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.InternalLog = exports.DATADOG_MESSAGE_PREFIX = void 0;
var _SdkVerbosity = require("./SdkVerbosity");
/*
* Unless explicitly stated otherwise all files in this repository are licensed under the Apache License Version 2.0.
* This product includes software developed at Datadog (https://www.datadoghq.com/).
* Copyright 2016-Present Datadog, Inc.
*/
const DATADOG_MESSAGE_PREFIX = exports.DATADOG_MESSAGE_PREFIX = 'DATADOG:';
/**
* /!\ DO NOT USE THIS IN YOUR APP /!\\
*
* This logger is only for debugging the Datadog SDK.
*/
class InternalLog {
static levelMap = new Map([[_SdkVerbosity.SdkVerbosity.DEBUG, 1], [_SdkVerbosity.SdkVerbosity.INFO, 2], [_SdkVerbosity.SdkVerbosity.WARN, 3], [_SdkVerbosity.SdkVerbosity.ERROR, 4]]);
static verbosity = undefined;
static log(message, verbosity) {
if (InternalLog.verbosity === undefined) {
return;
}
const requiredLevel = InternalLog.levelMap.get(verbosity);
const allowedLevel = InternalLog.levelMap.get(InternalLog.verbosity);
if (allowedLevel === undefined || requiredLevel === undefined) {
return;
}
const prefixedMessage = `${DATADOG_MESSAGE_PREFIX} ${message}`;
if (verbosity === _SdkVerbosity.SdkVerbosity.ERROR && requiredLevel >= allowedLevel) {
console.error(prefixedMessage);
}
if (verbosity === _SdkVerbosity.SdkVerbosity.WARN && requiredLevel >= allowedLevel) {
console.warn(prefixedMessage);
}
if (verbosity === _SdkVerbosity.SdkVerbosity.INFO && requiredLevel >= allowedLevel) {
console.info(prefixedMessage);
}
if (verbosity === _SdkVerbosity.SdkVerbosity.DEBUG && requiredLevel >= allowedLevel) {
console.debug(prefixedMessage);
}
}
}
exports.InternalLog = InternalLog;
//# sourceMappingURL=InternalLog.js.map