SAP-BTP-Spielwiese/app1/node_modules/@sap/logging/lib/Env.js

38 lines
963 B
JavaScript
Raw Normal View History

'use strict';
const normalizeLevel = require('./common').normalizeLevel;
class Env {
constructor() {
this.loggingOff = isLoggingOff();
this.topPrioLevel = this.loggingOff ? null : getTopPrioLevel();
this.runsOnXSA = 'XS_BIND_ADDRESS' in process.env;
this.runsOnCF = 'VCAP_APPLICATION' in process.env && !this.runsOnXSA;
this.instanceIp = process.env['CF_INSTANCE_IP'];
this.vcapApp = JSON.parse(process.env['VCAP_APPLICATION'] || '{}');
this.logUser = isEnabled('XS_LOG_USER');
this.logReferer = isEnabled('XS_LOG_REFERER');
this.logConnectionData = isEnabled('XS_LOG_CONNECTION_DATA');
}
}
function isLoggingOff() {
return /^none$/i.test(process.env.XS_APP_LOG_LEVEL);
}
function getTopPrioLevel() {
const value = process.env.XS_APP_LOG_LEVEL;
if (!value) {
return null;
}
return normalizeLevel(value);
}
function isEnabled(flag) {
return /^true$/i.test(process.env[flag]);
}
module.exports = Env;