Skip to main content

logging-and-observability

Adds structured JSON logging, correlation/trace IDs, metrics, and health endpoints. Use when wiring observability for a new service, debugging cross-service requests, or removing console.log.

Informações da origem

Repositório
j4flmao/agent_skills_nodejs_nestjs
Última atividade na origem
3 de maio de 2026 às 03:46
Idioma detectado do SKILL.md
inglês
Estrelas
1
Forks
0

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
4 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
logging-and-observability
description
Adds structured JSON logging, correlation/trace IDs, metrics, and health endpoints. Use when wiring observability for a new service, debugging cross-service requests, or removing console.log.
license
MIT
# Logging and Observability ## When to use - Wiring observability for a new service - Debugging cross-service requests - Removing `console.log` from production code ## Core rules 1. Structured JSON logs in production, pretty in development 2. Every log entry has `timestamp`, `level`, `message`, `traceId` 3. No `console.log` in production code 4. Correlation/trace ID passed through async context 5. Health endpoint (`/health`) and readiness endpoint (`/ready`) ## Reference shape (TypeScript) ### Logger Interface (Port) ```typescript export interface Logger { info(message: string, meta?: Record<string, unknown>): void; warn(message: string, meta?: Record<string, unknown>): void; error(message: string, meta?: Record<string, unknown>): void; debug(message: string, meta?: Record<string, unknown>): void; } ``` ### JSON Logger Implementation ```typescript export class JsonLogger implements Logger { constructor(private traceId?: string) {} info(message: string, meta?: Record<string, unknown>): void { this.log('info', message, meta); } private log(level: string, message: string, meta?: Record<string, unknown>): void { const entry = { timestamp: new Date().toISOString(), level, message, traceId: this.traceId, ...meta, }; console.log(JSON.stringify(entry)); } } ``` ## Examples — Do ```typescript this.logger.info('User created', { userId: user.id, email: user.email.value }); ``` ## Examples — Don't ```typescript // ❌ Console.log in production code console.log('User created:', user); // ❌ No trace ID logger.info('Request processed'); ``` ## Checklist - [ ] Structured JSON logger implemented - [ ] Trace/correlation ID in every log entry - [ ] Health and readiness endpoints created - [ ] No `console.log` in production code See [reference/logging-patterns.md](./reference/logging-patterns.md) for full patterns.
Ver no GitHub