sumo-logger.js
TypeScript icon, indicating that this package has built-in type declarations

3.0.0 • Public • Published

sumo-logger.js

npm version npm version Twitter

sumo-logger.js is a zero dependency logging library for sumo logic. It was built as a solution to js-sumo-logger no longer being maintained efficiently.

Table of Contents

Installation

npm install sumo-logger.js

Motive

  • No longer worry about peer dependencies going out of date
  • Send minimal logs without the bulk of always sending timestamps and sessionIds
  • Simplified API makes sending logs a breeze
    • No more worries about flushing logs, just send the logs you want to send!

Usage

Setup your SumoLogger configuration:

import { SumoLogger } from "sumo-logger.js";

const sumoLogger = new SumoLogger({
  endpoint: "https://[SumoEndpoint]/receiver/v1/http/[UniqueHTTPCollectorCode]",
  sourceName: "mySourceName",
  sourceCategory: "mySourceCategory",
  hostName: "myHostName",
});

Sending a regular log:

await sumoLogger.log("myVeryAwesomeLog!");
await sumoLogger.log(JSON.stringify({ myAwesome: "log" }));

// Send multiple logs
await sumoLogger.log(["logOne", "logTwo"].join("\n"));

Sending a metric via Graphite:

import { GraphiteMessage } from "sumo-logger.js";

const graphiteMessage = new GraphiteMessage("myAwesomePath", "myValue");

await sumoLogger.log(graphiteMessage);

// Send multiple logs
await sumoLogger.log(
  [graphiteMessage.toString(), graphiteMessage.toString()].join("\n")
);

Sending a metric via Carbon 2.0:

import { CarbonTwoMessage } from "sumo-logger.js";

const carbonTwoMessage = new CarbonTwoMessage(
  "myIntrinsicTag",
  "myMetaTag",
  "myValue"
);

await sumoLogger.log(carbonTwoMessage);

// Send multiple logs
await sumoLogger.log(
  [carbonTwoMessage.toString(), carbonTwoMessage.toString()].join("\n")
);

ESM

sumo-logger.js is a pure ESM package. Please refer to this link if you are using CommonJS.

Contributing

Submit issues, and PRs as you wish. Forking is not necessary.

License

sumo-logger.js is released under the MIT License.

/sumo-logger.js/

    Package Sidebar

    Install

    npm i sumo-logger.js

    Weekly Downloads

    3

    Version

    3.0.0

    License

    MIT

    Unpacked Size

    12 kB

    Total Files

    15

    Last publish

    Collaborators

    • mikearche