Quickstart
Node.js / Express / Hono Setup
Add DeepTracer to any Node.js backend in under 5 minutes.
Install
npm install @deeptracer/nodepnpm add @deeptracer/nodeyarn add @deeptracer/nodebun add @deeptracer/nodeEnvironment variables
DEEPTRACER_KEY=dt_your_api_key_here
DEEPTRACER_ENDPOINT=https://ingest.deeptracer.devBasic setup
import { init } from "@deeptracer/node"
const logger = init()
// Log anything
logger.info("Server started", { port: 3000 })
logger.warn("Slow query", { duration: 1200 })
logger.error("Payment failed", { orderId: "ord_123" })init() reads your environment variables automatically. It also sets up global error capture — any uncaught exception or unhandled promise rejection is reported to DeepTracer.
Express middleware
import express from "express"
import { init, expressMiddleware } from "@deeptracer/node"
const app = express()
const logger = init()
// Add DeepTracer middleware — traces every request automatically
app.use(expressMiddleware(logger))
app.get("/api/users", (req, res) => {
logger.info("Fetching users")
res.json({ users: [] })
})
app.listen(3000)Hono middleware
import { Hono } from "hono"
import { init, honoMiddleware } from "@deeptracer/node"
const app = new Hono()
const logger = init()
// Add DeepTracer middleware
app.use(honoMiddleware(logger))
app.get("/api/users", (c) => {
logger.info("Fetching users")
return c.json({ users: [] })
})
export default appCapture errors manually
try {
await processPayment(order)
} catch (error) {
logger.captureError(error, {
severity: "critical",
context: { orderId: order.id, amount: order.total }
})
throw error
}Graceful shutdown
process.on("SIGTERM", async () => {
await logger.destroy() // flushes all pending logs
process.exit(0)
})What's next?
- Track AI/LLM costs — Wrap your OpenAI/Anthropic calls
- Distributed tracing — Trace requests across services
- Full configuration — All config options