library-nodejs-test-util

Test Utilities for nodejs services

Usage no npm install needed!

<script type="module">
  import libraryNodejsTestUtil from 'https://cdn.skypack.dev/library-nodejs-test-util';
</script>

README

Astra Logger

This is a common nodejs library for logging in aws lambda. It's a simple wrapper around console.log and decorates emitted log messages with some additional structure that is used by graylog to enhance our logging.

Consuming

npm

Add to your node project:

  • npm install --save @adastradev/astra-logger

Usage

You can use the logger anywhere in your code base, but it's a singleton and should be configured in each of your handlers, in order to tack on the extra structure to each message. Specifically, you should ensure you set the tenant_id:

Note Depending on your typescript config and linting rules, you may need to disable the import-name rule. Typescript has different rules for default imports.

handler script


// tslint:disable-next-line: import-name
import Log from '@adastradev/astra-logger';

Log.config({ tenant_id: <some id>});

Log.debug('here I am!');

Other scripts, like controllers


// tslint:disable-next-line: import-name
import Log from '@adastradev/astra-logger';

Log.info('Processing request with payload', someObject);

Contributing

Dev setup

It's a standard typescript node project:

  • npm install

VSCode is the editor of choice currently.

Tests

Tests are ran via mocha and use chai for assertions.

  • npm test