mirror of
https://github.com/Unleash/unleash.git
synced 2025-02-09 00:18:00 +01:00
Implement support for logger provider.
This allows the users of 'unleash-server' to programatically change the logger implemnentation. #175
This commit is contained in:
parent
a70f7f7046
commit
f5e9ca3bbe
@ -37,4 +37,37 @@ Available unleash options includes:
|
|||||||
|
|
||||||
- databaseUrl
|
- databaseUrl
|
||||||
- port
|
- port
|
||||||
- logLevel - ('INFO', 'ERROR',)
|
|
||||||
|
## How do I configure the log output?
|
||||||
|
|
||||||
|
By default, `unleash` uses [log4js](https://github.com/nomiddlename/log4js-node) to log important information. It is possible to swap out the logger provider (only when using Unleash programatically). This enables filtering of log levels and easy redirection of output streams.
|
||||||
|
|
||||||
|
### What is a logger provider?
|
||||||
|
|
||||||
|
A logger provider is a function which takes the name of a logger and returns a logger implementation. For instance, the following code snippet shows how a logger provider for the global `console` object could be written:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
function consoleLoggerProvider (name) {
|
||||||
|
// do something with the name
|
||||||
|
return {
|
||||||
|
debug: console.debug.bind(console),
|
||||||
|
info: console.info.bind(console),
|
||||||
|
warn: console.warn.bind(console),
|
||||||
|
error: console.error.bind(console)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
The logger interface with its `debug`, `info`, `warn` and `error` methods expects format string support as seen in `debug` or the JavaScript `console` object. Many commonly used logging implementations cover this API, e.g. bunyan, pino or winston.
|
||||||
|
|
||||||
|
### How do I set a logger provider?
|
||||||
|
|
||||||
|
Custom logger providers need to be set *before requiring the `unleash-server` module*. The following example shows how this can be done:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
// first configure the logger provider
|
||||||
|
const unleashLogger = require('unleash-server/logger');
|
||||||
|
unleashLogger.setLoggerProvider(consoleLoggerProvider);
|
||||||
|
|
||||||
|
// then require unleash-server and continue as normal
|
||||||
|
const unleash = require('unleash-server');
|
13
lib/app.js
13
lib/app.js
@ -6,8 +6,7 @@ const bodyParser = require('body-parser');
|
|||||||
const cookieParser = require('cookie-parser');
|
const cookieParser = require('cookie-parser');
|
||||||
const validator = require('express-validator');
|
const validator = require('express-validator');
|
||||||
const responseTime = require('response-time');
|
const responseTime = require('response-time');
|
||||||
const log4js = require('log4js');
|
const logger = require('./logger')('app.js');
|
||||||
const logger = require('./logger');
|
|
||||||
const routes = require('./routes');
|
const routes = require('./routes');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
const errorHandler = require('errorhandler');
|
const errorHandler = require('errorhandler');
|
||||||
@ -56,12 +55,10 @@ module.exports = function(config) {
|
|||||||
app.use(bodyParser.json({ strict: false }));
|
app.use(bodyParser.json({ strict: false }));
|
||||||
|
|
||||||
if (config.enableRequestLogger) {
|
if (config.enableRequestLogger) {
|
||||||
app.use(
|
app.use((req, res, next) => {
|
||||||
log4js.connectLogger(logger, {
|
next();
|
||||||
format: ':status :method :url :response-timems',
|
logger.info(`${res.statusCode} ${req.method} ${req.path}`);
|
||||||
level: 'auto', // 3XX=WARN, 4xx/5xx=ERROR
|
});
|
||||||
})
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof config.preRouterHook === 'function') {
|
if (typeof config.preRouterHook === 'function') {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* eslint camelcase: "off" */
|
/* eslint camelcase: "off" */
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const logger = require('../logger');
|
const logger = require('../logger')('client-instance-store.js');
|
||||||
const COLUMNS = [
|
const COLUMNS = [
|
||||||
'app_name',
|
'app_name',
|
||||||
'instance_id',
|
'instance_id',
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const logger = require('../logger');
|
const logger = require('../logger')('client-metrics-db.js');
|
||||||
|
|
||||||
const METRICS_COLUMNS = ['id', 'created_at', 'metrics'];
|
const METRICS_COLUMNS = ['id', 'created_at', 'metrics'];
|
||||||
const TABLE = 'client_metrics';
|
const TABLE = 'client_metrics';
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const logger = require('../logger');
|
const logger = require('../logger')('client-metrics-store.js');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ const {
|
|||||||
FEATURE_ARCHIVED,
|
FEATURE_ARCHIVED,
|
||||||
FEATURE_REVIVED,
|
FEATURE_REVIVED,
|
||||||
} = require('../event-type');
|
} = require('../event-type');
|
||||||
const logger = require('../logger');
|
const logger = require('../logger')('client-toggle-store.js');
|
||||||
const NotFoundError = require('../error/notfound-error');
|
const NotFoundError = require('../error/notfound-error');
|
||||||
const FEATURE_COLUMNS = [
|
const FEATURE_COLUMNS = [
|
||||||
'name',
|
'name',
|
||||||
|
@ -5,7 +5,7 @@ const {
|
|||||||
STRATEGY_DELETED,
|
STRATEGY_DELETED,
|
||||||
STRATEGY_UPDATED,
|
STRATEGY_UPDATED,
|
||||||
} = require('../event-type');
|
} = require('../event-type');
|
||||||
const logger = require('../logger');
|
const logger = require('../logger')('strategy-store.js');
|
||||||
const NotFoundError = require('../error/notfound-error');
|
const NotFoundError = require('../error/notfound-error');
|
||||||
const STRATEGY_COLUMNS = ['name', 'description', 'parameters', 'built_in'];
|
const STRATEGY_COLUMNS = ['name', 'description', 'parameters', 'built_in'];
|
||||||
const TABLE = 'strategies';
|
const TABLE = 'strategies';
|
||||||
|
@ -3,11 +3,6 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const eventDiffer = require('./event-differ');
|
const eventDiffer = require('./event-differ');
|
||||||
const { FEATURE_CREATED, FEATURE_UPDATED } = require('./event-type');
|
const { FEATURE_CREATED, FEATURE_UPDATED } = require('./event-type');
|
||||||
const logger = require('./logger');
|
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test('fails if events include an unknown event type', t => {
|
test('fails if events include an unknown event type', t => {
|
||||||
const events = [
|
const events = [
|
||||||
|
@ -1,19 +1,33 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const log4js = require('log4js');
|
const log4js = require('log4js');
|
||||||
log4js.configure({
|
|
||||||
appenders: [{ type: 'console' }],
|
|
||||||
});
|
|
||||||
|
|
||||||
const logger = log4js.getLogger('unleash');
|
let loggerProvider = getDefaultLogProvider();
|
||||||
|
|
||||||
// TODO: make level configurable
|
module.exports = exports = function getLogger(name) {
|
||||||
|
return loggerProvider(name);
|
||||||
|
};
|
||||||
|
|
||||||
|
exports.setLoggerProvider = function setLoggerProvider(provider) {
|
||||||
|
loggerProvider = provider;
|
||||||
|
};
|
||||||
|
|
||||||
|
function getDefaultLogProvider() {
|
||||||
|
let level;
|
||||||
if (process.env.NODE_ENV === 'production') {
|
if (process.env.NODE_ENV === 'production') {
|
||||||
logger.setLevel(log4js.levels.ERROR);
|
level = log4js.levels.ERROR;
|
||||||
} else if (process.env.NODE_ENV === 'test') {
|
} else if (process.env.NODE_ENV === 'test') {
|
||||||
logger.setLevel(log4js.levels.ERROR);
|
level = log4js.levels.FATAL;
|
||||||
} else {
|
} else {
|
||||||
logger.setLevel(log4js.levels.DEBUG);
|
level = log4js.levels.DEBUG;
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = logger;
|
log4js.configure({
|
||||||
|
appenders: [{ type: 'console' }],
|
||||||
|
levels: {
|
||||||
|
'[all]': level,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
return log4js.getLogger;
|
||||||
|
}
|
||||||
|
22
lib/logger.test.js
Normal file
22
lib/logger.test.js
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
'use strict';
|
||||||
|
|
||||||
|
const { test } = require('ava');
|
||||||
|
const createLogger = require('./logger');
|
||||||
|
const logger = require('../logger');
|
||||||
|
const sinon = require('sinon');
|
||||||
|
|
||||||
|
test('should expose a setLoggerProvider function', t => {
|
||||||
|
t.true(logger.setLoggerProvider instanceof Function);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('should create logger via custom logger provider', t => {
|
||||||
|
const provider = sinon.stub();
|
||||||
|
const loggerName = 'test';
|
||||||
|
const loggerImpl = {};
|
||||||
|
provider.withArgs(loggerName).returns(loggerImpl);
|
||||||
|
logger.setLoggerProvider(provider);
|
||||||
|
|
||||||
|
const log = createLogger(loggerName);
|
||||||
|
|
||||||
|
t.is(log, loggerImpl);
|
||||||
|
});
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../../logger');
|
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
const app = getApp({
|
const app = getApp({
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { Router } = require('express');
|
const { Router } = require('express');
|
||||||
|
|
||||||
const logger = require('../../logger');
|
const logger = require('../../logger')('/admin-api/archive.js');
|
||||||
const { FEATURE_REVIVED } = require('../../event-type');
|
const { FEATURE_REVIVED } = require('../../event-type');
|
||||||
const ValidationError = require('../../error/validation-error');
|
const ValidationError = require('../../error/validation-error');
|
||||||
const validateRequest = require('../../error/validate-request');
|
const validateRequest = require('../../error/validate-request');
|
||||||
|
@ -4,7 +4,6 @@ const { test } = require('ava');
|
|||||||
|
|
||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../../logger');
|
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
@ -22,10 +21,6 @@ function getSetup() {
|
|||||||
return { base, eventStore: stores.eventStore, request: supertest(app) };
|
return { base, eventStore: stores.eventStore, request: supertest(app) };
|
||||||
}
|
}
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test('should get empty events list via admin', t => {
|
test('should get empty events list via admin', t => {
|
||||||
t.plan(1);
|
t.plan(1);
|
||||||
const { request, base } = getSetup();
|
const { request, base } = getSetup();
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
const { Router } = require('express');
|
const { Router } = require('express');
|
||||||
const joi = require('joi');
|
const joi = require('joi');
|
||||||
|
|
||||||
const logger = require('../../logger');
|
const logger = require('../../logger')('/admin-api/feature.js');
|
||||||
const {
|
const {
|
||||||
FEATURE_CREATED,
|
FEATURE_CREATED,
|
||||||
FEATURE_UPDATED,
|
FEATURE_UPDATED,
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../../logger');
|
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const base = `/random${Math.round(Math.random() * 1000)}`;
|
const base = `/random${Math.round(Math.random() * 1000)}`;
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { Router } = require('express');
|
const { Router } = require('express');
|
||||||
|
|
||||||
const logger = require('../../logger');
|
const logger = require('../../logger')('/admin-api/metrics.js');
|
||||||
const ClientMetrics = require('../../client-metrics');
|
const ClientMetrics = require('../../client-metrics');
|
||||||
const { catchLogAndSendErrorResponse } = require('./route-utils');
|
const { catchLogAndSendErrorResponse } = require('./route-utils');
|
||||||
|
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../../logger');
|
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
const app = getApp({
|
const app = getApp({
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const logger = require('../../logger');
|
const logger = require('../../logger')('route-utils.js');
|
||||||
|
|
||||||
const catchLogAndSendErrorResponse = (err, res) => {
|
const catchLogAndSendErrorResponse = (err, res) => {
|
||||||
logger.error(err);
|
logger.error(err);
|
||||||
|
@ -4,7 +4,7 @@ const { Router } = require('express');
|
|||||||
const joi = require('joi');
|
const joi = require('joi');
|
||||||
|
|
||||||
const eventType = require('../../event-type');
|
const eventType = require('../../event-type');
|
||||||
const logger = require('../../logger');
|
const logger = require('../../logger')('/admin-api/strategy.js');
|
||||||
const NameExistsError = require('../../error/name-exists-error');
|
const NameExistsError = require('../../error/name-exists-error');
|
||||||
const extractUser = require('../../extract-user');
|
const extractUser = require('../../extract-user');
|
||||||
const strategySchema = require('./strategy-schema');
|
const strategySchema = require('./strategy-schema');
|
||||||
|
@ -4,7 +4,6 @@ const { test } = require('ava');
|
|||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
const logger = require('../../logger');
|
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
@ -25,10 +24,6 @@ function getSetup() {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test('add version numbers for /stategies', t => {
|
test('add version numbers for /stategies', t => {
|
||||||
t.plan(1);
|
t.plan(1);
|
||||||
const { request, base } = getSetup();
|
const { request, base } = getSetup();
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../test/fixtures/store');
|
const store = require('./../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../logger');
|
|
||||||
const getApp = require('../app');
|
const getApp = require('../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test('should use enable prometheus', t => {
|
test('should use enable prometheus', t => {
|
||||||
t.plan(0);
|
t.plan(0);
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../../logger');
|
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const base = `/random${Math.round(Math.random() * 1000)}`;
|
const base = `/random${Math.round(Math.random() * 1000)}`;
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { Router } = require('express');
|
const { Router } = require('express');
|
||||||
const joi = require('joi');
|
const joi = require('joi');
|
||||||
const logger = require('../../logger');
|
const logger = require('../../logger')('client-api/metrics.js');
|
||||||
|
|
||||||
const { clientMetricsSchema } = require('./metrics-schema');
|
const { clientMetricsSchema } = require('./metrics-schema');
|
||||||
|
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../../logger');
|
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
const app = getApp({
|
const app = getApp({
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { Router } = require('express');
|
const { Router } = require('express');
|
||||||
const joi = require('joi');
|
const joi = require('joi');
|
||||||
const logger = require('../../logger');
|
const logger = require('../../logger')('/client-api/register.js');
|
||||||
|
|
||||||
const { clientRegisterSchema } = require('./register-schema');
|
const { clientRegisterSchema } = require('./register-schema');
|
||||||
|
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../../test/fixtures/store');
|
const store = require('./../../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../../logger');
|
|
||||||
const getApp = require('../../app');
|
const getApp = require('../../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
const app = getApp({
|
const app = getApp({
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const logger = require('../logger');
|
const logger = require('../logger')('health-check.js');
|
||||||
const { Router } = require('express');
|
const { Router } = require('express');
|
||||||
|
|
||||||
exports.router = function(config) {
|
exports.router = function(config) {
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../test/fixtures/store');
|
const store = require('./../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../logger');
|
|
||||||
const getApp = require('../app');
|
const getApp = require('../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
const db = stores.db;
|
const db = stores.db;
|
||||||
|
@ -3,16 +3,11 @@
|
|||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const store = require('./../../test/fixtures/store');
|
const store = require('./../../test/fixtures/store');
|
||||||
const supertest = require('supertest');
|
const supertest = require('supertest');
|
||||||
const logger = require('../logger');
|
|
||||||
const getApp = require('../app');
|
const getApp = require('../app');
|
||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const eventBus = new EventEmitter();
|
const eventBus = new EventEmitter();
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getSetup() {
|
function getSetup() {
|
||||||
const base = `/random${Math.round(Math.random() * 1000)}`;
|
const base = `/random${Math.round(Math.random() * 1000)}`;
|
||||||
const stores = store.createStores();
|
const stores = store.createStores();
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
|
|
||||||
const logger = require('./logger');
|
const logger = require('./logger')('server-impl.js');
|
||||||
const migrator = require('../migrator');
|
const migrator = require('../migrator');
|
||||||
const getApp = require('./app');
|
const getApp = require('./app');
|
||||||
|
|
||||||
|
5
logger.js
Normal file
5
logger.js
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
'use strict';
|
||||||
|
|
||||||
|
const logger = require('./lib/logger');
|
||||||
|
|
||||||
|
exports.setLoggerProvider = logger.setLoggerProvider;
|
@ -39,7 +39,7 @@
|
|||||||
"db-migrate": "db-migrate",
|
"db-migrate": "db-migrate",
|
||||||
"lint": "eslint .",
|
"lint": "eslint .",
|
||||||
"pretest": "npm run lint",
|
"pretest": "npm run lint",
|
||||||
"test": "PORT=4243 ava lib/*.test.js lib/**/*.test.js lib/**/**/*.test.js lib/**/**/**/*.test.js test",
|
"test": "NODE_ENV=test PORT=4243 ava lib/*.test.js lib/**/*.test.js lib/**/**/*.test.js lib/**/**/**/*.test.js test",
|
||||||
"test:docker": "./scripts/docker-postgres.sh",
|
"test:docker": "./scripts/docker-postgres.sh",
|
||||||
"test:watch": "npm run test -- --watch",
|
"test:watch": "npm run test -- --watch",
|
||||||
"test:pg-virtualenv": "pg_virtualenv npm run test:pg-virtualenv-chai",
|
"test:pg-virtualenv": "pg_virtualenv npm run test:pg-virtualenv-chai",
|
||||||
|
@ -2,11 +2,6 @@
|
|||||||
|
|
||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const { setupApp } = require('./../../helpers/test-helper');
|
const { setupApp } = require('./../../helpers/test-helper');
|
||||||
const logger = require('../../../../lib/logger');
|
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test.serial('returns events', async t => {
|
test.serial('returns events', async t => {
|
||||||
t.plan(0);
|
t.plan(0);
|
||||||
|
@ -2,11 +2,6 @@
|
|||||||
|
|
||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const { setupApp } = require('./../../helpers/test-helper');
|
const { setupApp } = require('./../../helpers/test-helper');
|
||||||
const logger = require('../../../../lib/logger');
|
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test.serial('returns three archived toggles', async t => {
|
test.serial('returns three archived toggles', async t => {
|
||||||
t.plan(1);
|
t.plan(1);
|
||||||
|
@ -2,11 +2,6 @@
|
|||||||
|
|
||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const { setupApp } = require('./../../helpers/test-helper');
|
const { setupApp } = require('./../../helpers/test-helper');
|
||||||
const logger = require('../../../../lib/logger');
|
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test.serial('returns three feature toggles', async t => {
|
test.serial('returns three feature toggles', async t => {
|
||||||
const { request, destroy } = await setupApp('feature_api_serial');
|
const { request, destroy } = await setupApp('feature_api_serial');
|
||||||
|
@ -2,11 +2,6 @@
|
|||||||
|
|
||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const { setupApp } = require('./../../helpers/test-helper');
|
const { setupApp } = require('./../../helpers/test-helper');
|
||||||
const logger = require('../../../../lib/logger');
|
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test.serial('should register client', async t => {
|
test.serial('should register client', async t => {
|
||||||
t.plan(0);
|
t.plan(0);
|
||||||
|
@ -2,11 +2,6 @@
|
|||||||
|
|
||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const { setupApp } = require('./../../helpers/test-helper');
|
const { setupApp } = require('./../../helpers/test-helper');
|
||||||
const logger = require('../../../../lib/logger');
|
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test.serial('gets all strategies', async t => {
|
test.serial('gets all strategies', async t => {
|
||||||
t.plan(1);
|
t.plan(1);
|
||||||
|
@ -2,11 +2,6 @@
|
|||||||
|
|
||||||
const { test } = require('ava');
|
const { test } = require('ava');
|
||||||
const { setupApp } = require('./helpers/test-helper');
|
const { setupApp } = require('./helpers/test-helper');
|
||||||
const logger = require('../../lib/logger');
|
|
||||||
|
|
||||||
test.beforeEach(() => {
|
|
||||||
logger.setLevel('FATAL');
|
|
||||||
});
|
|
||||||
|
|
||||||
test('returns health good', async t => {
|
test('returns health good', async t => {
|
||||||
t.plan(0);
|
t.plan(0);
|
||||||
|
Loading…
Reference in New Issue
Block a user