@kangc/skywalking-backend-js
Version:
The NodeJS agent for Apache SkyWalking
63 lines • 2.44 kB
JavaScript
;
/*!
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.createLogger = void 0;
var tslib_1 = require("tslib");
var winston = tslib_1.__importStar(require("winston"));
function createLogger(name) {
var loggingLevel = (process.env.SW_AGENT_LOGGING_LEVEL || 'error').toLowerCase();
var logger = winston.createLogger({
level: loggingLevel,
format: winston.format.json(),
defaultMeta: {
file: name,
},
});
if (process.env.NODE_ENV !== 'production' || process.env.SW_LOGGING_TARGET === 'console') {
logger.add(new winston.transports.Console({
format: winston.format.prettyPrint(),
}));
}
else {
logger.add(new winston.transports.File({
filename: 'skywalking.log',
}));
}
var loggerLevel = logger.levels[logger.level];
var _isDebugEnabled = loggerLevel >= logger.levels.debug;
var _isInfoEnabled = loggerLevel >= logger.levels.info;
Object.assign(logger, {
_isDebugEnabled: _isDebugEnabled,
_isInfoEnabled: _isInfoEnabled,
});
var nop = function () {
/* a cookie for the linter */
};
if (loggerLevel < logger.levels.debug)
// we do this because logger still seems to stringify anything sent to it even if it is below the logging level, costing performance
logger.debug = nop;
if (loggerLevel < logger.levels.info)
logger.info = nop;
if (loggerLevel < logger.levels.warn)
logger.warn = nop;
return logger;
}
exports.createLogger = createLogger;
//# sourceMappingURL=index.js.map