Fix nothing logged in frontend when log_level warn is set. https://github.com/Koenkk/zigbee2mqtt/issues/5812

This commit is contained in:
Koen Kanters
2021-01-19 18:14:40 +01:00
parent 0d59b52479
commit c67de5eb28
4 changed files with 19 additions and 1 deletions
+1 -1
View File
@@ -68,7 +68,7 @@ class Bridge extends Extension {
}
}
logger.add(new EventTransport({level: logger.getLevel()}));
logger.addTransport(new EventTransport());
}
permitJoinChanged(data) {
+4
View File
@@ -133,6 +133,10 @@ function logOutput() {
}
}
logger.addTransport = (transport) => {
transport.level = transportsToUse[0].level;
logger.add(transport);
};
logger.cleanup = cleanup;
logger.logOutput = logOutput;
logger.getLevel = () => winstonToZ2mLevel(transportsToUse[0].level);
+13
View File
@@ -6,6 +6,7 @@ const path = require('path');
const data = require('./stub/data');
let stdOutWriteOriginal;
const rimraf = require('rimraf');
const Transport = require('winston-transport');
describe('Logger', () => {
beforeEach(async () => {
@@ -66,6 +67,18 @@ describe('Logger', () => {
expect(logger.getLevel()).toBe('debug');
});
it('Add transport', () => {
class DummyTransport extends Transport {
log(info, callback) {
}
}
const logger = require('../lib/util/logger.js');
expect(logger.transports.length).toBe(2);
logger.addTransport(new DummyTransport());
expect(logger.transports.length).toBe(3);
});
it('Set and get log level warn <-> warning', () => {
const logger = require('../lib/util/logger.js');
logger.logOutput();
+1
View File
@@ -19,6 +19,7 @@ const mock = {
cleanup: jest.fn(),
logOutput: jest.fn(),
add: (transport) => transports.push(transport),
addTransport: (transport) => transports.push(transport),
setLevel: (newLevel) => {level = newLevel},
getLevel: () => level,
setTransportsEnabled: (value) => {transportsEnabled = value},