Installation

GoodLogs SDKs are available for JavaScript/TypeScript and Python. You can also use the REST API directly from any language.

JavaScript / TypeScript

bash
# npm
npm install @aj-2000-test/goodlogs-sdk

# yarn
yarn add @aj-2000-test/goodlogs-sdk

# pnpm
pnpm add @aj-2000-test/goodlogs-sdk

Zero dependencies. ESM + CJS + TypeScript declarations. ~4KB gzipped.

Next.js (App Router)

typescript
// lib/goodlogs.ts
import { GoodLogs } from "@aj-2000-test/goodlogs-sdk"

export const gl = new GoodLogs({
  apiKey: process.env.NEXT_PUBLIC_GOODLOGS_KEY!,
})

Express / Node.js

typescript
import { GoodLogs } from "@aj-2000-test/goodlogs-sdk"

const gl = new GoodLogs({
  apiKey: "gl_sk_your_secret_key",
})

app.use((err, req, res, next) => {
  gl.error(err.message, {
    stack: err.stack,
    path: req.path,
    service: "api",
  })
  res.status(500).json({ error: "Internal error" })
})

Python

bash
pip install goodlogs
python
from goodlogs import GoodLogs

gl = GoodLogs("gl_sk_your_secret_key")
gl.track("signup", {"plan": "pro"})
gl.error("Something failed", request_id="req_123")
gl.flush()  # or use as context manager

REST API

Send data directly via HTTP from any language. See the REST API reference.

Tip: Use public keys (gl_pk_) for browser-side code and secret keys (gl_sk_) for server-side.