- Grafana-Provisioning ergaenzt: Datasources (prometheus/loki) mit den bestehenden UIDs, damit alle Dashboards weiter funktionieren, sowie vier Dashboard-Provider passend zu den vorhandenen Ordnern. - 9 Dashboards aus der laufenden Instanz exportiert und bereinigt: id/version entfernt, hart kodierte und verwaiste Datasource-UIDs auf die provisionierten UIDs umgeschrieben. - Images von :latest auf feste Versionen gepinnt (Prometheus v3.3.1, Loki 3.7.1, Alloy v1.16.0, Grafana 12.0.0, node-exporter v1.9.1). - Alloy: Docker-Metadaten (container, compose_service, compose_project) als Loki-Labels via discovery.relabel. - .env-Variablen auf GRAFANA_ADMIN_USER/GRAFANA_ADMIN_PASSWORD vereinheitlicht, .env.example ergaenzt, .env bleibt ungetrackt. - prometheus.yml kommentiert (Remote-Write-Quellen, Fremd-Stack-Targets), toten auskommentierten Matrix-Job entfernt. - README mit Deployment, Struktur, externen Abhaengigkeiten und offenen Sicherheitspunkten (offene Ports 9090/3100/9100). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1181 lines
29 KiB
JSON
1181 lines
29 KiB
JSON
{
|
|
"annotations": {
|
|
"list": [
|
|
{
|
|
"builtIn": 1,
|
|
"datasource": {
|
|
"type": "datasource",
|
|
"uid": "grafana"
|
|
},
|
|
"enable": true,
|
|
"hide": true,
|
|
"iconColor": "rgba(0, 211, 255, 1)",
|
|
"name": "Annotations & Alerts",
|
|
"target": {
|
|
"limit": 100,
|
|
"matchAny": false,
|
|
"tags": [],
|
|
"type": "dashboard"
|
|
},
|
|
"type": "dashboard"
|
|
}
|
|
]
|
|
},
|
|
"description": "Basic monitoring of FluxCD resources.",
|
|
"editable": true,
|
|
"fiscalYearStartMonth": 0,
|
|
"gnetId": 16714,
|
|
"graphTooltip": 1,
|
|
"links": [],
|
|
"liveNow": false,
|
|
"panels": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"decimals": 0,
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "semi-dark-blue",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "dark-red",
|
|
"value": 100
|
|
}
|
|
]
|
|
},
|
|
"unit": "short"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 3,
|
|
"x": 0,
|
|
"y": 0
|
|
},
|
|
"id": 29,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"last"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"text": {},
|
|
"textMode": "value"
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"expr": "count(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"True\",kind=~\"GitRepository|HelmRepository|Bucket\"})\n-\nsum(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"Deleted\",kind=~\"GitRepository|HelmRepository|Bucket\"})",
|
|
"interval": "",
|
|
"legendFormat": "",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Sources",
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"decimals": 0,
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "dark-green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "dark-red",
|
|
"value": 1
|
|
}
|
|
]
|
|
},
|
|
"unit": "short"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 3,
|
|
"x": 3,
|
|
"y": 0
|
|
},
|
|
"id": 30,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"last"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"text": {},
|
|
"textMode": "value"
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"expr": "sum(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"False\",kind=~\"GitRepository|HelmRepository|Bucket\"})",
|
|
"interval": "",
|
|
"legendFormat": "",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Failing sources",
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "dark-green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "dark-orange",
|
|
"value": 1
|
|
},
|
|
{
|
|
"color": "dark-red",
|
|
"value": 30
|
|
}
|
|
]
|
|
},
|
|
"unit": "s"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 6,
|
|
"x": 6,
|
|
"y": 0
|
|
},
|
|
"id": 31,
|
|
"options": {
|
|
"displayMode": "basic",
|
|
"minVizHeight": 10,
|
|
"minVizWidth": 0,
|
|
"orientation": "horizontal",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"mean"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"showUnfilled": true,
|
|
"text": {}
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"expr": "sum(rate(gotk_reconcile_duration_seconds_sum{exported_namespace=~\"$namespace\",kind=~\"GitRepository|HelmRepository|Bucket\"}[5m])) by (kind)\n/\nsum(rate(gotk_reconcile_duration_seconds_count{exported_namespace=~\"$namespace\",kind=~\"GitRepository|HelmRepository|Bucket\"}[5m])) by (kind)",
|
|
"interval": "",
|
|
"legendFormat": "{{kind}}",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Avg. source reconciliation",
|
|
"type": "bargauge"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"decimals": 0,
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "semi-dark-blue",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "dark-red",
|
|
"value": 100
|
|
}
|
|
]
|
|
},
|
|
"unit": "short"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 3,
|
|
"x": 12,
|
|
"y": 0
|
|
},
|
|
"id": 24,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"last"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"text": {},
|
|
"textMode": "value"
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"exemplar": true,
|
|
"expr": "count(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"True\",kind=~\"Kustomization|HelmRelease\"})\n-\nsum(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"Deleted\",kind=~\"Kustomization|HelmRelease\"})",
|
|
"interval": "",
|
|
"legendFormat": "",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Applications",
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"decimals": 0,
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "dark-green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "dark-red",
|
|
"value": 1
|
|
}
|
|
]
|
|
},
|
|
"unit": "short"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 3,
|
|
"x": 15,
|
|
"y": 0
|
|
},
|
|
"id": 28,
|
|
"options": {
|
|
"colorMode": "value",
|
|
"graphMode": "area",
|
|
"justifyMode": "auto",
|
|
"orientation": "auto",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"last"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"text": {},
|
|
"textMode": "value"
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"expr": "sum(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"False\",kind=~\"Kustomization|HelmRelease\"})",
|
|
"interval": "",
|
|
"legendFormat": "",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Failing application",
|
|
"type": "stat"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "dark-green",
|
|
"value": null
|
|
},
|
|
{
|
|
"color": "dark-orange",
|
|
"value": 1
|
|
},
|
|
{
|
|
"color": "dark-red",
|
|
"value": 30
|
|
}
|
|
]
|
|
},
|
|
"unit": "s"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 4,
|
|
"w": 6,
|
|
"x": 18,
|
|
"y": 0
|
|
},
|
|
"id": 8,
|
|
"options": {
|
|
"displayMode": "basic",
|
|
"minVizHeight": 10,
|
|
"minVizWidth": 0,
|
|
"orientation": "horizontal",
|
|
"reduceOptions": {
|
|
"calcs": [
|
|
"mean"
|
|
],
|
|
"fields": "",
|
|
"values": false
|
|
},
|
|
"showUnfilled": true,
|
|
"text": {}
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"expr": "sum(rate(gotk_reconcile_duration_seconds_sum{exported_namespace=~\"$namespace\",kind=~\"Kustomization|HelmRelease\"}[5m])) by (kind)\n/\nsum(rate(gotk_reconcile_duration_seconds_count{exported_namespace=~\"$namespace\",kind=~\"Kustomization|HelmRelease\"}[5m])) by (kind)",
|
|
"interval": "",
|
|
"legendFormat": "{{kind}}",
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Avg. app reconciliation",
|
|
"type": "bargauge"
|
|
},
|
|
{
|
|
"collapsed": false,
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"gridPos": {
|
|
"h": 1,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 4
|
|
},
|
|
"id": 15,
|
|
"panels": [],
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Status",
|
|
"type": "row"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"custom": {
|
|
"align": "auto",
|
|
"displayMode": "color-background-solid",
|
|
"filterable": true,
|
|
"inspect": false
|
|
},
|
|
"mappings": [
|
|
{
|
|
"options": {
|
|
"-1": {
|
|
"color": "dark-orange",
|
|
"index": 2,
|
|
"text": "Yes"
|
|
},
|
|
"-2": {
|
|
"color": "dark-green",
|
|
"index": 3,
|
|
"text": "No"
|
|
},
|
|
"0": {
|
|
"color": "dark-green",
|
|
"index": 1,
|
|
"text": "Yes"
|
|
},
|
|
"1": {
|
|
"color": "dark-red",
|
|
"index": 0,
|
|
"text": "No"
|
|
}
|
|
},
|
|
"type": "value"
|
|
}
|
|
],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "transparent",
|
|
"value": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": [
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Status"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "custom.displayMode",
|
|
"value": "color-background"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"gridPos": {
|
|
"h": 9,
|
|
"w": 12,
|
|
"x": 0,
|
|
"y": 5
|
|
},
|
|
"id": 34,
|
|
"options": {
|
|
"footer": {
|
|
"fields": "",
|
|
"reducer": [
|
|
"sum"
|
|
],
|
|
"show": false
|
|
},
|
|
"showHeader": true
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"expr": "label_join(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"False\",kind=~\"GitRepository|HelmRepository|Bucket\"}, \"join_key\", \",\", \"kind\", \"exported_namespace\", \"name\")",
|
|
"format": "table",
|
|
"instant": true,
|
|
"interval": "",
|
|
"legendFormat": "",
|
|
"refId": "A"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"editorMode": "code",
|
|
"expr": "label_join(gotk_suspend_status{exported_namespace=~\"$namespace\",kind=~\"GitRepository|HelmRepository|Bucket\"} - 2, \"join_key\", \",\", \"kind\", \"exported_namespace\", \"name\")",
|
|
"format": "table",
|
|
"hide": false,
|
|
"legendFormat": "__auto",
|
|
"range": true,
|
|
"refId": "B"
|
|
}
|
|
],
|
|
"title": "Source acquisition readiness ",
|
|
"transformations": [
|
|
{
|
|
"id": "seriesToColumns",
|
|
"options": {
|
|
"byField": "join_key"
|
|
}
|
|
},
|
|
{
|
|
"id": "organize",
|
|
"options": {
|
|
"excludeByName": {
|
|
"Time 1": true,
|
|
"Time 2": true,
|
|
"Value #A": false,
|
|
"__name__": true,
|
|
"__name__ 1": true,
|
|
"__name__ 2": true,
|
|
"container 1": true,
|
|
"container 2": true,
|
|
"endpoint 1": true,
|
|
"endpoint 2": true,
|
|
"exported_namespace 2": true,
|
|
"instance 1": true,
|
|
"instance 2": true,
|
|
"job 1": true,
|
|
"job 2": true,
|
|
"join_key": true,
|
|
"kind 2": true,
|
|
"name 2": true,
|
|
"namespace 1": true,
|
|
"namespace 2": true,
|
|
"pod 1": true,
|
|
"pod 2": true,
|
|
"status": true,
|
|
"type": true
|
|
},
|
|
"indexByName": {
|
|
"Time 1": 6,
|
|
"Time 2": 16,
|
|
"Value #A": 4,
|
|
"Value #B": 3,
|
|
"__name__ 1": 7,
|
|
"__name__ 2": 17,
|
|
"container 1": 8,
|
|
"container 2": 18,
|
|
"endpoint 1": 9,
|
|
"endpoint 2": 19,
|
|
"exported_namespace 1": 1,
|
|
"exported_namespace 2": 20,
|
|
"instance 1": 10,
|
|
"instance 2": 21,
|
|
"job 1": 11,
|
|
"job 2": 22,
|
|
"join_key": 5,
|
|
"kind 1": 0,
|
|
"kind 2": 23,
|
|
"name 1": 2,
|
|
"name 2": 24,
|
|
"namespace 1": 12,
|
|
"namespace 2": 25,
|
|
"pod 1": 13,
|
|
"pod 2": 26,
|
|
"status": 14,
|
|
"type": 15
|
|
},
|
|
"renameByName": {
|
|
"Value #A": "Ready",
|
|
"Value #B": "Suspended",
|
|
"exported_namespace 1": "Namespace",
|
|
"kind 1": "Kind",
|
|
"name 1": "Name"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "sortBy",
|
|
"options": {
|
|
"fields": {},
|
|
"sort": [
|
|
{
|
|
"field": "Kind"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "filterByValue",
|
|
"options": {
|
|
"filters": [
|
|
{
|
|
"config": {
|
|
"id": "isNull",
|
|
"options": {}
|
|
},
|
|
"fieldName": "Ready"
|
|
}
|
|
],
|
|
"match": "any",
|
|
"type": "exclude"
|
|
}
|
|
}
|
|
],
|
|
"type": "table"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "thresholds"
|
|
},
|
|
"custom": {
|
|
"align": "auto",
|
|
"displayMode": "color-background-solid",
|
|
"filterable": true,
|
|
"inspect": false
|
|
},
|
|
"mappings": [
|
|
{
|
|
"options": {
|
|
"-1": {
|
|
"color": "dark-orange",
|
|
"index": 2,
|
|
"text": "Yes"
|
|
},
|
|
"-2": {
|
|
"color": "dark-green",
|
|
"index": 3,
|
|
"text": "No"
|
|
},
|
|
"0": {
|
|
"color": "dark-green",
|
|
"index": 1,
|
|
"text": "Yes"
|
|
},
|
|
"1": {
|
|
"color": "dark-red",
|
|
"index": 0,
|
|
"text": "No"
|
|
}
|
|
},
|
|
"type": "value"
|
|
}
|
|
],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "transparent",
|
|
"value": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"overrides": [
|
|
{
|
|
"matcher": {
|
|
"id": "byName",
|
|
"options": "Status"
|
|
},
|
|
"properties": [
|
|
{
|
|
"id": "custom.displayMode",
|
|
"value": "color-background"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"gridPos": {
|
|
"h": 9,
|
|
"w": 12,
|
|
"x": 12,
|
|
"y": 5
|
|
},
|
|
"id": 33,
|
|
"options": {
|
|
"footer": {
|
|
"fields": "",
|
|
"reducer": [
|
|
"sum"
|
|
],
|
|
"show": false
|
|
},
|
|
"showHeader": true
|
|
},
|
|
"pluginVersion": "9.0.5",
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"expr": "label_join(gotk_reconcile_condition{exported_namespace=~\"$namespace\",type=\"Ready\",status=\"False\",kind=~\"Kustomization|HelmRelease\"}, \"join_key\", \",\", \"kind\", \"exported_namespace\", \"name\")",
|
|
"format": "table",
|
|
"instant": true,
|
|
"interval": "",
|
|
"legendFormat": "",
|
|
"refId": "A"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"editorMode": "code",
|
|
"expr": "label_join(gotk_suspend_status{exported_namespace=~\"$namespace\",kind=~\"Kustomization|HelmRelease\"} - 2, \"join_key\", \",\", \"kind\", \"exported_namespace\", \"name\")",
|
|
"format": "table",
|
|
"hide": false,
|
|
"range": true,
|
|
"refId": "B"
|
|
}
|
|
],
|
|
"title": "Application reconciliation readiness ",
|
|
"transformations": [
|
|
{
|
|
"id": "seriesToColumns",
|
|
"options": {
|
|
"byField": "join_key"
|
|
}
|
|
},
|
|
{
|
|
"id": "organize",
|
|
"options": {
|
|
"excludeByName": {
|
|
"Time": true,
|
|
"Time 1": true,
|
|
"Time 2": true,
|
|
"Value": true,
|
|
"__name__": true,
|
|
"container": true,
|
|
"container 1": true,
|
|
"container 2": true,
|
|
"endpoint": true,
|
|
"endpoint 1": true,
|
|
"endpoint 2": true,
|
|
"exported_namespace 2": true,
|
|
"instance": true,
|
|
"instance 1": true,
|
|
"instance 2": true,
|
|
"job": true,
|
|
"job 1": true,
|
|
"job 2": true,
|
|
"join_key": true,
|
|
"kind 2": true,
|
|
"name 2": true,
|
|
"namespace": true,
|
|
"namespace 1": true,
|
|
"namespace 2": true,
|
|
"pod": true,
|
|
"pod 2": true,
|
|
"status": true,
|
|
"type": true
|
|
},
|
|
"indexByName": {
|
|
"Time 1": 6,
|
|
"Time 2": 16,
|
|
"Value #A": 4,
|
|
"Value #B": 3,
|
|
"__name__": 7,
|
|
"container 1": 8,
|
|
"container 2": 17,
|
|
"endpoint 1": 9,
|
|
"endpoint 2": 18,
|
|
"exported_namespace 1": 1,
|
|
"exported_namespace 2": 19,
|
|
"instance 1": 10,
|
|
"instance 2": 20,
|
|
"job 1": 11,
|
|
"job 2": 21,
|
|
"join_key": 5,
|
|
"kind 1": 0,
|
|
"kind 2": 22,
|
|
"name 1": 2,
|
|
"name 2": 23,
|
|
"namespace 1": 12,
|
|
"namespace 2": 24,
|
|
"pod 1": 13,
|
|
"pod 2": 25,
|
|
"status": 14,
|
|
"type": 15
|
|
},
|
|
"renameByName": {
|
|
"Value #A": "Ready",
|
|
"Value #B": "Suspended",
|
|
"exported_namespace 1": "Namespace",
|
|
"kind 1": "Kind",
|
|
"name 1": "Name"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "sortBy",
|
|
"options": {
|
|
"fields": {},
|
|
"sort": [
|
|
{
|
|
"field": "Kind"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "filterByValue",
|
|
"options": {
|
|
"filters": [
|
|
{
|
|
"config": {
|
|
"id": "isNull",
|
|
"options": {}
|
|
},
|
|
"fieldName": "Ready"
|
|
}
|
|
],
|
|
"match": "any",
|
|
"type": "exclude"
|
|
}
|
|
}
|
|
],
|
|
"type": "table"
|
|
},
|
|
{
|
|
"collapsed": false,
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"gridPos": {
|
|
"h": 1,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 14
|
|
},
|
|
"id": 17,
|
|
"panels": [],
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Timing",
|
|
"type": "row"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 10,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "always",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": null
|
|
}
|
|
]
|
|
},
|
|
"unit": "s"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 10,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 15
|
|
},
|
|
"id": 37,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [
|
|
"mean",
|
|
"lastNotNull"
|
|
],
|
|
"displayMode": "table",
|
|
"placement": "right"
|
|
},
|
|
"tooltip": {
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"editorMode": "code",
|
|
"expr": "sum(rate(gotk_reconcile_duration_seconds_sum{exported_namespace=~\"$namespace\",kind=~\"GitRepository|HelmRepository|Bucket\"}[5m])) by (kind, exported_namespace, name)\n/\nsum(rate(gotk_reconcile_duration_seconds_count{exported_namespace=~\"$namespace\",kind=~\"GitRepository|HelmRepository|Bucket\"}[5m])) by (kind, exported_namespace, name)",
|
|
"format": "time_series",
|
|
"legendFormat": "{{kind}}: {{exported_namespace}}/{{name}}",
|
|
"range": true,
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Source reconciliation duration",
|
|
"type": "timeseries"
|
|
},
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"description": "",
|
|
"fieldConfig": {
|
|
"defaults": {
|
|
"color": {
|
|
"mode": "palette-classic"
|
|
},
|
|
"custom": {
|
|
"axisLabel": "",
|
|
"axisPlacement": "auto",
|
|
"barAlignment": 0,
|
|
"drawStyle": "line",
|
|
"fillOpacity": 10,
|
|
"gradientMode": "none",
|
|
"hideFrom": {
|
|
"legend": false,
|
|
"tooltip": false,
|
|
"viz": false
|
|
},
|
|
"lineInterpolation": "linear",
|
|
"lineWidth": 1,
|
|
"pointSize": 5,
|
|
"scaleDistribution": {
|
|
"type": "linear"
|
|
},
|
|
"showPoints": "always",
|
|
"spanNulls": false,
|
|
"stacking": {
|
|
"group": "A",
|
|
"mode": "none"
|
|
},
|
|
"thresholdsStyle": {
|
|
"mode": "off"
|
|
}
|
|
},
|
|
"mappings": [],
|
|
"thresholds": {
|
|
"mode": "absolute",
|
|
"steps": [
|
|
{
|
|
"color": "green",
|
|
"value": null
|
|
}
|
|
]
|
|
},
|
|
"unit": "s"
|
|
},
|
|
"overrides": []
|
|
},
|
|
"gridPos": {
|
|
"h": 10,
|
|
"w": 24,
|
|
"x": 0,
|
|
"y": 25
|
|
},
|
|
"id": 38,
|
|
"options": {
|
|
"legend": {
|
|
"calcs": [
|
|
"mean",
|
|
"lastNotNull"
|
|
],
|
|
"displayMode": "table",
|
|
"placement": "right"
|
|
},
|
|
"tooltip": {
|
|
"mode": "single",
|
|
"sort": "none"
|
|
}
|
|
},
|
|
"targets": [
|
|
{
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "belof8d814dtse"
|
|
},
|
|
"editorMode": "code",
|
|
"expr": "sum(rate(gotk_reconcile_duration_seconds_sum{exported_namespace=~\"$namespace\",kind=~\"Kustomization|HelmRelease\"}[5m])) by (kind, name, exported_namespace)\n/\nsum(rate(gotk_reconcile_duration_seconds_count{exported_namespace=~\"$namespace\",kind=~\"Kustomization|HelmRelease\"}[5m])) by (kind, name, exported_namespace)",
|
|
"format": "time_series",
|
|
"legendFormat": "{{kind}}: {{exported_namespace}}/{{name}}",
|
|
"range": true,
|
|
"refId": "A"
|
|
}
|
|
],
|
|
"title": "Application reconciliation duration",
|
|
"type": "timeseries"
|
|
}
|
|
],
|
|
"refresh": "10s",
|
|
"schemaVersion": 36,
|
|
"style": "light",
|
|
"tags": [
|
|
"flux",
|
|
"flux2",
|
|
"gitops",
|
|
"toolkit",
|
|
"weave",
|
|
"fluxcd"
|
|
],
|
|
"templating": {
|
|
"list": [
|
|
{
|
|
"current": {
|
|
"selected": false,
|
|
"text": "Prometheus",
|
|
"value": "Prometheus"
|
|
},
|
|
"hide": 2,
|
|
"includeAll": false,
|
|
"multi": false,
|
|
"name": "DS_PROMETHEUS",
|
|
"options": [],
|
|
"query": "prometheus",
|
|
"refresh": 1,
|
|
"regex": "",
|
|
"skipUrlSync": false,
|
|
"type": "datasource"
|
|
},
|
|
{
|
|
"allValue": ".*",
|
|
"current": {},
|
|
"datasource": {
|
|
"type": "prometheus",
|
|
"uid": "$DS_PROMETHEUS"
|
|
},
|
|
"definition": "label_values(gotk_reconcile_condition, exported_namespace)",
|
|
"hide": 0,
|
|
"includeAll": true,
|
|
"multi": false,
|
|
"name": "namespace",
|
|
"options": [],
|
|
"query": {
|
|
"query": "label_values(gotk_reconcile_condition, exported_namespace)",
|
|
"refId": "StandardVariableQuery"
|
|
},
|
|
"refresh": 2,
|
|
"regex": "",
|
|
"skipUrlSync": false,
|
|
"sort": 5,
|
|
"tagValuesQuery": "",
|
|
"tagsQuery": "",
|
|
"type": "query",
|
|
"useTags": false
|
|
}
|
|
]
|
|
},
|
|
"time": {
|
|
"from": "now-15m",
|
|
"to": "now"
|
|
},
|
|
"timepicker": {
|
|
"refresh_intervals": [
|
|
"10s",
|
|
"30s",
|
|
"1m",
|
|
"5m",
|
|
"15m",
|
|
"30m",
|
|
"1h",
|
|
"2h",
|
|
"1d"
|
|
]
|
|
},
|
|
"timezone": "",
|
|
"title": "Flux2",
|
|
"uid": "eM7_f4V7z",
|
|
"version": 1,
|
|
"weekStart": ""
|
|
} |