observability

Configure structured logging, Prometheus metrics, OpenTelemetry tracing, and Sentry error tracking.

4|1|Updated Dec 30, 2025
One-click install
npx skills add https://github.com/doanchienthangdev/omgkit --skill observability-doanchienthangdev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: observability
Source: https://github.com/doanchienthangdev/omgkit/tree/main/plugin/skills/devops/observability
Command: npx skills add https://github.com/doanchienthangdev/omgkit --skill observability-doanchienthangdev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pino, prom-client, @opentelemetry/sdk-node, @sentry/node, @nestjs/terminus, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides comprehensive tools to monitor, debug, and understand the behavior of production systems, ensuring reliability and performance.

Core Features & Use Cases

  • Structured Logging: Implement robust, searchable logging with context and redaction.
  • Metrics Collection: Integrate with Prometheus for real-time performance monitoring.
  • Distributed Tracing: Track requests across microservices using OpenTelemetry.
  • Error Tracking: Utilize Sentry for proactive error reporting and analysis.
  • Health Checks: Define and expose health endpoints for system status.
  • Use Case: Debug a slow API endpoint by tracing its execution path across multiple services, identifying bottlenecks, and correlating with high error rates or resource usage.

Quick Start

Configure structured logging for your Node.js application using the provided pino logger example.

Frequently Asked Questions about observability

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement distributed tracing across microservices using OpenTelemetry?

Distributed tracing tracks requests across microservices using OpenTelemetry to identify execution bottlenecks. It correlates traces with metrics and logs to debug slow API endpoints and pinpoint performance failures in complex systems.

What is the best way to collect Prometheus metrics and set up alerting in a Node.js application?

Prometheus metrics collection is implemented using prom-client to monitor real-time performance and configure alerting. This enables proactive system reliability tracking by exposing application metrics for scraping and threshold-based alerts.

Can I use Pino for structured logging with context redaction in production systems?

Pino structured logging supports robust, searchable application logs with contextual data and redaction. It ensures sensitive information is filtered out while providing the deep insights needed to debug production system behavior.

Does this observability setup integrate Sentry for Node.js error tracking and reporting?

Sentry error tracking integrates directly into Node.js environments to capture proactive error reports and analyze exceptions. It works alongside metrics and tracing to correlate high error rates with resource usage spikes.

How do I expose health check endpoints for my Node.js application?

Health check endpoints are defined and exposed using @nestjs/terminus to report system status. This provides immediate visibility into application availability and readiness for complex production deployments.

Why do I need observability tools to debug slow API endpoints in complex systems?

Observability tools are needed to trace execution paths across multiple services, identify bottlenecks, and correlate high error rates with resource usage. This unified visibility ensures production system reliability and performance.