xliff-generator
Version:
A simple module to create xliff files
89 lines (88 loc) • 2.38 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const bunyan = require("bunyan");
class Logger {
constructor() {
const envVariableLogLevel = process.env.LOG_LEVEL;
this.isLogMessagesActivated = envVariableLogLevel !== undefined;
this.logger = bunyan.createLogger({
name: 'XliffGenerator',
streams: [
{
level: this.detectLogLevel(envVariableLogLevel),
stream: process.stdout
}
]
});
}
error(message, obj) {
if (this.isLogMessagesActivated) {
if (obj) {
this.logger.error(message, obj);
}
else {
this.logger.error(message);
}
}
}
warn(message, obj) {
if (this.isLogMessagesActivated) {
if (obj) {
this.logger.warn(message, obj);
}
else {
this.logger.warn(message);
}
}
}
info(message, obj) {
if (this.isLogMessagesActivated) {
if (obj) {
this.logger.info(message, obj);
}
else {
this.logger.info(message);
}
}
}
debug(message, obj) {
if (this.isLogMessagesActivated) {
if (obj) {
this.logger.debug(message, obj);
}
else {
this.logger.debug(message);
}
}
}
trace(message, obj) {
if (this.isLogMessagesActivated) {
if (obj) {
this.logger.trace(message, obj);
}
else {
this.logger.trace(message);
}
}
}
detectLogLevel(envLogLevel) {
let envLogLevelLoc = envLogLevel || 'fatal';
envLogLevelLoc = envLogLevelLoc.toLowerCase();
switch (envLogLevel) {
case 'trace':
return 'trace';
case 'debug':
return 'debug';
case 'info':
return 'info';
case 'warn':
return 'warn';
case 'error':
return 'error';
case 'fatal':
default:
return 'fatal';
}
}
}
exports.Logger = Logger;