diff --git a/examples/telemetry/.gitignore b/examples/telemetry/.gitignore
new file mode 100644
index 00000000..55163930
--- /dev/null
+++ b/examples/telemetry/.gitignore
@@ -0,0 +1 @@
+postgres-logs/
diff --git a/examples/telemetry/docker-compose.yml b/examples/telemetry/docker-compose.yml
index e4640c06..3426172e 100644
--- a/examples/telemetry/docker-compose.yml
+++ b/examples/telemetry/docker-compose.yml
@@ -96,7 +96,7 @@ services:
POSTGRES_DB: sqlpage
volumes:
- ./postgres-init:/docker-entrypoint-initdb.d:ro
- - postgres-logs:/var/log/postgresql
+ - ./postgres-logs:/var/log/postgresql:z
healthcheck:
test: ["CMD-SHELL", "pg_isready -U sqlpage"]
interval: 2s
@@ -107,7 +107,7 @@ services:
user: "0:0"
volumes:
- ./otel-collector.yaml:/etc/otelcol-contrib/config.yaml:ro
- - postgres-logs:/var/log/postgresql:ro
+ - ./postgres-logs:/var/log/postgresql:ro,z
ports:
- "4317:4317"
- "4318:4318"
@@ -155,13 +155,10 @@ services:
- GF_DASHBOARDS_DEFAULT_HOME_DASHBOARD_PATH=/etc/grafana/provisioning/dashboards/sqlpage/sqlpage-home.json
- GF_NEWS_NEWS_FEED_ENABLED=false
volumes:
- - ./grafana/datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml:ro
- - ./grafana/dashboards.yaml:/etc/grafana/provisioning/dashboards/dashboards.yaml:ro
- - ./grafana:/etc/grafana/provisioning/dashboards/sqlpage:ro
+ - ./grafana/datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml:ro,z
+ - ./grafana/dashboards.yaml:/etc/grafana/provisioning/dashboards/dashboards.yaml:ro,z
+ - ./grafana:/etc/grafana/provisioning/dashboards/sqlpage:ro,z
depends_on:
- tempo
- loki
- prometheus
-
-volumes:
- postgres-logs:
diff --git a/examples/telemetry/grafana/sqlpage-home.json b/examples/telemetry/grafana/sqlpage-home.json
index 3cd35cb9..5ad05b1e 100644
--- a/examples/telemetry/grafana/sqlpage-home.json
+++ b/examples/telemetry/grafana/sqlpage-home.json
@@ -15,19 +15,18 @@
}
]
},
- "editable": false,
+ "editable": true,
"fiscalYearStartMonth": 0,
"graphTooltip": 0,
- "id": null,
"links": [],
"panels": [
{
- "datasource": {
- "type": "grafana",
- "uid": "-- Grafana --"
+ "fieldConfig": {
+ "defaults": {},
+ "overrides": []
},
"gridPos": {
- "h": 4,
+ "h": 5,
"w": 24,
"x": 0,
"y": 0
@@ -42,7 +41,7 @@
"content": "
SQLPage Observability
Open http://localhost and interact with the app. New requests will appear here automatically.
This dashboard shows traces, logs, and application metrics exported by SQLPage. Trace waterfalls link to PostgreSQL logs via trace IDs. Metrics include HTTP durations, DB query latencies, and connection pool states.
",
"mode": "html"
},
- "pluginVersion": "12.4.0",
+ "pluginVersion": "12.4.1",
"title": "Overview",
"type": "text"
},
@@ -63,6 +62,7 @@
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
+ "barWidthFactor": 0.6,
"drawStyle": "line",
"fillOpacity": 10,
"gradientMode": "none",
@@ -79,6 +79,7 @@
"type": "linear"
},
"showPoints": "never",
+ "showValues": false,
"spanNulls": false,
"stacking": {
"group": "A",
@@ -94,7 +95,7 @@
"steps": [
{
"color": "green",
- "value": null
+ "value": 0
}
]
},
@@ -106,7 +107,7 @@
"h": 8,
"w": 12,
"x": 0,
- "y": 4
+ "y": 5
},
"id": 10,
"options": {
@@ -117,11 +118,12 @@
"showLegend": true
},
"tooltip": {
+ "hideZeros": false,
"mode": "single",
"sort": "none"
}
},
- "pluginVersion": "12.4.0",
+ "pluginVersion": "12.4.1",
"targets": [
{
"datasource": {
@@ -162,6 +164,7 @@
"axisLabel": "",
"axisPlacement": "auto",
"barAlignment": 0,
+ "barWidthFactor": 0.6,
"drawStyle": "line",
"fillOpacity": 10,
"gradientMode": "none",
@@ -178,6 +181,7 @@
"type": "linear"
},
"showPoints": "never",
+ "showValues": false,
"spanNulls": false,
"stacking": {
"group": "A",
@@ -193,7 +197,7 @@
"steps": [
{
"color": "green",
- "value": null
+ "value": 0
}
]
},
@@ -205,7 +209,7 @@
"h": 8,
"w": 12,
"x": 12,
- "y": 4
+ "y": 5
},
"id": 11,
"options": {
@@ -216,11 +220,12 @@
"showLegend": true
},
"tooltip": {
+ "hideZeros": false,
"mode": "single",
"sort": "none"
}
},
- "pluginVersion": "12.4.0",
+ "pluginVersion": "12.4.1",
"targets": [
{
"datasource": {
@@ -247,7 +252,24 @@
"cellOptions": {
"type": "auto"
},
+ "footer": {
+ "reducers": []
+ },
"inspect": false
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": 0
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
}
},
"overrides": [
@@ -258,45 +280,17 @@
},
"properties": [
{
- "id": "custom.hidden",
+ "id": "custom.hideFrom.viz",
"value": true
}
]
},
- {
- "matcher": {
- "id": "byName",
- "options": "startTime"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 190
- }
- ]
- },
- {
- "matcher": {
- "id": "byName",
- "options": "traceService"
- },
- "properties": [
- {
- "id": "custom.width",
- "value": 120
- }
- ]
- },
{
"matcher": {
"id": "byName",
"options": "traceName"
},
"properties": [
- {
- "id": "custom.width",
- "value": 520
- },
{
"id": "custom.cellOptions",
"value": {
@@ -330,12 +324,24 @@
{
"matcher": {
"id": "byName",
- "options": "nested"
+ "options": "Service"
},
"properties": [
{
- "id": "custom.hidden",
- "value": true
+ "id": "custom.width",
+ "value": 58
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Start time"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 204
}
]
}
@@ -345,17 +351,11 @@
"h": 8,
"w": 24,
"x": 0,
- "y": 12
+ "y": 13
},
"id": 2,
"options": {
"cellHeight": "sm",
- "footer": {
- "countRows": false,
- "fields": "",
- "reducer": ["sum"],
- "show": false
- },
"frameIndex": 0,
"showHeader": true,
"sortBy": [
@@ -365,17 +365,26 @@
}
]
},
- "pluginVersion": "12.4.0",
+ "pluginVersion": "12.4.1",
"targets": [
{
"datasource": {
"type": "tempo",
"uid": "tempo"
},
+ "filters": [
+ {
+ "id": "57ff7584",
+ "operator": "=",
+ "scope": "span"
+ }
+ ],
"limit": 50,
+ "metricsQueryType": "range",
"query": "{resource.service.name != nil}",
"queryType": "traceqlSearch",
"refId": "A",
+ "serviceMapUseNativeHistograms": false,
"tableType": "traces"
}
],
@@ -407,59 +416,36 @@
],
"type": "table"
},
- {
- "datasource": {
- "type": "tempo",
- "uid": "tempo"
- },
- "gridPos": {
- "h": 10,
- "w": 24,
- "x": 0,
- "y": 30
- },
- "id": 12,
- "pluginVersion": "12.4.0",
- "targets": [
- {
- "datasource": {
- "type": "tempo",
- "uid": "tempo"
- },
- "limit": 20,
- "query": "$traceId",
- "queryType": "traceql",
- "refId": "A",
- "tableType": "traces"
- }
- ],
- "timeFrom": "1h",
- "title": "Selected Trace",
- "type": "traces"
- },
{
"datasource": {
"type": "loki",
"uid": "loki"
},
+ "fieldConfig": {
+ "defaults": {},
+ "overrides": []
+ },
"gridPos": {
"h": 10,
"w": 12,
"x": 0,
- "y": 20
+ "y": 21
},
"id": 3,
"options": {
"dedupStrategy": "none",
"enableInfiniteScrolling": false,
+ "enableLogDetails": true,
"prettifyLogMessage": false,
"showCommonLabels": false,
+ "showControls": false,
"showLabels": true,
"showTime": true,
"sortOrder": "Descending",
+ "unwrappedColumns": false,
"wrapLogMessage": true
},
- "pluginVersion": "12.4.0",
+ "pluginVersion": "12.4.1",
"targets": [
{
"datasource": {
@@ -482,24 +468,31 @@
"type": "loki",
"uid": "loki"
},
+ "fieldConfig": {
+ "defaults": {},
+ "overrides": []
+ },
"gridPos": {
"h": 10,
"w": 12,
"x": 12,
- "y": 20
+ "y": 21
},
"id": 6,
"options": {
"dedupStrategy": "none",
"enableInfiniteScrolling": false,
+ "enableLogDetails": true,
"prettifyLogMessage": false,
"showCommonLabels": false,
+ "showControls": false,
"showLabels": true,
"showTime": true,
"sortOrder": "Descending",
+ "unwrappedColumns": false,
"wrapLogMessage": true
},
- "pluginVersion": "12.4.0",
+ "pluginVersion": "12.4.1",
"targets": [
{
"datasource": {
@@ -518,33 +511,17 @@
"type": "logs"
}
],
+ "preload": false,
"refresh": "5s",
- "schemaVersion": 41,
- "style": "dark",
- "tags": ["sqlpage", "tracing", "logs", "metrics"],
+ "schemaVersion": 42,
+ "tags": [
+ "sqlpage",
+ "tracing",
+ "logs",
+ "metrics"
+ ],
"templating": {
- "list": [
- {
- "current": {
- "selected": true,
- "text": "",
- "value": ""
- },
- "hide": 2,
- "label": "Trace ID",
- "name": "traceId",
- "options": [
- {
- "selected": true,
- "text": "",
- "value": ""
- }
- ],
- "query": "",
- "skipUrlSync": false,
- "type": "textbox"
- }
- ]
+ "list": []
},
"time": {
"from": "now-1h",
@@ -554,5 +531,6 @@
"timezone": "browser",
"title": "SQLPage Observability Home",
"uid": "sqlpage-tracing-home",
- "version": 6
-}
+ "version": 1,
+ "weekStart": ""
+}
\ No newline at end of file