lawgs

AWS CloudWatch Logs made easy

  • lawgs

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
lawgs
11761.0.46 years ago8 years agoMinified + gzip package size for lawgs in KB

Readme

logo Lawgs ==============================
Nodejs logging to CloudWatch Logs made easy

Features

  • Creates Log Groups automatically
  • Creates Log Streams automatically
  • Periodic upload
  • Automatic log batching
  • JSON logging support
  • logger instances are shared across modules

Get it

`` npm install lawgs ``

How to use it

The only required configurations are the AWS configurations.
var lawgs = require('./index');

lawgs.config({
	aws: {
		accessKeyId: '********', /* Optional if credentials are set in ~/.aws/credentials */
		secretAccessKey: '******', /* Optional */
		region: 'us-east-1' /* Required */
	}
});

If you are using roles, you will need the following roles:
  • logs:DescribeLogGroups
  • logs:DescribeLogStreams
  • logs:CreateLogGroup
  • logs:CreateLogStream
  • logs:PutLogEvents

Simply create your logger and you are ready to go.
var logger  = lawgs.getOrCreate('SuperbowlLogs'); /* LogGroup */
logger.log('touchdown', { team: 'Patriots', weight: 7 });

Example

See ``example.js`` for a full working example.
Running the example, you get the following output:
Disposed subscription
Resubscribed
SuperbowlLogs >> uploadQueuedLogs triggered with  2  logs
Checking if log group exists: SuperbowlLogs
Creating log group: SuperbowlLogs
Checking if log stream exists: error
Checking if log stream exists: touchdown
Creating log stream: error
Creating log stream: touchdown
Uploading logs
Uploading logs
Logs uploaded
Logs uploaded

Roadmap

  • S3 logs archiving

Contributing

Feel free to open issues and open pull requests.

Related projects

Lambdaws (AWS Lambda Wrapper)
Superbowl Notifier (Used Lawgs to log high-volume tweets)