8000 fix(logFaces): got logFaces appenders working · mKoder/log4js-node@ea14c9a · GitHub
[go: up one dir, main page]

Skip to content

Commit ea14c9a

Browse files
author
Gareth Jones
committed
fix(logFaces): got logFaces appenders working
1 parent dd20852 commit ea14c9a

File tree

3 files changed

+26
-38
lines changed

3 files changed

+26
-38
lines changed

lib/appenders/logFaces-HTTP.js

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,15 +50,14 @@ function logFacesAppender(config) {
5050

5151
// send to server
5252
sender.post('', lfsEvent)
53-
.then((response) => {
54-
if (response.status !== 200) {
55-
console.error('log4js.logFacesAppender post to %s failed: %d',
56-
config.url, response.status);
53+
.catch((error) => {
54+
if (error.response) {
55+
console.error(
56+
`log4js.logFaces-HTTP Appender error posting to ${config.url}: ${error.response.status} - ${error.response.data}`
57+
);
58+
return;
5759
}
58-
})
59-
.catch((response) => {
60-
console.error('log4js.logFacesAppender post to %s excepted: %s',
61-
config.url, response.status);
60+
console.error(`log4js.logFaces-HTTP Appender error: ${error.message}`);
6261
});
6362
};
6463
}

test/tap/logFaces-HTTP-test.js

Lines changed: 18 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,11 @@ const sandbox = require('sandboxed-module');
55

66
function setupLogging(category, options) {
77
const fakeAxios = {
8-
args: [],
98
create: function (config) {
109
this.config = config;
1110
return {
1211
post: function (emptyString, event) {
13-
fakeAxios.args.push([emptyString, event]);
12+
fakeAxios.args = [emptyString, event];
1413
return {
1514
catch: function (cb) {
1615
fakeAxios.errorCb = cb;
@@ -52,15 +51,24 @@ function setupLogging(category, options) {
5251
test('logFaces appender', (batch) => {
5352
batch.test('when using HTTP receivers', (t) => {
5453
const setup = setupLogging('myCategory', {
55-
type: 'logFacesAppender',
5654
application: 'LFS-HTTP',
5755
url: 'http://localhost/receivers/rx1'
5856
});
5957

58+
t.test('axios should be configured', (assert) => {
59+
assert.equal(setup.fakeAxios.config.baseURL, 'http://localhost/receivers/rx1');
60+
assert.equal(setup.fakeAxios.config.timeout, 5000);
61+
assert.equal(setup.fakeAxios.config.withCredentials, true);
62+
assert.same(setup.fakeAxios.config.headers, { 'Content-Type': 'application/json' });
63+
assert.end();
64+
});
65+
66+
setup.logger.addContext('foo', 'bar');
67+
setup.logger.addContext('bar', 'foo');
6068
setup.logger.warn('Log event #1');
6169

6270
t.test('an event should be sent', (assert) => {
63-
const event = setup.results;
71+
const event = setup.fakeAxios.args[1];
6472
assert.equal(event.a, 'LFS-HTTP');
6573
assert.equal(event.m, 'Log event #1');
6674
assert.equal(event.g, 'myCategory');
@@ -76,34 +84,15 @@ test('logFaces appender', (batch) => {
7684
);
7785
assert.end();
7886
});
79-
t.end();
80-
});
81-
82-
batch.test('when using UDP receivers', (t) => {
83-
const setup = setupLogging('udpCategory', {
84-
type: 'logFacesAppender',
85-
application: 'LFS-UDP',
86-
remoteHost: '127.0.0.1',
87-
port: 55201
88-
});
89-
90-
setup.logger.error('Log event #2');
9187

92-
t.test('an event should be sent', (assert) => {
93-
const event = setup.results;
94-
assert.equal(event.a, 'LFS-UDP');
95-
assert.equal(event.m, 'Log event #2');
96-
assert.equal(event.g, 'udpCategory');
97-
assert.equal(event.p, 'ERROR');
98-
assert.equal(event.p_foo, 'bar');
99-
assert.equal(event.p_bar, 'foo');
100-
101-
// Assert timestamp, up to hours resolution.
102-
const date = new Date(event.t);
88+
t.test('errors should be sent to console.error', (assert) => {
89+
setup.fakeAxios.errorCb({ response: { status: 500, data: 'oh no' } });
10390
assert.equal(
104-
date.toISOString().substring(0, 14),
105-
new Date().toISOString().substring(0, 14)
91+
setup.fakeConsole.msg,
92+
'log4js.logFaces-HTTP Appender error posting to http://localhost/receivers/rx1: 500 - oh no'
10693
);
94+
setup.fakeAxios.errorCb(new Error('oh dear'));
95+
assert.equal(setup.fakeConsole.msg, 'log4js.logFaces-HTTP Appender error: oh dear');
10796
assert.end();
10897
});
10998
t.end();

test/tap/logFaces-UDP-test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ test('logFaces appender', (batch) => {
6060
});
6161

6262
setup.logger.addContext('foo', 'bar');
63-
setup.logger.addCcontext('bar', 'foo');
63+
setup.logger.addContext('bar', 'foo');
6464
setup.logger.error('Log event #2');
6565

6666
t.test('an event should be sent', (assert) => {

0 commit comments

Comments
 (0)
0