Quick health check dashboard showing key metrics at a glance.
| UID | opencloud-overview |
| Datasource | Prometheus |
| Refresh | auto |
This is the entry point for OpenCloud monitoring. Use it for daily health checks and as a starting point for investigations.
┌─────────────────────┐
│ OpenCloud Overview │ ← You are here
│ (Prometheus) │
└──────────┬──────────┘
│
┌───────────────────┼───────────────────┐
│ │ │
▼ ▼ ▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Requests │ │ Uploads │ │ Logs │
│ (Prometheus)│ │ (Prometheus)│ │ (Loki) │
└─────────────┘ └─────────────┘ └──────┬──────┘
│
┌───────────────────┼───────────────────┐
│ │ │
▼ ▼ ▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Proxy │ │ Activitylog │ │ (filter by │
│ (Loki) │ │ (Loki) │ │ component) │
└─────────────┘ └─────────────┘ └─────────────┘
- Daily health check at a glance
- First stop when investigating issues
- Monitor system during deployments
- Correlate load with errors and latency
Drill down to:
- Requests → Performance details, latency heatmap
- Uploads → Upload pipeline, ClamAV issues
- Logs → Application errors, component debugging
opencloud_proxy_requests_total
opencloud_proxy_errors_total
opencloud_proxy_duration_seconds_bucket
reva_upload_*
opencloud_postprocessing_*
go_goroutines
go_memstats_heap_alloc_bytes
| Job | Description |
|---|---|
opencloud |
OpenCloud metrics endpoint (port 9205) |
| Panel | Metric | Thresholds |
|---|---|---|
| Requests/s | HTTP requests per second | green, yellow >100, red >500 |
| Error Rate | % failed requests (5xx, timeouts) | green <1%, yellow <5%, red ≥5% |
| P95 Latency | 95th percentile response time | green <500ms, yellow <2s, red ≥2s |
| Goroutines | Active goroutines | green <2000, yellow <5000, red ≥5000 |
Dual-axis chart showing requests (green, left) and errors (red, right) over time.
Interpretation:
- Errors rise with requests → system overloaded
- Errors spike without request spike → other problem (disk, external service)
Response times over time: P50 (green), P95 (yellow), P99 (red).
Interpretation:
- Parallel lines = consistent performance
- Large gap P50↔P99 = outliers → check Requests
Concurrent transfers: Uploads (blue), Downloads (purple), Processing (orange).
Interpretation:
- High Processing = slow ClamAV or backlog → check Uploads
- Should return to 0 after activity stops
Upload lifecycle per minute: Initiated → Scanned → Finalized/Aborted.
Interpretation:
- Gap between stages = where uploads get stuck
- Many Aborted = antivirus or storage issues → check Uploads
Async processing queues: Postprocessing, Search.
Interpretation:
- Should be 0-5 normally
- Growing queue = processing can't keep up
Heap memory of OpenCloud process.
Interpretation:
- Normal: 50-200 MB
- Steadily increasing without drop = memory leak
- Check Error Rate gauge (should be green)
- Check P95 Latency (should be <500ms)
- Check Goroutines (should be <2000)
- If any red → drill down to specific dashboards
- Check Latency Percentiles for when slowdown started
- Correlate with Request Rate & Errors for load spike
- Check Active Transfers for upload/download activity
- → Drill down: Requests
- Watch Error Rate during rollout
- Check Request Rate & Errors for correlation
- Watch Goroutines for stability after restart
- Verify Upload Pipeline resumes normal flow
- Note the time range with errors
- → Drill down: Logs for application errors
- → Drill down: Proxy for HTTP errors
- Check Prometheus is scraping OpenCloud metrics
- Verify
opencloud:9205/metricsendpoint is accessible - Check job name matches
opencloud
- Possible goroutine leak
- Monitor for several hours
- If continues without load, restart container and report upstream
- Check disk space
- Check external dependencies (LDAP, SMTP)
- → Drill down: Logs for specific errors
| Dashboard | Datasource | Use for |
|---|---|---|
| Requests | Prometheus | Detailed performance analysis |
| Uploads | Prometheus | Upload pipeline deep dive |
| Logs | Loki | Error investigation |
| Proxy | Loki | HTTP traffic analysis |