1.2.0 • Published 7 years ago
feathers-elastic-logger v1.2.0
feathers-elastic-logger
Why?
I use it to monitor information with elastic and kibana
Installation
npm install feathers-elastic-logger --save
Documentation
Hook
used as after and error hook in app
service is the elastic service name
it looks something like this
app.hooks({
after: elasticLogger({ service: 'logger' }),
error: elasticLogger({ service: 'logger' })
})
No Logging
if you want a request unlogged, you can set noLogging to true like that
someService.find({noLogging: true})
Complete Example
Here's an example of a Feathers server that uses feathers-elastic-logger
.
const feathers = require('feathers');
const rest = require('feathers-rest');
const handler = require('feathers-errors/handler');
const bodyParser = require('body-parser');
const memory = require('feathers-memory');
const hooks = require('feathers-hooks');
const elasticsearch = require('elasticsearch');
const elasticService = require('feathers-elasticsearch');
const elasticLogger = require('feathers-elastic-logger');
// Create a feathers instance.
const app = feathers()
.configure(hooks())
.configure(rest())
.use(bodyParser.json())
.use(bodyParser.urlencoded({extended: true}));
//Create memory service
app.use('/messages', memory({
paginate: {
default: 2,
max: 4
}
}));
//Create elastic service
app.use(`/logger`, elasticService({
Model: new elasticsearch.Client({
host: 'localhost:9200',
apiVersion: '5.0'
}),
elasticsearch: {
index: 'example',
type: 'logs'
}
}));
//Set elasticLogger hooks
app.hooks({
after: elasticLogger({ service: 'logger' } ),
error: elasticLogger({ service: 'logger' } )
})
// A basic error handler, just like Express
app.use(handler());
// Start the server
var server = app.listen(3030);
server.on('listening', function () {
console.log('Feathers running on 127.0.0.1:3030');
});
License
Copyright (c) 2016
Licensed under the MIT license.