@her-os/metrics-node
v0.1.5
Published
Her OS Prometheus metrics helpers for Node.js and Next.js services.
Readme
metrics-node
Her metrics Node 组件。
这是一个 npm package:
@her-os/metrics-node能力
- 独立
prom-clientregistry。 - Node process 默认指标。
her_build_info{application, env, version} 1。:6666/metrics文本输出。- HTTP 请求计数和耗时。
- 自定义
count/observeDuration/setGaugerecorder。 HER_ENV。- 高危 label 过滤、重复注册保护、
metricMaxCount自定义指标 / series 限制。
最小用法
import { createServer } from "node:http";
import { count, initMetrics, metricsContentType, metricsText, observeHttpRequest } from "@her-os/metrics-node";
initMetrics({
application: "her-web",
env: "prod",
version: "v0.1.0"
});
const metricsPort = Number(process.env.HER_METRICS_PORT ?? 6666);
createServer(async (req, res) => {
if (req.url !== "/metrics") {
res.writeHead(404);
res.end("not found");
return;
}
res.writeHead(200, {
"content-type": metricsContentType()
});
res.end(await metricsText());
}).listen(metricsPort);
observeHttpRequest({
path: "/api/chat",
method: "POST",
statusCode: 200,
durationMs: 120
});
count("her_llm_requests_total", 1, {
provider: "anthropic",
modelFamily: "claude-3.5-sonnet",
route: "/v1/messages",
turnBucket: "continued",
cacheEligible: true,
streamStatus: "complete"
});Runtime 默认指标
组件默认调用 prom-client.collectDefaultMetrics(),常用输出包括:
process_cpu_seconds_totalprocess_resident_memory_bytesnodejs_heap_size_used_bytesnodejs_heap_size_total_bytesnodejs_eventloop_lag_secondsnodejs_eventloop_lag_p90_secondsnodejs_eventloop_lag_p99_secondsnodejs_gc_duration_secondsnodejs_active_handlesnodejs_active_resources
验证
npm test
npm run typecheck
npm run build
npm pack --dry-run