Logger Node 1.0.2
Usage
npm install @4alltecnologia/node-logger
Environment variables
# firehose
AWS_ACCESS_KEY_ID="userId"
AWS_SECRET_ACCESS_KEY="userKey"
AWS_REGION="us-east-1"
# stream
LOGGER_STREAM_TYPE="console" # or firehose
LOGGER_STREAM_NAME="firehose_stream_name"
# Skip logger
LOGGER_SKIP_STATUS="404"
LOGGER_SKIP_KEYS="authorization"
LOGGER_SKIP_METHODS="GET|OPTIONS"
LOGGER_SKIP_PATHS="|/|/status|/favicon.ico"
Express:
require('dotenv').config();
const express = require('express');
const { winston, morgan, error, knex } = require('@4alltecnologia/node-logger/config');
const Logger = require('@4alltecnologia/node-logger');
const compression = require('compression');
/* Express initialization */
const app = express();
const knex = require('./config/db');
knex(knex);
app.use(morgan());
app.use(compression()); // compression middleware needs to be after the morgan
// custom middleware
// routes
// log uncaught error
app.use(error);
(async () => {
winston();
app.listen(process.env.PORT, () => {
Logger.info('Hello!!!');
});
})();
const { winston } = require('logger/config');
const Logger = require('logger');
// You can set your transport if you needed
winston([transport1, transport2, ...]);
Logger.emerg('Hello!!!');
Logger.alert('Hello!!!');
Logger.crit('Hello!!!');
Logger.error('Hello!!!');
Logger.warning('Hello!!!');
Logger.notice('Hello!!!');
Logger.info('Hello!!!');
TODO
- Unit Tests
- File transport
- Database transport?