UNPKG

lynkr

Version:

Self-hosted LLM gateway and tier-routing proxy for Claude Code, Cursor, and Codex. Routes across Ollama, AWS Bedrock, OpenRouter, Databricks, Azure OpenAI, llama.cpp, and LM Studio with prompt caching, MCP tools, and 60-80% cost savings.

31 lines (24 loc) 757 B
const { getMetricsCollector } = require("../../observability/metrics"); /** * Metrics collection middleware * * Performance: Minimal overhead, non-blocking */ function metricsMiddleware(req, res, next) { const startTime = Date.now(); // Capture response finish res.on("finish", () => { const duration = Date.now() - startTime; const metrics = getMetricsCollector(); // Record request metrics metrics.recordRequest(req.method, req.path || req.url, res.statusCode, duration); // Record budget/rate limit blocks if (res.statusCode === 429) { metrics.recordRateLimitBlock(); } else if (res.statusCode === 402) { metrics.recordBudgetBlock(); } }); next(); } module.exports = { metricsMiddleware };