nestjs-observability
Structured logging (Pino) and Prometheus metrics.
Installation
Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.
Voir la source ↗GuidesInstructions
Observability Standards
Priority: P1 (OPERATIONAL)
Logging, monitoring, and observability patterns for production applications.
-
Standard: Use
nestjs-pinofor high-performance JSON logging.-
Why: Node's built-in
console.logis blocking and unstructured.
-
Why: Node's built-in
-
Configuration:
-
Redaction: Mandatory masking of sensitive fields (
password,token,email). -
Context: Always inject
Loggerand set the context (LoginService).
-
Redaction: Mandatory masking of sensitive fields (
Tracing (Correlation)
-
Request ID: Every log line must include a
reqId(Request ID).-
nestjs-pinohandles this automatically usingAsyncLocalStorage. -
Propagation: Pass
x-request-idto downstream microservices/database queries key to trace flows.
-
Metrics
-
Exposure: Use
@willsoto/nestjs-prometheusto expose/metricsfor Prometheus scraping. -
Key Metrics:
-
http_request_duration_seconds(Histogram) -
db_query_duration_seconds(Histogram) -
memory_usage_bytes(Gauge)
-
Health Checks
-
Terminus: Implement explicit logic for "Liveness" (I'm alive) vs "Readiness" (I can take traffic).
-
DB Check:
TypeOrmHealthIndicator/PrismaHealthIndicator. - Memory Check: Fail if Heap > 300MB (prevent crash loops).
-
DB Check:
Exemples
Consultez les exemples du dépôt source.
Voir la source ↗Historique source
- Date d’indexation
- 2026-01-20
- Mise à jour de l’index
- 2026-01-26
- Branch
- main
Les dates concernent ce répertoire. Consultez le dépôt pour l’historique du code.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!