@salesforce/refocus-logging-client

Use this module to send log messages from Refocus applications to the shared Kafka cluster.

Usage no npm install needed!

<script type="module">
  import salesforceRefocusLoggingClient from 'https://cdn.skypack.dev/@salesforce/refocus-logging-client';
</script>

README

@salesforce/refocus-logging-client

Installation

Install the library into your node_module by running

npm install @salesforce/refocus-logging-client --save

Configuration

Configure the following environment variables in each of the producer applications:

  • KAFKA_CLIENT_CERT: File path to the file that contains the client certificate.
  • KAFKA_CLIENT_CERT_KEY: File path to the file that contains the client certificate key.
  • KAFKA_URL: Your Kafka Cluster URL.
  • KAFKA_LOGGING: Set to true to send log lines to the Refocus Logging application, defaults to false.
  • KAFKA_LOGGING_TOPIC: The name of the topic to which you want to publish your log messages. Note that if your Kafka cluster designates a prefix for your topics, you must specify the full topic name here, including the prefix.
  • LOCAL_LOGGING: Set to false if you want to turn off local logging, defaults to true.

Usage

Use this module to send log messages from Refocus applications to the shared Kafka cluster.

Simply start using this logger as shown below:

const logger = require('@salesforce/refocus-logging-client');
logger.info('Message sent'); // Other log levels are: error, warn, info, debug, verbose, silly, track

Note: Track does not log locally

To add an eventHandler for whenever a log line is sent:

  logger.on('logging', /* event handler */);

The consumer for this application can be found here

Debug

Uses https://www.npmjs.com/package/debug. Enable debug by setting environment variable DEBUG to refocus-logging-client.

Version History

  • 1.0.11 Only stringify the key if the key is defined
  • 1.0.10 Enable concatenating comma separated arguments and stringify the key
  • 1.0.9 include track level, which doesn't log locally and only sends messages to kafka
  • 1.0.8 add debug
  • 1.0.7 update readme
  • 1.0.6 add default transports for local logging with winston
  • 1.0.5 re-publish with public access
  • 1.0.4 update readme for new config env var
  • 1.0.3 update package name in readme