summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--files/common/openwrt/chrony_prometheus-node-exporter.lua4
-rw-r--r--roles/monitoring/grafana/files/dashboard-chrony.json303
2 files changed, 263 insertions, 44 deletions
diff --git a/files/common/openwrt/chrony_prometheus-node-exporter.lua b/files/common/openwrt/chrony_prometheus-node-exporter.lua
index fbce2f3c..a3c4b292 100644
--- a/files/common/openwrt/chrony_prometheus-node-exporter.lua
+++ b/files/common/openwrt/chrony_prometheus-node-exporter.lua
@@ -62,6 +62,10 @@ local function scrape()
metric("chrony_tracking_root_dispersion_seconds", "gauge", nil, tonumber(items[12]))
metric("chrony_tracking_stratum", "gauge", nil, tonumber(items[3]))
metric("chrony_tracking_system_time_seconds", "gauge", nil, tonumber(items[5]))
+ metric("chrony_tracking_frequency_ppms", "gauge", nil, tonumber(items[8]))
+ metric("chrony_tracking_residual_frequency_ppms", "gauge", nil, tonumber(items[9]))
+ metric("chrony_tracking_skew_ppms", "gauge", nil, tonumber(items[10]))
+ metric("chrony_tracking_update_interval_seconds", "gauge", nil, tonumber(items[13]))
end
local metric_sources_ls_age = metric("chrony_sources_last_sample_age_seconds", "gauge")
diff --git a/roles/monitoring/grafana/files/dashboard-chrony.json b/roles/monitoring/grafana/files/dashboard-chrony.json
index 2b869e42..927e2684 100644
--- a/roles/monitoring/grafana/files/dashboard-chrony.json
+++ b/roles/monitoring/grafana/files/dashboard-chrony.json
@@ -15,7 +15,7 @@
"type": "grafana",
"id": "grafana",
"name": "Grafana",
- "version": "10.0.2"
+ "version": "10.2.3"
},
{
"type": "datasource",
@@ -141,9 +141,10 @@
"values": false
},
"text": {},
- "textMode": "name"
+ "textMode": "name",
+ "wideLayout": true
},
- "pluginVersion": "10.0.2",
+ "pluginVersion": "10.2.3",
"targets": [
{
"datasource": {
@@ -197,7 +198,7 @@
},
"gridPos": {
"h": 6,
- "w": 6,
+ "w": 3,
"x": 6,
"y": 1
},
@@ -215,9 +216,10 @@
"values": false
},
"text": {},
- "textMode": "value"
+ "textMode": "value",
+ "wideLayout": true
},
- "pluginVersion": "10.0.2",
+ "pluginVersion": "10.2.3",
"targets": [
{
"datasource": {
@@ -241,12 +243,84 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
+ "description": "",
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "text",
+ "value": null
+ }
+ ]
+ },
+ "unit": "s"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 6,
+ "w": 3,
+ "x": 9,
+ "y": 1
+ },
+ "id": 23,
+ "options": {
+ "colorMode": "value",
+ "graphMode": "none",
+ "justifyMode": "center",
+ "orientation": "auto",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "",
+ "values": false
+ },
+ "text": {},
+ "textMode": "value",
+ "wideLayout": true
+ },
+ "pluginVersion": "10.2.3",
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "disableTextWrap": false,
+ "editorMode": "code",
+ "exemplar": false,
+ "expr": "chrony_tracking_update_interval_seconds{instance=\"$instance\"}",
+ "fullMetaSearch": false,
+ "includeNullMetadata": true,
+ "instant": true,
+ "interval": "",
+ "legendFormat": "",
+ "refId": "A",
+ "useBackend": false
+ }
+ ],
+ "title": "Update Interval",
+ "type": "stat"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
+ "axisBorderShow": false,
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
@@ -260,6 +334,7 @@
"tooltip": false,
"viz": false
},
+ "insertNulls": false,
"lineInterpolation": "smooth",
"lineWidth": 1,
"pointSize": 5,
@@ -295,7 +370,7 @@
"overrides": []
},
"gridPos": {
- "h": 7,
+ "h": 5,
"w": 12,
"x": 12,
"y": 1
@@ -403,9 +478,10 @@
"values": false
},
"text": {},
- "textMode": "name"
+ "textMode": "name",
+ "wideLayout": true
},
- "pluginVersion": "10.0.2",
+ "pluginVersion": "10.2.3",
"targets": [
{
"datasource": {
@@ -429,13 +505,13 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
- "description": "Absolute bound on the computer’s clock accuracy (assuming the stratum-1 computer is correct)",
"fieldConfig": {
"defaults": {
"color": {
"mode": "palette-classic"
},
"custom": {
+ "axisBorderShow": false,
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
@@ -449,6 +525,7 @@
"tooltip": false,
"viz": false
},
+ "insertNulls": false,
"lineInterpolation": "smooth",
"lineWidth": 1,
"pointSize": 5,
@@ -472,6 +549,10 @@
{
"color": "green",
"value": null
+ },
+ {
+ "color": "red",
+ "value": 80
}
]
},
@@ -480,12 +561,12 @@
"overrides": []
},
"gridPos": {
- "h": 8,
+ "h": 5,
"w": 12,
- "x": 0,
- "y": 7
+ "x": 12,
+ "y": 6
},
- "id": 6,
+ "id": 9,
"options": {
"legend": {
"calcs": [],
@@ -505,17 +586,29 @@
"uid": "${DS_PROMETHEUS}"
},
"editorMode": "code",
- "exemplar": false,
- "expr": "instance:chrony_clock_error_seconds:abs{instance=\"$instance\"}",
- "format": "time_series",
- "instant": false,
+ "exemplar": true,
+ "expr": "chrony_tracking_root_delay_seconds{instance=\"$instance\"}",
"interval": "",
- "legendFormat": "Clock Error",
+ "legendFormat": "Root delay",
"range": true,
"refId": "A"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "exemplar": true,
+ "expr": "chrony_tracking_root_dispersion_seconds{instance=\"$instance\"}",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "Root dispersion",
+ "range": true,
+ "refId": "B"
}
],
- "title": "Maximum Clock Error",
+ "title": "Source delay",
"type": "timeseries"
},
{
@@ -529,6 +622,7 @@
"mode": "palette-classic"
},
"custom": {
+ "axisBorderShow": false,
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
@@ -542,7 +636,8 @@
"tooltip": false,
"viz": false
},
- "lineInterpolation": "smooth",
+ "insertNulls": false,
+ "lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
@@ -572,17 +667,17 @@
}
]
},
- "unit": "s"
+ "unit": "ppm"
},
"overrides": []
},
"gridPos": {
- "h": 7,
+ "h": 9,
"w": 12,
- "x": 12,
- "y": 8
+ "x": 0,
+ "y": 7
},
- "id": 9,
+ "id": 22,
"options": {
"legend": {
"calcs": [],
@@ -601,13 +696,16 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
+ "disableTextWrap": false,
"editorMode": "code",
- "exemplar": true,
- "expr": "chrony_tracking_root_delay_seconds{instance=\"$instance\"}",
- "interval": "",
- "legendFormat": "Root delay",
+ "expr": "chrony_tracking_frequency_ppms{instance=\"$instance\"}",
+ "fullMetaSearch": false,
+ "includeNullMetadata": true,
+ "instant": false,
+ "legendFormat": "System Clock",
"range": true,
- "refId": "A"
+ "refId": "A",
+ "useBackend": false
},
{
"datasource": {
@@ -615,16 +713,128 @@
"uid": "${DS_PROMETHEUS}"
},
"editorMode": "code",
- "exemplar": true,
- "expr": "chrony_tracking_root_dispersion_seconds{instance=\"$instance\"}",
+ "expr": "chrony_tracking_residual_frequency_ppms{instance=\"$instance\"}",
"hide": false,
- "interval": "",
- "legendFormat": "Root dispersion",
+ "instant": false,
+ "legendFormat": "Residual",
"range": true,
"refId": "B"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "disableTextWrap": false,
+ "editorMode": "builder",
+ "expr": "chrony_tracking_skew_ppms{instance=\"$instance\"}",
+ "fullMetaSearch": false,
+ "hide": false,
+ "includeNullMetadata": true,
+ "instant": false,
+ "legendFormat": "Skew",
+ "range": true,
+ "refId": "C",
+ "useBackend": false
}
],
- "title": "Source delay",
+ "title": "Frequency",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "description": "Absolute bound on the computer’s clock accuracy (assuming the stratum-1 computer is correct)",
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisBorderShow": false,
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "insertNulls": false,
+ "lineInterpolation": "smooth",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "s"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 5,
+ "w": 12,
+ "x": 12,
+ "y": 11
+ },
+ "id": 6,
+ "options": {
+ "legend": {
+ "calcs": [],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "single",
+ "sort": "none"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "exemplar": false,
+ "expr": "instance:chrony_clock_error_seconds:abs{instance=\"$instance\"}",
+ "format": "time_series",
+ "instant": false,
+ "interval": "",
+ "legendFormat": "Clock Error",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Maximum Clock Error",
"type": "timeseries"
},
{
@@ -637,7 +847,7 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 15
+ "y": 16
},
"id": 13,
"panels": [],
@@ -749,10 +959,10 @@
]
},
"gridPos": {
- "h": 8,
+ "h": 7,
"w": 24,
"x": 0,
- "y": 16
+ "y": 17
},
"id": 19,
"options": {
@@ -769,7 +979,7 @@
"showHeader": true,
"sortBy": []
},
- "pluginVersion": "10.0.2",
+ "pluginVersion": "10.2.3",
"targets": [
{
"datasource": {
@@ -892,6 +1102,7 @@
"mode": "palette-classic"
},
"custom": {
+ "axisBorderShow": false,
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
@@ -905,6 +1116,7 @@
"tooltip": false,
"viz": false
},
+ "insertNulls": false,
"lineInterpolation": "smooth",
"lineWidth": 1,
"pointSize": 5,
@@ -987,6 +1199,7 @@
"mode": "palette-classic"
},
"custom": {
+ "axisBorderShow": false,
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
@@ -1000,6 +1213,7 @@
"tooltip": false,
"viz": false
},
+ "insertNulls": false,
"lineInterpolation": "smooth",
"lineWidth": 1,
"pointSize": 5,
@@ -1082,6 +1296,7 @@
"mode": "palette-classic"
},
"custom": {
+ "axisBorderShow": false,
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "",
@@ -1095,6 +1310,7 @@
"tooltip": false,
"viz": false
},
+ "insertNulls": false,
"lineInterpolation": "smooth",
"lineWidth": 1,
"pointSize": 5,
@@ -1168,8 +1384,7 @@
}
],
"refresh": "30s",
- "schemaVersion": 38,
- "style": "dark",
+ "schemaVersion": 39,
"tags": [],
"templating": {
"list": [
@@ -1205,6 +1420,6 @@
"timezone": "",
"title": "chrony",
"uid": "c252be85-471b-41c9-b1cb-f0e1b8206593",
- "version": 3,
+ "version": 5,
"weekStart": ""
-}
+} \ No newline at end of file