Skip to content

Monitoring Guide

Tinkero metrics and logs are collected by the central observability stack. Dashboards are available in the master Grafana instance.

Getting Started

  • Metrics are scraped by central Prometheus.
  • Logs are shipped to central Loki via the Docker logging driver.
  • Sentry (optional) captures errors and traces from the webhook handler.
  • Dashboards live in the central Grafana Tinkero folder.

Request Log Toggles

Request logging is off by default to avoid health check noise. Enable with:

  • LOG_REQUESTS=true to log non-health requests.
  • LOG_HEALTH_REQUESTS=true to log /health requests explicitly.

Key Metrics (Prometheus)

# Deployment success rate
100 * rate(deployments_success_total[5m]) / (rate(deployments_success_total[5m]) + rate(deployments_failure_total[5m]))

# Build duration p95
histogram_quantile(0.95, sum(rate(build_duration_seconds_bucket[5m])) by (le))

# Active builds
active_builds

Log Queries (Loki)

# All webhook-handler logs
{service="webhook-handler"}

# Errors only
{service="webhook-handler"} |= "error"

Sentry (Optional)

Sentry provides error tracking and optional performance tracing for the webhook handler.

Configuration

Set these environment variables in .env (leave SENTRY_DSN empty to disable):

SENTRY_DSN=
SENTRY_ENVIRONMENT=production
SENTRY_TRACES_SAMPLE_RATE=0.0

What Gets Captured

  • Deployment failures and build errors with repository, branch, commit, and site context
  • Panic recovery events with request metadata
  • Request breadcrumbs for non-health endpoints

Alerts

Alerts are configured in the central Prometheus/Grafana stack. Review alert rules and notifications there.