- Add ServiceMonitors for Traefik, ArgoCD, and Longhorn - Enable cert-manager ServiceMonitor via helm values - Deploy Grafana Tempo for distributed tracing (single-binary, Longhorn PVC) - Add Tempo datasource with trace-to-logs and trace-to-metrics correlation - Instrument API with OpenTelemetry SDK (Prometheus metrics + OTLP traces) - Replace console.log with pino structured logging + pino-http middleware - Add Grafana dashboards for Traefik, API overview, and PostgreSQL (CNPG)
34 lines
948 B
JSON
34 lines
948 B
JSON
{
|
|
"name": "@homelab/api",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "tsx watch src/index.ts",
|
|
"build": "tsup src/index.ts --format cjs --outDir dist",
|
|
"start": "node dist/index.js",
|
|
"lint": "tsc --noEmit",
|
|
"test": "echo \"no tests yet\""
|
|
},
|
|
"dependencies": {
|
|
"@opentelemetry/auto-instrumentations-node": "^0.71.0",
|
|
"@opentelemetry/exporter-prometheus": "^0.213.0",
|
|
"@opentelemetry/exporter-trace-otlp-http": "^0.213.0",
|
|
"@opentelemetry/resources": "^2.6.0",
|
|
"@opentelemetry/sdk-node": "^0.213.0",
|
|
"@opentelemetry/semantic-conventions": "^1.40.0",
|
|
"cors": "^2.8.5",
|
|
"express": "^4.21.0",
|
|
"pino": "^10.3.1",
|
|
"pino-http": "^11.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/cors": "^2.8.17",
|
|
"@types/express": "^5.0.0",
|
|
"@types/node": "^22.10.0",
|
|
"@types/pino-http": "^6.1.0",
|
|
"tsup": "^8.3.0",
|
|
"tsx": "^4.19.0",
|
|
"typescript": "^5.7.0"
|
|
}
|
|
}
|