{ "uid": "atlas-jobs", "title": "Atlas Jobs", "folderUid": "atlas-internal", "editable": true, "panels": [ { "id": 1, "type": "stat", "title": "Schedule Metrics Exported", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 0, "y": 0 }, "targets": [ { "expr": "count(ariadne_schedule_last_success_timestamp_seconds{task=~\"^schedule\\..+$\"}) or on() vector(0)", "refId": "A", "instant": true } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "red", "value": null }, { "color": "green", "value": 1 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" } }, { "id": 2, "type": "stat", "title": "Schedule Tasks Stale (>36h)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 4, "y": 0 }, "targets": [ { "expr": "sum(((time() - ariadne_schedule_last_success_timestamp_seconds{task=~\"^schedule\\..+$\"}) > bool 129600)) or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 1 }, { "color": "orange", "value": 2 }, { "color": "red", "value": 3 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" } }, { "id": 3, "type": "stat", "title": "Schedule Tasks Missing Success", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 8, "y": 0 }, "targets": [ { "expr": "count((ariadne_schedule_next_run_timestamp_seconds{task=~\"^schedule\\..+$\"} unless on(task) ariadne_schedule_last_success_timestamp_seconds{task=~\"^schedule\\..+$\"})) or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 1 }, { "color": "orange", "value": 2 }, { "color": "red", "value": 3 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" } }, { "id": 4, "type": "stat", "title": "Schedule Tasks Failed Last Run", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 12, "y": 0 }, "targets": [ { "expr": "sum(((1 - ariadne_schedule_last_status{task=~\"^schedule\\..+$\"}) > bool 0)) or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 1 }, { "color": "orange", "value": 2 }, { "color": "red", "value": 3 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" } }, { "id": 5, "type": "stat", "title": "Glue Jobs Stale (>36h)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 16, "y": 0 }, "targets": [ { "expr": "(sum((((time() - (kube_cronjob_status_last_successful_time and on(namespace,cronjob) kube_cronjob_labels{label_atlas_bstein_dev_glue=\"true\"})) > bool 129600) unless on(namespace,cronjob) (kube_cronjob_spec_suspend and on(namespace,cronjob) kube_cronjob_labels{label_atlas_bstein_dev_glue=\"true\"}) == 1)) + count(((kube_cronjob_labels{label_atlas_bstein_dev_glue=\"true\"} unless on(namespace,cronjob) kube_cronjob_status_last_successful_time) unless on(namespace,cronjob) (kube_cronjob_spec_suspend and on(namespace,cronjob) kube_cronjob_labels{label_atlas_bstein_dev_glue=\"true\"}) == 1))) or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 1 }, { "color": "orange", "value": 2 }, { "color": "red", "value": 3 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" } }, { "id": 6, "type": "stat", "title": "Jenkins Workspace PV Backlog", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 20, "y": 0 }, "targets": [ { "expr": "sum((kube_persistentvolume_status_phase{phase=~\"Released|Failed\"} > bool 0) * on(persistentvolume) group_left(claim_namespace,name) kube_persistentvolume_claim_ref{claim_namespace=\"jenkins\",name=~\"pvc-workspace-.*\"}) or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 1 }, { "color": "orange", "value": 10 }, { "color": "red", "value": 25 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" } }, { "id": 7, "type": "table", "title": "Ariadne Schedules: Last Success (h, newest first)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 4 }, "targets": [ { "expr": "((time() - max_over_time(ariadne_schedule_last_success_timestamp_seconds{task=~\"^schedule\\..+$\"}[$__range])) / 3600) or on(task) (0 * ariadne_schedule_next_run_timestamp_seconds{task=~\"^schedule\\..+$\"} + 999)", "refId": "A", "instant": true } ], "fieldConfig": { "defaults": { "unit": "h", "custom": { "filterable": true } }, "overrides": [] }, "options": { "showHeader": true, "columnFilters": false }, "transformations": [ { "id": "labelsToFields", "options": {} }, { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "asc" } } ], "description": "Primary schedule inventory ordered by recency so fresh jobs stay at the top." }, { "id": 8, "type": "bargauge", "title": "Ariadne Schedule Last Error (hours ago)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 8, "w": 12, "x": 12, "y": 4 }, "targets": [ { "expr": "sort(((time() - max_over_time(ariadne_schedule_last_error_timestamp_seconds{task=~\"^schedule\\..+$\"}[$__range])) / 3600) or on(task) (0 * ariadne_schedule_next_run_timestamp_seconds{task=~\"^schedule\\..+$\"} + 999))", "refId": "A", "legendFormat": "{{task}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "h", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "red", "value": null }, { "color": "orange", "value": 1 }, { "color": "yellow", "value": 6 }, { "color": "green", "value": 24 } ] }, "decimals": 2 }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "asc" } } ] }, { "id": 9, "type": "bargauge", "title": "Ariadne Schedule Last Status", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 8, "w": 8, "x": 0, "y": 12 }, "targets": [ { "expr": "sort((ariadne_schedule_last_status{task=~\"^schedule\\..+$\"}) or on(task) (0 * ariadne_schedule_next_run_timestamp_seconds{task=~\"^schedule\\..+$\"} - 1))", "refId": "A", "legendFormat": "{{task}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "none", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "red", "value": null }, { "color": "yellow", "value": 0.5 }, { "color": "green", "value": 1 } ] }, "decimals": 0, "mappings": [ { "type": "value", "options": { "-1": { "text": "pending" }, "0": { "text": "error" }, "1": { "text": "ok" } } } ] }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "asc" } } ], "description": "1 means the last run was ok. 0 means the last run ended in error." }, { "id": 10, "type": "bargauge", "title": "Ariadne Schedule Runs (range)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 8, "w": 8, "x": 8, "y": 12 }, "targets": [ { "expr": "sort_desc((sum by (task) (increase(ariadne_task_runs_total{task=~\"^schedule\\..+$\"}[$__range]))) or on(task) (0 * ariadne_schedule_next_run_timestamp_seconds{task=~\"^schedule\\..+$\"}))", "refId": "A", "legendFormat": "{{task}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "none", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "desc" } } ], "description": "Number of runs by schedule task over the selected dashboard time range." }, { "id": 11, "type": "bargauge", "title": "Ariadne Schedule Errors (range)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 8, "w": 8, "x": 16, "y": 12 }, "targets": [ { "expr": "sort_desc((sum by (task) (increase(ariadne_task_runs_total{status=\"error\",task=~\"^schedule\\..+$\"}[$__range]))) or on(task) (0 * ariadne_schedule_next_run_timestamp_seconds{task=~\"^schedule\\..+$\"}))", "refId": "A", "legendFormat": "{{task}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "none", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 1 }, { "color": "orange", "value": 3 }, { "color": "red", "value": 5 } ] } }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "desc" } } ], "description": "Error run count by schedule task over the selected dashboard time range." }, { "id": 12, "type": "timeseries", "title": "Ariadne Attempts / Failures", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 7, "w": 12, "x": 0, "y": 20 }, "targets": [ { "expr": "sum(increase(ariadne_task_runs_total[$__interval]))", "refId": "A", "legendFormat": "Attempts" }, { "expr": "sum(increase(ariadne_task_runs_total{status=\"error\"}[$__interval]))", "refId": "B", "legendFormat": "Failures" } ], "fieldConfig": { "defaults": { "unit": "none" }, "overrides": [ { "matcher": { "id": "byName", "options": "Attempts" }, "properties": [ { "id": "color", "value": { "mode": "fixed", "fixedColor": "green" } } ] }, { "matcher": { "id": "byName", "options": "Failures" }, "properties": [ { "id": "color", "value": { "mode": "fixed", "fixedColor": "red" } } ] } ] }, "options": { "legend": { "displayMode": "table", "placement": "right" }, "tooltip": { "mode": "multi" } } }, { "id": 13, "type": "bargauge", "title": "One-off Job Pods (age hours)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 7, "w": 12, "x": 12, "y": 20 }, "targets": [ { "expr": "sort_desc(((time() - kube_pod_start_time{pod!=\"\"}) / 3600) * on(namespace,pod) group_left(owner_name) (kube_pod_owner{owner_kind=\"Job\"} unless on(namespace, owner_name) label_replace(kube_job_owner{owner_kind=\"CronJob\"}, \"owner_name\", \"$1\", \"job_name\", \"(.*)\")) * on(namespace,pod) group_left(phase) max by (namespace,pod,phase) (kube_pod_status_phase{phase=~\"Running|Succeeded\"}))", "refId": "A", "legendFormat": "{{namespace}}/{{pod}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "h", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 6 }, { "color": "orange", "value": 24 }, { "color": "red", "value": 48 } ] }, "decimals": 2 }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "desc" } }, { "id": "limit", "options": { "limit": 12 } } ] }, { "id": 14, "type": "bargauge", "title": "Glue Jobs Last Success (hours ago)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 6, "w": 12, "x": 0, "y": 27 }, "targets": [ { "expr": "sort_desc((time() - max_over_time((kube_cronjob_status_last_successful_time and on(namespace,cronjob) kube_cronjob_labels{label_atlas_bstein_dev_glue=\"true\"})[$__range])) / 3600)", "refId": "A", "legendFormat": "{{namespace}}/{{cronjob}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "h", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 6 }, { "color": "orange", "value": 24 }, { "color": "red", "value": 48 } ] }, "decimals": 2 }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "desc" } } ] }, { "id": 15, "type": "bargauge", "title": "Glue Jobs Last Schedule (hours ago)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 6, "w": 12, "x": 12, "y": 27 }, "targets": [ { "expr": "sort_desc((time() - max_over_time((kube_cronjob_status_last_schedule_time and on(namespace,cronjob) kube_cronjob_labels{label_atlas_bstein_dev_glue=\"true\"})[$__range])) / 3600)", "refId": "A", "legendFormat": "{{namespace}}/{{cronjob}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "h", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 6 }, { "color": "orange", "value": 24 }, { "color": "red", "value": 48 } ] }, "decimals": 2 }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "desc" } } ] }, { "id": 16, "type": "stat", "title": "Jenkins Cleanup Signal Present", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 0, "y": 33 }, "targets": [ { "expr": "count(ariadne_jenkins_workspace_cleanup_last_run_timestamp_seconds) or on() vector(0)", "refId": "A", "legendFormat": "Signal", "instant": true } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "red", "value": null }, { "color": "green", "value": 1 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "name_and_value", "orientation": "vertical", "wideLayout": true } }, { "id": 17, "type": "stat", "title": "Jenkins Cleanup Last Run Age (h)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 4, "y": 33 }, "targets": [ { "expr": "((time() - ariadne_jenkins_workspace_cleanup_last_run_timestamp_seconds) / 3600) or on() vector(999)", "refId": "A", "legendFormat": "Last Run", "instant": true } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 6 }, { "color": "orange", "value": 24 }, { "color": "red", "value": 48 } ] }, "unit": "h", "custom": { "displayMode": "auto" }, "decimals": 2 }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "name_and_value", "orientation": "vertical", "wideLayout": true } }, { "id": 18, "type": "stat", "title": "Jenkins Cleanup Last Success Age (h)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 8, "y": 33 }, "targets": [ { "expr": "((time() - ariadne_jenkins_workspace_cleanup_last_success_timestamp_seconds) / 3600) or on() vector(999)", "refId": "A", "legendFormat": "Last Success", "instant": true } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 6 }, { "color": "orange", "value": 24 }, { "color": "red", "value": 48 } ] }, "unit": "h", "custom": { "displayMode": "auto" }, "decimals": 2 }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "name_and_value", "orientation": "vertical", "wideLayout": true } }, { "id": 19, "type": "stat", "title": "Jenkins Cleanup Planned (last run)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 12, "y": 33 }, "targets": [ { "expr": "ariadne_jenkins_workspace_cleanup_last_planned_total or on() vector(0)", "refId": "A", "legendFormat": "Planned", "instant": true } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "rgba(115, 115, 115, 1)", "value": null }, { "color": "green", "value": 1 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "name_and_value", "orientation": "vertical", "wideLayout": true } }, { "id": 20, "type": "stat", "title": "Jenkins Cleanup Deleted (last run)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 16, "y": 33 }, "targets": [ { "expr": "ariadne_jenkins_workspace_cleanup_last_deleted_total or on() vector(0)", "refId": "A", "legendFormat": "Deleted", "instant": true } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "rgba(115, 115, 115, 1)", "value": null }, { "color": "green", "value": 1 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "name_and_value", "orientation": "vertical", "wideLayout": true } }, { "id": 21, "type": "stat", "title": "Ariadne Access Requests", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 4, "w": 4, "x": 20, "y": 33 }, "targets": [ { "expr": "ariadne_access_requests_total", "refId": "A", "instant": true } ], "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "rgba(115, 115, 115, 1)", "value": null }, { "color": "green", "value": 1 } ] }, "unit": "none", "custom": { "displayMode": "auto" } }, "overrides": [] }, "options": { "colorMode": "value", "graphMode": "area", "justifyMode": "center", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" } }, { "id": 22, "type": "timeseries", "title": "Jenkins Cleanup Runs (range)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 7, "w": 12, "x": 0, "y": 37 }, "targets": [ { "refId": "A", "expr": "sum by (mode, status) (increase(ariadne_jenkins_workspace_cleanup_runs_total[$__range]))", "legendFormat": "{{mode}}/{{status}}" } ], "fieldConfig": { "defaults": { "unit": "none" }, "overrides": [] }, "options": { "legend": { "displayMode": "table", "placement": "right" }, "tooltip": { "mode": "multi" } } }, { "id": 23, "type": "timeseries", "title": "Jenkins Cleanup Objects (range)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 7, "w": 12, "x": 12, "y": 37 }, "targets": [ { "refId": "A", "expr": "sum by (kind, action, mode) (increase(ariadne_jenkins_workspace_cleanup_objects_total[$__range]))", "legendFormat": "{{kind}}/{{action}}/{{mode}}" } ], "fieldConfig": { "defaults": { "unit": "none" }, "overrides": [] }, "options": { "legend": { "displayMode": "table", "placement": "right" }, "tooltip": { "mode": "multi" } } }, { "id": 24, "type": "stat", "title": "Jenkins Build Weather (last run h, newest first)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 8, "w": 24, "x": 0, "y": 44 }, "targets": [ { "refId": "A", "expr": "((time() - ariadne_jenkins_build_weather_job_last_run_timestamp_seconds) / 3600) and on(exported_job,job_url,weather_icon) (ariadne_jenkins_build_weather_job_last_status == 1)", "legendFormat": "{{weather_icon}} {{exported_job}}", "instant": true }, { "refId": "B", "expr": "((time() - ariadne_jenkins_build_weather_job_last_run_timestamp_seconds) / 3600) and on(exported_job,job_url,weather_icon) (ariadne_jenkins_build_weather_job_last_status == 0)", "legendFormat": "{{weather_icon}} {{exported_job}}", "instant": true }, { "refId": "C", "expr": "((time() - ariadne_jenkins_build_weather_job_last_run_timestamp_seconds) / 3600) and on(exported_job,job_url,weather_icon) (ariadne_jenkins_build_weather_job_last_status == 2)", "legendFormat": "{{weather_icon}} {{exported_job}}", "instant": true }, { "refId": "D", "expr": "((time() - ariadne_jenkins_build_weather_job_last_run_timestamp_seconds) / 3600) and on(exported_job,job_url,weather_icon) (ariadne_jenkins_build_weather_job_last_status < 0)", "legendFormat": "{{weather_icon}} {{exported_job}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "h", "decimals": 2, "min": 0, "links": [ { "title": "Open Jenkins job", "url": "${__field.labels.job_url}", "targetBlank": true } ] }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "A" }, "properties": [ { "id": "color", "value": { "mode": "fixed", "fixedColor": "green" } } ] }, { "matcher": { "id": "byFrameRefID", "options": "B" }, "properties": [ { "id": "color", "value": { "mode": "fixed", "fixedColor": "red" } } ] }, { "matcher": { "id": "byFrameRefID", "options": "C" }, "properties": [ { "id": "color", "value": { "mode": "fixed", "fixedColor": "yellow" } } ] }, { "matcher": { "id": "byFrameRefID", "options": "D" }, "properties": [ { "id": "color", "value": { "mode": "fixed", "fixedColor": "gray" } } ] } ] }, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "wideLayout": true, "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "name_value" }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "asc" } }, { "id": "limit", "options": { "limit": 20 } } ], "description": "Jenkins homepage-style list from Ariadne with weather icons and status-colored job names. Click a name to open the Jenkins job page." }, { "id": 27, "type": "bargauge", "title": "Jenkins Workspace PV Age (h, detached only)", "datasource": { "type": "prometheus", "uid": "atlas-vm" }, "gridPos": { "h": 10, "w": 24, "x": 0, "y": 52 }, "targets": [ { "expr": "sort_desc(((time() - kube_persistentvolume_created) / 3600) * on(persistentvolume) group_left(claim_namespace,name) kube_persistentvolume_claim_ref{claim_namespace=\"jenkins\",name=~\"pvc-workspace-.*\"} * on(persistentvolume) group_left() (kube_persistentvolume_status_phase{phase=~\"Released|Failed\"} > bool 0))", "refId": "A", "legendFormat": "{{name}} -> {{persistentvolume}}", "instant": true } ], "fieldConfig": { "defaults": { "unit": "h", "min": 0, "max": null, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 24 }, { "color": "orange", "value": 72 }, { "color": "red", "value": 168 } ] }, "decimals": 1 }, "overrides": [] }, "options": { "displayMode": "gradient", "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "transformations": [ { "id": "sortBy", "options": { "fields": [ "Value" ], "order": "desc" } }, { "id": "limit", "options": { "limit": 40 } } ], "description": "Oldest detached Jenkins workspace volumes first. This is the direct cleanup backlog view." } ], "time": { "from": "now-7d", "to": "now" }, "annotations": { "list": [] }, "schemaVersion": 39, "style": "dark", "tags": [ "atlas", "jobs", "glue" ] }