diff --git a/docs/appenders.md b/docs/appenders.md index 338ad22..b6d3014 100644 --- a/docs/appenders.md +++ b/docs/appenders.md @@ -27,7 +27,6 @@ The following appenders are included with log4js. Some require extra dependencie * [logFaces-HTTP](logFaces-HTTP.md) * [logFaces-UDP](logFaces-UDP.md) * [logLevelFilter](logLevelFilter.md) -* [logstashHTTP](logstashHTTP.md) * [multiFile](multiFile.md) * [multiprocess](multiprocess.md) * [recording](recording.md) @@ -41,6 +40,7 @@ The following appenders are supported by log4js, but will issue deprecation warn * [gelf](https://github.com/log4js-node/gelf) * [hipchat](https://github.com/log4js-node/hipchat) * [loggly](https://github.com/log4js-node/loggly) +* [logstashHTTP](https://github.com/log4js-node/logstashHTTP) * [logstashUDP](https://github.com/log4js-node/logstashUDP) * [mailgun](https://github.com/log4js-node/mailgun) * [rabbitmq](https://github.com/log4js-node/rabbitmq) diff --git a/docs/logstashHTTP.md b/docs/logstashHTTP.md deleted file mode 100644 index 366c6bb..0000000 --- a/docs/logstashHTTP.md +++ /dev/null @@ -1,33 +0,0 @@ -# logstash Appender (HTTP) - -The logstash appenders send NDJSON formatted log events to [logstash](https://www.elastic.co/products/logstash) receivers. This appender uses HTTP to send the events (there is another logstash appender that uses [UDP](https://github.com/log4js-node/logstashUDP)). You will need to include [axios](https://www.npmjs.com/package/axios) in your dependencies to use this appender. - -## Configuration - -* `type` - `logstashHTTP` -* `url` - `string` - logFaces receiver servlet URL -* `application` - `string` (optional) - used to identify your application's logs -* `logChannel` - `string` (optional) - also used to identify your application's logs [but in a more specific way] -* `logType` - `string` (optional) - used for the `type` field in the logstash data -* `timeout` - `integer` (optional, defaults to 5000ms) - the timeout for the HTTP request. - -This appender will also pick up Logger context values from the events, and add them as `p_` values in the logFaces event. See the example below for more details. - -# Example (default config) - -```javascript -log4js.configure({ - appenders: { - logstash: { type: 'logstashHTTP', url: 'http://localhost:9200/_bulk', application: 'logstash-log4js', logType: 'application', logChannel: 'node' } - }, - categories: { - default: { appenders: [ 'logstash' ], level: 'info' } - } -}); - -const logger = log4js.getLogger(); -logger.addContext('requestId', '123'); -logger.info('some interesting log message'); -logger.error('something has gone wrong'); -``` -This example will result in two log events being sent to your `localhost:9200`. Both events will have a `context.requestId` property with a value of `123`. diff --git a/examples/logstashHTTP.js b/examples/logstashHTTP.js index 6e1c56c..b15df94 100644 --- a/examples/logstashHTTP.js +++ b/examples/logstashHTTP.js @@ -7,7 +7,7 @@ log4js.configure({ }, logstash: { url: 'http://172.17.0.5:9200/_bulk', - type: 'logstashHTTP', + type: '@log4js-node/logstash-http', logType: 'application', logChannel: 'node', application: 'logstash-log4js', diff --git a/lib/appenders/logstashHTTP.js b/lib/appenders/logstashHTTP.js index 4852dda..b04862c 100644 --- a/lib/appenders/logstashHTTP.js +++ b/lib/appenders/logstashHTTP.js @@ -1,4 +1,6 @@ /** + * This appender is deprecated, please apply any bugfixes or changes + * to https://github.com/log4js-node/logstash-http * logstashHTTP appender sends JSON formatted log events to logstashHTTP receivers. * * HTTP require 'axios', see 'https://www.npmjs.com/package/axios' @@ -31,7 +33,7 @@ function logstashHTTPAppender(config) { withCredentials: true, }); - return function log(event) { + const appender = function log(event) { const logstashEvent = [ { index: { @@ -61,6 +63,10 @@ function logstashHTTPAppender(config) { console.error(`log4js.logstashHTTP Appender error: ${error.message}`); }); }; + + appender.deprecated = '@log4js-node/logstash-http'; + + return appender; } function configure(config) {