## Summary - Rename `date-modified` -> `modified` in all 80 docs and the `docs-check-frontmatter` task Quartz's `CreatedModifiedDate` plugin recognizes `modified`, `lastmod`, `updated`, and `last-modified` — but not `date-modified`. The wrong field name caused Quartz to ignore frontmatter dates entirely and fall through to filesystem timestamps (UTC inside Dagger), showing Feb 12 on pages built late on Feb 11 PST. ## Test plan - [x] `mise run docs-check-frontmatter` passes - [ ] Kick off docs release after merge — verify rendered dates match frontmatter values Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/158
1.3 KiB
1.3 KiB
| title | modified | tags | ||
|---|---|---|---|---|
| Loki | 2026-02-08 |
|
Loki
Log aggregation system for BlumeOps infrastructure.
Quick Reference
| Property | Value |
|---|---|
| URL | https://loki.ops.eblu.me |
| Tailscale URL | https://loki.tail8d86e.ts.net |
| Namespace | monitoring |
| Image | grafana/loki:3.4.2 |
| Storage | 50Gi PVC |
| Retention | 31 days |
Architecture
- Single-node deployment with filesystem storage
- TSDB index with 24h period
- Logs collected by alloy and pushed via Loki API
- Queried via grafana
Log Sources
From Indri (via Alloy):
- forgejo, tailscale (brew services)
- alloy, borgmatic, zot, jellyfin (LaunchAgents)
From Kubernetes (via Alloy DaemonSet):
- All pods in all namespaces
From Fly.io proxy (via embedded Alloy):
- nginx JSON access logs (
{instance="flyio-proxy", job="flyio-nginx"})
Query Examples (LogQL)
{service="forgejo"} # All forgejo logs
{service="borgmatic", stream="stderr"} # Borgmatic errors
{host="indri"} |= "error" # All logs containing "error"
{instance="flyio-proxy"} |= "docs.eblu.me" # Fly.io proxy access logs for docs
Related
- alloy - Log collector
- grafana - Log visualization
- prometheus - Metrics counterpart