JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 6274
  • Score
    100M100P100Q143396F
  • License MIT

cloki is zero dependency and simple logger library for Loki and Cloudflare Workers.

Package Exports

  • @miketako3/cloki
  • @miketako3/cloki/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@miketako3/cloki) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

cloki - Zero Dependency and Simple Logging Library from Cloudflare Workers to Grafana Cloud's Loki

NPM Version NPM License GitHub Actions Workflow Status GitHub Release Date - Published_At GitHub commit activity GitHub contributors NPM Downloads

Introduction

Welcome to cloki, an open-source logger designed to bridge Cloudflare Workers with Grafana Cloud's Loki seamlessly and efficiently. Targeted at individual developers, cloki aims to reduce maintenance costs while offering a straightforward logging solution. With minimal configuration and the sole use of the fetch API, cloki is an easy-to-implement tool for effective logging.

Features

  • Easy Integration: Connect Cloudflare Workers with Grafana Cloud's Loki effortlessly.
  • Minimal Configuration: Get started with just a few simple settings.
  • Zero Dependencies: cloki has zero dependencies, making it easy to maintain.
  • Fetch API Usage: cloki uses the Fetch API, so it can be used in any environment like edge runtime.

Installation

$ npm i @miketako3/cloki

Grafana Cloud Setup

  1. Create a Grafana Cloud account from here.
  2. Access https://grafana.com/orgs/${YOUR_ORG_NAME}
  3. Click Detail.
  4. You got the required information.

Usage

import {Cloki} from '@miketako3/cloki'

const logger = getLokiLogger({
  lokiHost: "Host URL (e.g. logs-xxx-yyy.grafana.net)",
  lokiUser: "User (e.g. 123456)",
  lokiToken: "Generated API Token"
});

await logger.info({message: "Hello World!"});

await logger.error({message: "Hello World!", error: error});

// with addional labels
await logger.info({message: "Hello World!"}, {foo: "bar"});

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  • Fork the Project
  • Create your Feature Branch (git checkout -b feature/AmazingFeature)
  • Commit your Changes (git commit -m 'Add some AmazingFeature')
  • Push to the Branch (git push origin feature/AmazingFeature)
  • Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contacts

miketako3 (Kaito Hiruta) - contact@miketako.xyz

Project Link: https://github.com/miketako3/cloki