shipfinex-elastic-logger
v2.0.0
Published
Logger library for shipfinex logging service that feeds to logstash
Downloads
5
Readme
## Description
Shipfinex Logger is a versatile logging library designed specifically for the Shipfinex logging service, which feeds logs to Logstash. It provides flexible configuration options and supports various log levels, making it suitable for a wide range of logging requirements in javascript based services.
## Installation
To install Shipfinex Logger, use npm:
```bash
npm install shipfinex-logger
Usage
Import the Logger
In your Node.js application, import the shipfinex-logger
module and create a logger instance with your desired configuration.
const createLogger = require('shipfinex-logger');
// Define your configuration
const config = {
logLevel: 'debug', // Set the log level (info, error, debug)
indexPrefix: 'my-app-logs-prod', // Set the Elasticsearch index prefix
elasticsearchHost: 'http://elasticsearch-prod:9200', // Set the Elasticsearch host
serviceName: 'my-production-service', // Set your service name
// Add other configuration options...
};
// Create a logger instance
const logger = createLogger(config);
Log Messages
Use the logger instance to log messages in your application. The logger provides three log levels: info
, error
, and debug
.
Info Logs
// Log an info message
logger.info('This is an info log.');
Error Logs
// Log an error message with an error object and additional metadata
const error = new Error('Sample error');
const metadata = { additionalInfo: 'some data' };
logger.error('This is an error log.', error, metadata);
Debug Logs
// Log a debug message with metadata
const metadata = { debugInfo: 'some debug data' };
logger.debug('This is a debug log.', metadata);
Log Formats
The logger uses the following log format:
[2023-10-12 15:45:30] [DEBUG] [my-production-service] This is a debug log.
[2023-10-12 15:45:30]
: Timestamp of the log entry.[DEBUG]
: Log level (INFO, ERROR, DEBUG).[my-production-service]
: Service name.This is a debug log.
: Log message.
Error Logs
In error logs, the stack trace and additional metadata are also included:
[2023-10-12 15:47:15] [ERROR] [my-production-service] This is an error log.
Error: Sample error
at ...
{
"additionalInfo": "some data"
}
Error: Sample error
: Error message and stack trace.{ "additionalInfo": "some data" }
: Additional metadata.
Debug Logs
Debug logs include additional metadata:
[2023-10-12 15:50:22] [DEBUG] [my-production-service] This is a debug log.
{
"debugInfo": "some debug data"
}
{ "debugInfo": "some debug data" }
: Debug-related metadata.
These log formats make it easy to read and interpret log entries, helping you with debugging and monitoring your application.
License
This package is released under the ISC License.