blumeops/argocd/apps
Erich Blume e4a8405de7 Observability cleanup and k8s service monitoring (#43) (#43)
## Summary
- Remove stale `/opt/homebrew/var/loki` from borgmatic backup (Loki migrated to k8s)
- Add Alloy k8s DaemonSet for automatic pod log collection with auto-discovery
- Add blackbox probes for miniflux, kiwix, transmission, devpi, argocd
- Add transmission-exporter sidecar for full metrics (speed, torrent counts, ratios)
- Replace stale devpi dashboard with probe-based metrics (status, response time, uptime)
- Add unified "K8s Services Health" dashboard for service uptime/response monitoring

## Manual cleanup already performed
- Deleted stale textfile metrics on indri: `devpi.prom`, `transmission.prom`
- Deleted stale data directories on indri: `/opt/homebrew/var/loki/`, `/opt/homebrew/var/prometheus/`

## Deployment and Testing
- [x] Sync `apps` application to pick up new alloy-k8s app
- [x] Deploy alloy-k8s on feature branch: `argocd app set alloy-k8s --revision feature/observability-cleanup && argocd app sync alloy-k8s`
- [x] Deploy torrent on feature branch (for transmission exporter): `argocd app set torrent --revision feature/observability-cleanup && argocd app sync torrent`
- [x] Deploy prometheus on feature branch (for new scrape config): `argocd app set prometheus --revision feature/observability-cleanup && argocd app sync prometheus`
- [x] Deploy grafana-config on feature branch (for dashboards): `argocd app set grafana-config --revision feature/observability-cleanup && argocd app sync grafana-config`
- [x] Verify pod logs appear in Loki/Grafana
- [x] Verify transmission metrics appear in Prometheus
- [x] Verify service probe metrics appear in Prometheus
- [x] Run `mise run provision-indri -- --tags borgmatic` to update borgmatic config
- [ ] After merge, reset apps to main and resync

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Reviewed-on: https://forge.tail8d86e.ts.net/eblume/blumeops/pulls/43
2026-01-22 13:51:01 -08:00
..
alloy-k8s.yaml Observability cleanup and k8s service monitoring (#43) (#43) 2026-01-22 13:51:01 -08:00
apps.yaml P5: Migrate devpi to Kubernetes (#34) 2026-01-20 14:55:37 -08:00
argocd.yaml K8s Migration Phase 2: Grafana to Kubernetes (#30) 2026-01-19 14:40:25 -08:00
blumeops-pg.yaml K8s Migration Phase 2: Grafana to Kubernetes (#30) 2026-01-19 14:40:25 -08:00
cloudnative-pg.yaml K8s Migration Phase 2: Grafana to Kubernetes (#30) 2026-01-19 14:40:25 -08:00
devpi.yaml P5: Migrate devpi to Kubernetes (#34) 2026-01-20 14:55:37 -08:00
grafana-config.yaml K8s Migration Phase 2: Grafana to Kubernetes (#30) 2026-01-19 14:40:25 -08:00
grafana.yaml K8s Migration Phase 2: Grafana to Kubernetes (#30) 2026-01-19 14:40:25 -08:00
kiwix.yaml Remove unused indri tags and ansible roles (#41) 2026-01-21 20:18:53 -08:00
kube-state-metrics.yaml Observability cleanup and k8s service monitoring (#43) (#43) 2026-01-22 13:51:01 -08:00
loki.yaml Migrate observability stack to Kubernetes (#42) 2026-01-22 12:06:02 -08:00
miniflux.yaml P4: Miniflux migration + PostgreSQL consolidation (#33) 2026-01-20 09:04:47 -08:00
prometheus.yaml Migrate observability stack to Kubernetes (#42) 2026-01-22 12:06:02 -08:00
tailscale-operator.yaml K8s Migration Phase 2: Grafana to Kubernetes (#30) 2026-01-19 14:40:25 -08:00
torrent.yaml P6: Migrate Kiwix and Transmission to Kubernetes (#39) 2026-01-21 18:07:40 -08:00