Add Grafana golden signals dashboard for landscaping-assistant #401

Closed
opened 2026-06-04 05:02:12 +00:00 by ldraney · 0 comments
Owner

Type

Feature

Lineage

Cross-repo work for landscaping-assistant#16. Part of observability chain under landscaping-assistant#43.

Repo

ldraney/pal-e-platform

User Story

As an operator, I want a Grafana dashboard showing the four golden signals for landscaping-assistant so I can monitor service health at a glance.

Context

The landscaping-assistant app exposes Prometheus metrics via yabeda-rails and yabeda-puma-plugin at /metrics. ServiceMonitor is scraping successfully. This ticket adds the Grafana visualization layer.

Summary

Add a Grafana dashboard provisioned via Terraform ConfigMap that displays:

  • Traffic: Request rate from rails_requests_total (yabeda-rails)
  • Latency: p50/p95/p99 from rails_request_duration_bucket, plus DB/view runtime
  • Errors: 5xx rate and error percentage
  • Saturation: Puma thread utilization + CPU/memory vs limits

File Targets

  • terraform/dashboards/landscaping-assistant-golden-signals.json — new dashboard JSON
  • terraform/modules/monitoring/main.tf — new ConfigMap resource

Test Expectations

  • Dashboard appears in Grafana under "landscaping-assistant" tag
  • All panels load (may show "No data" without traffic)
  • tofu plan shows only the new ConfigMap resource

Constraints

  • Follow existing dashboard pattern (ConfigMap with grafana_dashboard: "1" label)
  • Use yabeda metric names, not generic http_* metrics

Acceptance Criteria

  • Dashboard auto-provisions via Grafana sidecar
  • Four golden signal sections: Traffic, Latency, Errors, Saturation
  • Puma thread metrics visible (running, total, backlog, utilization %)

Checklist

  • Dashboard JSON created
  • ConfigMap resource added to monitoring module
  • PR submitted and reviewed
  • landscaping-assistant#16, landscaping-assistant#43 (parent)
  • Existing pattern: pal-e-app-golden-signals.json
### Type Feature ### Lineage Cross-repo work for [landscaping-assistant#16](https://forgejo.tail5b443a.ts.net/ldraney/landscaping-assistant/issues/16). Part of observability chain under landscaping-assistant#43. ### Repo ldraney/pal-e-platform ### User Story As an operator, I want a Grafana dashboard showing the four golden signals for landscaping-assistant so I can monitor service health at a glance. ### Context The landscaping-assistant app exposes Prometheus metrics via yabeda-rails and yabeda-puma-plugin at `/metrics`. ServiceMonitor is scraping successfully. This ticket adds the Grafana visualization layer. ### Summary Add a Grafana dashboard provisioned via Terraform ConfigMap that displays: - **Traffic**: Request rate from `rails_requests_total` (yabeda-rails) - **Latency**: p50/p95/p99 from `rails_request_duration_bucket`, plus DB/view runtime - **Errors**: 5xx rate and error percentage - **Saturation**: Puma thread utilization + CPU/memory vs limits ### File Targets - `terraform/dashboards/landscaping-assistant-golden-signals.json` — new dashboard JSON - `terraform/modules/monitoring/main.tf` — new ConfigMap resource ### Test Expectations - Dashboard appears in Grafana under "landscaping-assistant" tag - All panels load (may show "No data" without traffic) - `tofu plan` shows only the new ConfigMap resource ### Constraints - Follow existing dashboard pattern (ConfigMap with `grafana_dashboard: "1"` label) - Use yabeda metric names, not generic `http_*` metrics ### Acceptance Criteria - Dashboard auto-provisions via Grafana sidecar - Four golden signal sections: Traffic, Latency, Errors, Saturation - Puma thread metrics visible (running, total, backlog, utilization %) ### Checklist - [ ] Dashboard JSON created - [ ] ConfigMap resource added to monitoring module - [ ] PR submitted and reviewed ### Related - landscaping-assistant#16, landscaping-assistant#43 (parent) - Existing pattern: `pal-e-app-golden-signals.json`
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/pal-e-platform#401
No description provided.