fix: time range 3y and format time_series

This commit is contained in:
2026-05-13 01:16:04 +02:00
parent 04ab32006c
commit 21a4c14a44
@@ -44,7 +44,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT start_time AS time, distance_meters / 1000.0 AS \"km\"\nFROM activities WHERE type = 'running' AND distance_meters > 0\nORDER BY start_time", "rawSql": "SELECT start_time AS time, distance_meters / 1000.0 AS \"km\"\nFROM activities WHERE type = 'running' AND distance_meters > 0\nORDER BY start_time",
"refId": "A" "refId": "A"
}], }],
@@ -67,7 +67,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT start_time AS time,\n ROUND(((duration_seconds / 60.0) / (distance_meters / 1000.0))::numeric, 2) AS \"min/km\"\nFROM activities\nWHERE type = 'running' AND distance_meters > 0 AND duration_seconds > 0\nORDER BY start_time", "rawSql": "SELECT start_time AS time,\n ROUND(((duration_seconds / 60.0) / (distance_meters / 1000.0))::numeric, 2) AS \"min/km\"\nFROM activities\nWHERE type = 'running' AND distance_meters > 0 AND duration_seconds > 0\nORDER BY start_time",
"refId": "A" "refId": "A"
}], }],
@@ -89,7 +89,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT start_time AS time, max_hr AS \"Max HR\"\nFROM activities\nWHERE type = 'running' AND max_hr IS NOT NULL\nORDER BY start_time", "rawSql": "SELECT start_time AS time, max_hr AS \"Max HR\"\nFROM activities\nWHERE type = 'running' AND max_hr IS NOT NULL\nORDER BY start_time",
"refId": "A" "refId": "A"
}], }],
@@ -111,7 +111,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT start_time AS time, vo2max\nFROM activities\nWHERE type = 'running' AND vo2max IS NOT NULL\nORDER BY start_time", "rawSql": "SELECT start_time AS time, vo2max\nFROM activities\nWHERE type = 'running' AND vo2max IS NOT NULL\nORDER BY start_time",
"refId": "A" "refId": "A"
}], }],
@@ -135,7 +135,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time, resting_hr\nFROM daily_health\nWHERE resting_hr IS NOT NULL\nORDER BY date", "rawSql": "SELECT date AS time, resting_hr\nFROM daily_health\nWHERE resting_hr IS NOT NULL\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -157,7 +157,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time, total_steps AS \"Schritte\"\nFROM daily_health\nWHERE total_steps IS NOT NULL AND total_steps > 0\nORDER BY date", "rawSql": "SELECT date AS time, total_steps AS \"Schritte\"\nFROM daily_health\nWHERE total_steps IS NOT NULL AND total_steps > 0\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -183,7 +183,7 @@ data:
"options": { "legend": { "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "multi" } }, "options": { "legend": { "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "multi" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time,\n body_battery_highest AS \"Hoch\",\n body_battery_lowest AS \"Niedrig\"\nFROM daily_health\nWHERE body_battery_highest IS NOT NULL\nORDER BY date", "rawSql": "SELECT date AS time,\n body_battery_highest AS \"Hoch\",\n body_battery_lowest AS \"Niedrig\"\nFROM daily_health\nWHERE body_battery_highest IS NOT NULL\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -207,7 +207,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time, average_stress AS \"Stress\"\nFROM daily_health\nWHERE average_stress IS NOT NULL AND average_stress > 0\nORDER BY date", "rawSql": "SELECT date AS time, average_stress AS \"Stress\"\nFROM daily_health\nWHERE average_stress IS NOT NULL AND average_stress > 0\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -231,7 +231,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time,\n ROUND((sleeping_seconds / 3600.0)::numeric, 1) AS \"Stunden\"\nFROM daily_health\nWHERE sleep_duration_seconds IS NOT NULL AND sleep_duration_seconds > 0\nORDER BY date", "rawSql": "SELECT date AS time,\n ROUND((sleeping_seconds / 3600.0)::numeric, 1) AS \"Stunden\"\nFROM daily_health\nWHERE sleep_duration_seconds IS NOT NULL AND sleep_duration_seconds > 0\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -256,7 +256,7 @@ data:
"options": { "legend": { "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "multi" } }, "options": { "legend": { "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "multi" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time,\n ROUND((sleep_deep_seconds / 3600.0)::numeric, 1) AS \"Tief\",\n ROUND((sleep_rem_seconds / 3600.0)::numeric, 1) AS \"REM\",\n ROUND((sleep_light_seconds / 3600.0)::numeric, 1) AS \"Leicht\"\nFROM daily_health\nWHERE sleep_duration_seconds IS NOT NULL AND sleep_duration_seconds > 0\nORDER BY date", "rawSql": "SELECT date AS time,\n ROUND((sleep_deep_seconds / 3600.0)::numeric, 1) AS \"Tief\",\n ROUND((sleep_rem_seconds / 3600.0)::numeric, 1) AS \"REM\",\n ROUND((sleep_light_seconds / 3600.0)::numeric, 1) AS \"Leicht\"\nFROM daily_health\nWHERE sleep_duration_seconds IS NOT NULL AND sleep_duration_seconds > 0\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -278,7 +278,7 @@ data:
"options": { "legend": { "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "multi" } }, "options": { "legend": { "displayMode": "list", "placement": "bottom" }, "tooltip": { "mode": "multi" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time,\n ROUND((active_seconds / 60.0)::numeric, 0) AS \"Aktiv\",\n ROUND((highly_active_seconds / 60.0)::numeric, 0) AS \"Hochaktiv\"\nFROM daily_health\nWHERE active_seconds IS NOT NULL AND active_seconds > 0\nORDER BY date", "rawSql": "SELECT date AS time,\n ROUND((active_seconds / 60.0)::numeric, 0) AS \"Aktiv\",\n ROUND((highly_active_seconds / 60.0)::numeric, 0) AS \"Hochaktiv\"\nFROM daily_health\nWHERE active_seconds IS NOT NULL AND active_seconds > 0\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -300,7 +300,7 @@ data:
"options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } }, "options": { "legend": { "displayMode": "hidden" }, "tooltip": { "mode": "single" } },
"targets": [{ "targets": [{
"datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" }, "datasource": { "type": "grafana-postgresql-datasource", "uid": "bfgdydx75ju2of" },
"editorMode": "code", "format": "table", "rawQuery": true, "editorMode": "code", "format": "time_series", "rawQuery": true,
"rawSql": "SELECT date AS time, respiration_avg_waking AS \"Atemzüge/min\"\nFROM daily_health\nWHERE respiration_avg_waking IS NOT NULL\nORDER BY date", "rawSql": "SELECT date AS time, respiration_avg_waking AS \"Atemzüge/min\"\nFROM daily_health\nWHERE respiration_avg_waking IS NOT NULL\nORDER BY date",
"refId": "A" "refId": "A"
}], }],
@@ -336,10 +336,10 @@ data:
"refresh": "30s", "refresh": "30s",
"schemaVersion": 42, "schemaVersion": 42,
"tags": ["garmin", "health", "fitness"], "tags": ["garmin", "health", "fitness"],
"time": { "from": "now-90d", "to": "now" }, "time": { "from": "now-3y", "to": "now" },
"timepicker": {}, "timepicker": {},
"timezone": "browser", "timezone": "browser",
"title": "Metrics", "title": "Hans Metrics",
"uid": "garmin-health-v1", "uid": "garmin-health-v1",
"version": 1, "version": 1,
"weekStart": "" "weekStart": ""