Observability
Laminar provides a complete observability stack for monitoring pipelines, jobs, and infrastructure.
Architecture
βββββββββββββββββββ βββββββββββββββββββ
β Laminar Engine βββββΊβ β
β (logs + metrics)β β β
βββββββββββββββββββ€ β Vector β
β Pod Logs βββββΊβ (DaemonSet) β
βββββββββββββββββββ€ β β
β kubelet/cAdvisorβββββΊβ β
βββββββββββββββββββ€ β β
β kube-state- βββββΊβ β
β metrics β ββββββββββ¬βββββββββ
βββββββββββββββββββ β
βΌ
βββββββββββββββββββββ
β GrepTimeDB β
β - Logs (MySQL) β
β - Metrics (Prom) β
ββββββββββ¬βββββββββββ
β
βΌ
βββββββββββββββββββββ
β Grafana β
βββββββββββββββββββββ
Stack Components
| Component | Purpose | Deployment |
|---|---|---|
| Vector | Log and metrics collection | DaemonSet (K8s) / Container (Desktop) |
| GrepTimeDB | Time-series database for logs and metrics | StatefulSet (K8s) / Container (Desktop) |
| Grafana | Visualization and dashboards | Deployment (K8s) / Container (Desktop) |
| kube-state-metrics | Kubernetes object metrics | Deployment (K8s only) |
GrepTimeDB
GrepTimeDB is a unified time-series database that stores both logs and metrics.
Databases:
| Database | Contents |
|---|---|
laminar_logs | Raw logs table |
laminar_log_views | Pre-defined log views |
laminar_metrics | Raw metrics tables |
laminar_metric_views | Pre-defined metric views |
Ports:
| Port | Protocol | Use |
|---|---|---|
| 4000 | HTTP | API, Prometheus remote write |
| 4001 | gRPC | Native ingestion |
| 4002 | MySQL | SQL queries (Grafana logs) |
| 4003 | PostgreSQL | SQL queries |
Grafana Datasources
| Name | Type | Endpoint | Purpose |
|---|---|---|---|
| Laminar-Metrics | Prometheus | laminar-engine:8004 | Laminar engine metrics |
| GrepTimeDB-Metrics | Prometheus | greptimedb:4000/v1/prometheus | Container/node/K8s metrics |
| GrepTimeDB-Logs | MySQL | greptimedb:4002 | Log queries |
Access
Desktop Mode
| Service | URL | Credentials |
|---|---|---|
| Grafana | http://localhost:3001 | laminar / laminar |
| GrepTimeDB | http://localhost:4000 | - |
Kubernetes
| Service | URL | Credentials |
|---|---|---|
| Grafana | grafana.{baseDomain} | laminar / laminar |
| GrepTimeDB | greptimedb.{baseDomain} | - |
Helm Chart
The observability stack is deployed via the laminar-monitoring Helm chart:
# Chart dependencies
- grafana (8.5.1)
- greptimedb-standalone (0.1.29)
- vector (0.40.0)
- kube-state-metrics (5.25.1)Deployed to namespace: laminar-monitoring