1381 lines
		
	
	
	
		
			36 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
		
		
			
		
	
	
			1381 lines
		
	
	
	
		
			36 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
|  | { | ||
|  |   "annotations": { | ||
|  |     "list": [ | ||
|  |       { | ||
|  |         "builtIn": 1, | ||
|  |         "datasource": "-- Grafana --", | ||
|  |         "enable": true, | ||
|  |         "hide": true, | ||
|  |         "iconColor": "rgba(0, 211, 255, 1)", | ||
|  |         "name": "Annotations & Alerts", | ||
|  |         "type": "dashboard" | ||
|  |       }, | ||
|  |       { | ||
|  |         "datasource": "-- Grafana --", | ||
|  |         "enable": true, | ||
|  |         "hide": true, | ||
|  |         "iconColor": "#73BF69", | ||
|  |         "limit": 100, | ||
|  |         "name": "PromEx service start", | ||
|  |         "showIn": 0, | ||
|  |         "tags": ["prom_ex", "pinchflat", "start"], | ||
|  |         "type": "tags" | ||
|  |       }, | ||
|  |       { | ||
|  |         "datasource": "-- Grafana --", | ||
|  |         "enable": true, | ||
|  |         "hide": true, | ||
|  |         "iconColor": "#FF9830", | ||
|  |         "limit": 100, | ||
|  |         "name": "PromEx service stop", | ||
|  |         "showIn": 0, | ||
|  |         "tags": ["prom_ex", "pinchflat", "stop"], | ||
|  |         "type": "tags" | ||
|  |       } | ||
|  |     ] | ||
|  |   }, | ||
|  |   "description": "All the data that is presented here is captured by the PromEx Phoenix LiveView plugin (https://github.com/akoutmos/prom_ex/blob/master/lib/prom_ex/plugins/phoenix_live_view.ex)", | ||
|  |   "editable": false, | ||
|  |   "gnetId": null, | ||
|  |   "graphTooltip": 1, | ||
|  |   "id": null, | ||
|  |   "links": [ | ||
|  |     { | ||
|  |       "asDropdown": false, | ||
|  |       "icon": "bolt", | ||
|  |       "includeVars": false, | ||
|  |       "keepTime": false, | ||
|  |       "tags": [], | ||
|  |       "targetBlank": true, | ||
|  |       "title": "Sponsor PromEx", | ||
|  |       "tooltip": "", | ||
|  |       "type": "link", | ||
|  |       "url": "https://github.com/sponsors/akoutmos" | ||
|  |     }, | ||
|  |     { | ||
|  |       "asDropdown": false, | ||
|  |       "icon": "doc", | ||
|  |       "includeVars": false, | ||
|  |       "keepTime": false, | ||
|  |       "tags": [], | ||
|  |       "targetBlank": true, | ||
|  |       "title": "PhoenixLiveView Plugin Docs", | ||
|  |       "tooltip": "", | ||
|  |       "type": "link", | ||
|  |       "url": "https://hexdocs.pm/prom_ex/PromEx.Plugins.PhoenixLiveView.html" | ||
|  |     } | ||
|  |   ], | ||
|  |   "panels": [ | ||
|  |     { | ||
|  |       "collapsed": false, | ||
|  |       "datasource": null, | ||
|  |       "gridPos": { | ||
|  |         "h": 1, | ||
|  |         "w": 24, | ||
|  |         "x": 0, | ||
|  |         "y": 0 | ||
|  |       }, | ||
|  |       "id": 19, | ||
|  |       "panels": [], | ||
|  |       "title": "Overview", | ||
|  |       "type": "row" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A percentage of mount callbacks that successfully executed.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 1, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "percentage", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "red", | ||
|  |                 "value": null | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "#EAB839", | ||
|  |                 "value": 80 | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": 95 | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "percentunit" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 0, | ||
|  |         "y": 1 | ||
|  |       }, | ||
|  |       "id": 22, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) / \n(\n  sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) + \n  (sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) or vector(0))\n)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Mount Callback Success Rate (last 24h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The amount of LiveView mounts that have occurred in the last 24 hours.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 0, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "absolute", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": null | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "locale" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 6, | ||
|  |         "y": 1 | ||
|  |       }, | ||
|  |       "id": 23, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "(sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) or vector(0)) + (sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) or vector(0))", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Total LiveView Mounts (Last 24h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A percentage of handle_event callbacks that successfully executed.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 1, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "percentage", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "red", | ||
|  |                 "value": null | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "#EAB839", | ||
|  |                 "value": 80 | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": 95 | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "percentunit" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 12, | ||
|  |         "y": 1 | ||
|  |       }, | ||
|  |       "id": 35, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) / \n(\n  sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) + \n  (sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) or vector(0))\n)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Handle Event Callback Success Rate (last 24h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The amount of LiveView handle_events that have occurred in the last 24 hours.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 0, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "absolute", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": null | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "locale" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 18, | ||
|  |         "y": 1 | ||
|  |       }, | ||
|  |       "id": 33, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "/^Value$/", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "(sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) or vector(0)) + (sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[24h])) or vector(0))", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Total LiveView Handle Events (Last 24h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A percentage of mount callbacks that successfully executed.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 1, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "percentage", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "red", | ||
|  |                 "value": null | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "#EAB839", | ||
|  |                 "value": 80 | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": 95 | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "percentunit" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 0, | ||
|  |         "y": 6 | ||
|  |       }, | ||
|  |       "id": 31, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) / \n(\n  sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) + \n  (sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) or vector(0))\n)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Mount Callback Success Rate (last 1h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The amount of LiveView mounts that have occurred in the last hour.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 0, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "absolute", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": null | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "locale" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 6, | ||
|  |         "y": 6 | ||
|  |       }, | ||
|  |       "id": 32, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "(sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) or vector(0)) + (sum(increase(pinchflat_prom_ex_phoenix_live_view_mount_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) or vector(0))", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Total LiveView Mounts (Last 1h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A percentage of handle event callbacks that successfully executed.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 1, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "percentage", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "red", | ||
|  |                 "value": null | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "#EAB839", | ||
|  |                 "value": 80 | ||
|  |               }, | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": 95 | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "percentunit" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 12, | ||
|  |         "y": 6 | ||
|  |       }, | ||
|  |       "id": 36, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) / \n(\n  sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) + \n  (sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) or vector(0))\n)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Handle Event Callback Success Rate (last 1h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The amount of LiveView handle_events that have occurred in the last hour.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {}, | ||
|  |           "decimals": 0, | ||
|  |           "mappings": [], | ||
|  |           "thresholds": { | ||
|  |             "mode": "absolute", | ||
|  |             "steps": [ | ||
|  |               { | ||
|  |                 "color": "green", | ||
|  |                 "value": null | ||
|  |               } | ||
|  |             ] | ||
|  |           }, | ||
|  |           "unit": "locale" | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 5, | ||
|  |         "w": 6, | ||
|  |         "x": 18, | ||
|  |         "y": 6 | ||
|  |       }, | ||
|  |       "id": 34, | ||
|  |       "options": { | ||
|  |         "colorMode": "value", | ||
|  |         "graphMode": "area", | ||
|  |         "justifyMode": "auto", | ||
|  |         "orientation": "auto", | ||
|  |         "reduceOptions": { | ||
|  |           "calcs": ["lastNotNull"], | ||
|  |           "fields": "/^Value$/", | ||
|  |           "values": false | ||
|  |         }, | ||
|  |         "textMode": "auto" | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "(sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) or vector(0)) + (sum(increase(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[1h])) or vector(0))", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Total LiveView Handle Events (Last 1h)", | ||
|  |       "type": "stat" | ||
|  |     }, | ||
|  |     { | ||
|  |       "collapsed": false, | ||
|  |       "datasource": null, | ||
|  |       "gridPos": { | ||
|  |         "h": 1, | ||
|  |         "w": 24, | ||
|  |         "x": 0, | ||
|  |         "y": 11 | ||
|  |       }, | ||
|  |       "id": 2, | ||
|  |       "panels": [], | ||
|  |       "title": "Mount Callback Details", | ||
|  |       "type": "row" | ||
|  |     }, | ||
|  |     { | ||
|  |       "aliasColors": {}, | ||
|  |       "bars": false, | ||
|  |       "dashLength": 10, | ||
|  |       "dashes": false, | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The average time it took to complete the mount callback function.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "fill": 1, | ||
|  |       "fillGradient": 0, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 0, | ||
|  |         "y": 12 | ||
|  |       }, | ||
|  |       "hiddenSeries": false, | ||
|  |       "id": 11, | ||
|  |       "legend": { | ||
|  |         "alignAsTable": true, | ||
|  |         "avg": false, | ||
|  |         "current": true, | ||
|  |         "hideEmpty": false, | ||
|  |         "hideZero": false, | ||
|  |         "max": true, | ||
|  |         "min": false, | ||
|  |         "rightSide": true, | ||
|  |         "show": true, | ||
|  |         "total": false, | ||
|  |         "values": true | ||
|  |       }, | ||
|  |       "lines": true, | ||
|  |       "linewidth": 1, | ||
|  |       "nullPointMode": "null as zero", | ||
|  |       "percentage": false, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "pointradius": 2, | ||
|  |       "points": false, | ||
|  |       "renderer": "flot", | ||
|  |       "seriesOverrides": [], | ||
|  |       "spaceLength": 10, | ||
|  |       "stack": false, | ||
|  |       "steppedLine": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_sum{job=\"$job\", instance=\"$instance\"}[$interval])) by(action, module) / sum(irate(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[$interval])) by(action, module)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "({{ action }}) {{ module }}", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "thresholds": [], | ||
|  |       "timeFrom": null, | ||
|  |       "timeRegions": [], | ||
|  |       "timeShift": null, | ||
|  |       "title": "Average Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "shared": true, | ||
|  |         "sort": 2, | ||
|  |         "value_type": "individual" | ||
|  |       }, | ||
|  |       "type": "graph", | ||
|  |       "xaxis": { | ||
|  |         "buckets": null, | ||
|  |         "mode": "time", | ||
|  |         "name": null, | ||
|  |         "show": true, | ||
|  |         "values": [] | ||
|  |       }, | ||
|  |       "yaxes": [ | ||
|  |         { | ||
|  |           "format": "ms", | ||
|  |           "label": "", | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": "0", | ||
|  |           "show": true | ||
|  |         }, | ||
|  |         { | ||
|  |           "format": "short", | ||
|  |           "label": null, | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": null, | ||
|  |           "show": false | ||
|  |         } | ||
|  |       ], | ||
|  |       "yaxis": { | ||
|  |         "align": false, | ||
|  |         "alignLevel": null | ||
|  |       } | ||
|  |     }, | ||
|  |     { | ||
|  |       "aliasColors": {}, | ||
|  |       "bars": false, | ||
|  |       "dashLength": 10, | ||
|  |       "dashes": false, | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The average time it took to get through the mount callback function when an error was encountered.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "fill": 1, | ||
|  |       "fillGradient": 0, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 12, | ||
|  |         "y": 12 | ||
|  |       }, | ||
|  |       "hiddenSeries": false, | ||
|  |       "id": 29, | ||
|  |       "legend": { | ||
|  |         "alignAsTable": true, | ||
|  |         "avg": false, | ||
|  |         "current": true, | ||
|  |         "hideEmpty": false, | ||
|  |         "hideZero": false, | ||
|  |         "max": true, | ||
|  |         "min": false, | ||
|  |         "rightSide": true, | ||
|  |         "show": true, | ||
|  |         "total": false, | ||
|  |         "values": true | ||
|  |       }, | ||
|  |       "lines": true, | ||
|  |       "linewidth": 1, | ||
|  |       "nullPointMode": "null as zero", | ||
|  |       "percentage": false, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "pointradius": 2, | ||
|  |       "points": false, | ||
|  |       "renderer": "flot", | ||
|  |       "seriesOverrides": [], | ||
|  |       "spaceLength": 10, | ||
|  |       "stack": false, | ||
|  |       "steppedLine": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_mount_exception_duration_milliseconds_sum{job=\"$job\", instance=\"$instance\"}[$interval])) by(action, module, kind, reason) / sum(irate(pinchflat_prom_ex_phoenix_live_view_mount_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[$interval])) by(action, module, kind, reason)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "({{ action }}) {{ module }} :: ({{kind}} -> {{reason}})", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "thresholds": [], | ||
|  |       "timeFrom": null, | ||
|  |       "timeRegions": [], | ||
|  |       "timeShift": null, | ||
|  |       "title": "Average Exception Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "shared": true, | ||
|  |         "sort": 2, | ||
|  |         "value_type": "individual" | ||
|  |       }, | ||
|  |       "type": "graph", | ||
|  |       "xaxis": { | ||
|  |         "buckets": null, | ||
|  |         "mode": "time", | ||
|  |         "name": null, | ||
|  |         "show": true, | ||
|  |         "values": [] | ||
|  |       }, | ||
|  |       "yaxes": [ | ||
|  |         { | ||
|  |           "format": "ms", | ||
|  |           "label": "", | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": "0", | ||
|  |           "show": true | ||
|  |         }, | ||
|  |         { | ||
|  |           "format": "short", | ||
|  |           "label": null, | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": null, | ||
|  |           "show": false | ||
|  |         } | ||
|  |       ], | ||
|  |       "yaxis": { | ||
|  |         "align": false, | ||
|  |         "alignLevel": null | ||
|  |       } | ||
|  |     }, | ||
|  |     { | ||
|  |       "cards": { | ||
|  |         "cardPadding": null, | ||
|  |         "cardRound": null | ||
|  |       }, | ||
|  |       "color": { | ||
|  |         "cardColor": "#b4ff00", | ||
|  |         "colorScale": "sqrt", | ||
|  |         "colorScheme": "interpolateOranges", | ||
|  |         "exponent": 0.5, | ||
|  |         "mode": "spectrum" | ||
|  |       }, | ||
|  |       "dataFormat": "tsbuckets", | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A heatmap showing the time it took to get through the mount callback.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 0, | ||
|  |         "y": 25 | ||
|  |       }, | ||
|  |       "heatmap": {}, | ||
|  |       "hideZeroBuckets": true, | ||
|  |       "highlightCards": true, | ||
|  |       "id": 6, | ||
|  |       "legend": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "reverseYBuckets": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_mount_duration_milliseconds_bucket{job=\"$job\", instance=\"$instance\"}[$interval])) by (le)", | ||
|  |           "format": "heatmap", | ||
|  |           "hide": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "{{ le }}", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "show": true, | ||
|  |         "showHistogram": true | ||
|  |       }, | ||
|  |       "type": "heatmap", | ||
|  |       "xAxis": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "xBucketNumber": null, | ||
|  |       "xBucketSize": null, | ||
|  |       "yAxis": { | ||
|  |         "decimals": null, | ||
|  |         "format": "ms", | ||
|  |         "logBase": 1, | ||
|  |         "max": null, | ||
|  |         "min": null, | ||
|  |         "show": true, | ||
|  |         "splitFactor": null | ||
|  |       }, | ||
|  |       "yBucketBound": "auto", | ||
|  |       "yBucketNumber": null, | ||
|  |       "yBucketSize": null | ||
|  |     }, | ||
|  |     { | ||
|  |       "cards": { | ||
|  |         "cardPadding": null, | ||
|  |         "cardRound": null | ||
|  |       }, | ||
|  |       "color": { | ||
|  |         "cardColor": "#b4ff00", | ||
|  |         "colorScale": "sqrt", | ||
|  |         "colorScheme": "interpolateOranges", | ||
|  |         "exponent": 0.5, | ||
|  |         "mode": "spectrum" | ||
|  |       }, | ||
|  |       "dataFormat": "tsbuckets", | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A heatmap showing the time it took to get through the mount callback when an exception was encountered.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 12, | ||
|  |         "y": 25 | ||
|  |       }, | ||
|  |       "heatmap": {}, | ||
|  |       "hideZeroBuckets": true, | ||
|  |       "highlightCards": true, | ||
|  |       "id": 30, | ||
|  |       "legend": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "reverseYBuckets": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_mount_exception_duration_milliseconds_bucket{job=\"$job\", instance=\"$instance\"}[$interval])) by (le)", | ||
|  |           "format": "heatmap", | ||
|  |           "hide": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "{{ le }}", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Exception Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "show": true, | ||
|  |         "showHistogram": true | ||
|  |       }, | ||
|  |       "type": "heatmap", | ||
|  |       "xAxis": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "xBucketNumber": null, | ||
|  |       "xBucketSize": null, | ||
|  |       "yAxis": { | ||
|  |         "decimals": null, | ||
|  |         "format": "ms", | ||
|  |         "logBase": 1, | ||
|  |         "max": null, | ||
|  |         "min": null, | ||
|  |         "show": true, | ||
|  |         "splitFactor": null | ||
|  |       }, | ||
|  |       "yBucketBound": "auto", | ||
|  |       "yBucketNumber": null, | ||
|  |       "yBucketSize": null | ||
|  |     }, | ||
|  |     { | ||
|  |       "collapsed": false, | ||
|  |       "datasource": null, | ||
|  |       "gridPos": { | ||
|  |         "h": 1, | ||
|  |         "w": 24, | ||
|  |         "x": 0, | ||
|  |         "y": 38 | ||
|  |       }, | ||
|  |       "id": 38, | ||
|  |       "panels": [], | ||
|  |       "title": "Handle Event Callback Details", | ||
|  |       "type": "row" | ||
|  |     }, | ||
|  |     { | ||
|  |       "aliasColors": {}, | ||
|  |       "bars": false, | ||
|  |       "dashLength": 10, | ||
|  |       "dashes": false, | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The average time it took to complete the handle_event callback function.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "fill": 1, | ||
|  |       "fillGradient": 0, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 0, | ||
|  |         "y": 39 | ||
|  |       }, | ||
|  |       "hiddenSeries": false, | ||
|  |       "id": 39, | ||
|  |       "legend": { | ||
|  |         "alignAsTable": true, | ||
|  |         "avg": false, | ||
|  |         "current": true, | ||
|  |         "hideEmpty": false, | ||
|  |         "hideZero": false, | ||
|  |         "max": true, | ||
|  |         "min": false, | ||
|  |         "rightSide": true, | ||
|  |         "show": true, | ||
|  |         "total": false, | ||
|  |         "values": true | ||
|  |       }, | ||
|  |       "lines": true, | ||
|  |       "linewidth": 1, | ||
|  |       "nullPointMode": "null as zero", | ||
|  |       "percentage": false, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "pointradius": 2, | ||
|  |       "points": false, | ||
|  |       "renderer": "flot", | ||
|  |       "seriesOverrides": [], | ||
|  |       "spaceLength": 10, | ||
|  |       "stack": false, | ||
|  |       "steppedLine": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_sum{job=\"$job\", instance=\"$instance\"}[$interval])) by(action, module, event) / sum(irate(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[$interval])) by(action, module, event)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "({{ action }}) {{ module }} :: {{ event }}", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "thresholds": [], | ||
|  |       "timeFrom": null, | ||
|  |       "timeRegions": [], | ||
|  |       "timeShift": null, | ||
|  |       "title": "Average Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "shared": true, | ||
|  |         "sort": 2, | ||
|  |         "value_type": "individual" | ||
|  |       }, | ||
|  |       "type": "graph", | ||
|  |       "xaxis": { | ||
|  |         "buckets": null, | ||
|  |         "mode": "time", | ||
|  |         "name": null, | ||
|  |         "show": true, | ||
|  |         "values": [] | ||
|  |       }, | ||
|  |       "yaxes": [ | ||
|  |         { | ||
|  |           "format": "ms", | ||
|  |           "label": "", | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": "0", | ||
|  |           "show": true | ||
|  |         }, | ||
|  |         { | ||
|  |           "format": "short", | ||
|  |           "label": null, | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": null, | ||
|  |           "show": false | ||
|  |         } | ||
|  |       ], | ||
|  |       "yaxis": { | ||
|  |         "align": false, | ||
|  |         "alignLevel": null | ||
|  |       } | ||
|  |     }, | ||
|  |     { | ||
|  |       "aliasColors": {}, | ||
|  |       "bars": false, | ||
|  |       "dashLength": 10, | ||
|  |       "dashes": false, | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "The average time it took to get through the handle_event callback function.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "fill": 1, | ||
|  |       "fillGradient": 0, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 12, | ||
|  |         "y": 39 | ||
|  |       }, | ||
|  |       "hiddenSeries": false, | ||
|  |       "id": 40, | ||
|  |       "legend": { | ||
|  |         "alignAsTable": true, | ||
|  |         "avg": false, | ||
|  |         "current": true, | ||
|  |         "hideEmpty": false, | ||
|  |         "hideZero": false, | ||
|  |         "max": true, | ||
|  |         "min": false, | ||
|  |         "rightSide": true, | ||
|  |         "show": true, | ||
|  |         "total": false, | ||
|  |         "values": true | ||
|  |       }, | ||
|  |       "lines": true, | ||
|  |       "linewidth": 1, | ||
|  |       "nullPointMode": "null as zero", | ||
|  |       "percentage": false, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "pointradius": 2, | ||
|  |       "points": false, | ||
|  |       "renderer": "flot", | ||
|  |       "seriesOverrides": [], | ||
|  |       "spaceLength": 10, | ||
|  |       "stack": false, | ||
|  |       "steppedLine": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_handle_event_exception_duration_milliseconds_sum{job=\"$job\", instance=\"$instance\"}[$interval])) by(event, action, module, kind, reason) / sum(irate(pinchflat_prom_ex_phoenix_live_view_handle_event_exception_duration_milliseconds_count{job=\"$job\", instance=\"$instance\"}[$interval])) by(event, action, module, kind, reason)", | ||
|  |           "instant": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "({{ action }}) {{ module }} :: {{event}} ({{kind}} -> {{reason}})", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "thresholds": [], | ||
|  |       "timeFrom": null, | ||
|  |       "timeRegions": [], | ||
|  |       "timeShift": null, | ||
|  |       "title": "Average Exception Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "shared": true, | ||
|  |         "sort": 2, | ||
|  |         "value_type": "individual" | ||
|  |       }, | ||
|  |       "type": "graph", | ||
|  |       "xaxis": { | ||
|  |         "buckets": null, | ||
|  |         "mode": "time", | ||
|  |         "name": null, | ||
|  |         "show": true, | ||
|  |         "values": [] | ||
|  |       }, | ||
|  |       "yaxes": [ | ||
|  |         { | ||
|  |           "format": "ms", | ||
|  |           "label": "", | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": "0", | ||
|  |           "show": true | ||
|  |         }, | ||
|  |         { | ||
|  |           "format": "short", | ||
|  |           "label": null, | ||
|  |           "logBase": 1, | ||
|  |           "max": null, | ||
|  |           "min": null, | ||
|  |           "show": false | ||
|  |         } | ||
|  |       ], | ||
|  |       "yaxis": { | ||
|  |         "align": false, | ||
|  |         "alignLevel": null | ||
|  |       } | ||
|  |     }, | ||
|  |     { | ||
|  |       "cards": { | ||
|  |         "cardPadding": null, | ||
|  |         "cardRound": null | ||
|  |       }, | ||
|  |       "color": { | ||
|  |         "cardColor": "#b4ff00", | ||
|  |         "colorScale": "sqrt", | ||
|  |         "colorScheme": "interpolateOranges", | ||
|  |         "exponent": 0.5, | ||
|  |         "mode": "spectrum" | ||
|  |       }, | ||
|  |       "dataFormat": "tsbuckets", | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A heatmap showing the time it took to get through the mount callback.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 0, | ||
|  |         "y": 52 | ||
|  |       }, | ||
|  |       "heatmap": {}, | ||
|  |       "hideZeroBuckets": true, | ||
|  |       "highlightCards": true, | ||
|  |       "id": 41, | ||
|  |       "legend": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "reverseYBuckets": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_handle_event_duration_milliseconds_bucket{job=\"$job\", instance=\"$instance\"}[$interval])) by (le)", | ||
|  |           "format": "heatmap", | ||
|  |           "hide": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "{{ le }}", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "show": true, | ||
|  |         "showHistogram": true | ||
|  |       }, | ||
|  |       "type": "heatmap", | ||
|  |       "xAxis": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "xBucketNumber": null, | ||
|  |       "xBucketSize": null, | ||
|  |       "yAxis": { | ||
|  |         "decimals": null, | ||
|  |         "format": "ms", | ||
|  |         "logBase": 1, | ||
|  |         "max": null, | ||
|  |         "min": null, | ||
|  |         "show": true, | ||
|  |         "splitFactor": null | ||
|  |       }, | ||
|  |       "yBucketBound": "auto", | ||
|  |       "yBucketNumber": null, | ||
|  |       "yBucketSize": null | ||
|  |     }, | ||
|  |     { | ||
|  |       "cards": { | ||
|  |         "cardPadding": null, | ||
|  |         "cardRound": null | ||
|  |       }, | ||
|  |       "color": { | ||
|  |         "cardColor": "#b4ff00", | ||
|  |         "colorScale": "sqrt", | ||
|  |         "colorScheme": "interpolateOranges", | ||
|  |         "exponent": 0.5, | ||
|  |         "mode": "spectrum" | ||
|  |       }, | ||
|  |       "dataFormat": "tsbuckets", | ||
|  |       "datasource": "prometheus", | ||
|  |       "description": "A heatmap showing the time it took to get through the handle_event callback when an exception was encountered.", | ||
|  |       "fieldConfig": { | ||
|  |         "defaults": { | ||
|  |           "custom": {} | ||
|  |         }, | ||
|  |         "overrides": [] | ||
|  |       }, | ||
|  |       "gridPos": { | ||
|  |         "h": 13, | ||
|  |         "w": 12, | ||
|  |         "x": 12, | ||
|  |         "y": 52 | ||
|  |       }, | ||
|  |       "heatmap": {}, | ||
|  |       "hideZeroBuckets": true, | ||
|  |       "highlightCards": true, | ||
|  |       "id": 42, | ||
|  |       "legend": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "pluginVersion": "7.1.3", | ||
|  |       "reverseYBuckets": false, | ||
|  |       "targets": [ | ||
|  |         { | ||
|  |           "expr": "sum(irate(pinchflat_prom_ex_phoenix_live_view_handle_event_exception_duration_milliseconds_bucket{job=\"$job\", instance=\"$instance\"}[$interval])) by (le)", | ||
|  |           "format": "heatmap", | ||
|  |           "hide": false, | ||
|  |           "interval": "", | ||
|  |           "legendFormat": "{{ le }}", | ||
|  |           "refId": "A" | ||
|  |         } | ||
|  |       ], | ||
|  |       "timeFrom": null, | ||
|  |       "timeShift": null, | ||
|  |       "title": "Exception Execution Time", | ||
|  |       "tooltip": { | ||
|  |         "show": true, | ||
|  |         "showHistogram": true | ||
|  |       }, | ||
|  |       "type": "heatmap", | ||
|  |       "xAxis": { | ||
|  |         "show": true | ||
|  |       }, | ||
|  |       "xBucketNumber": null, | ||
|  |       "xBucketSize": null, | ||
|  |       "yAxis": { | ||
|  |         "decimals": null, | ||
|  |         "format": "ms", | ||
|  |         "logBase": 1, | ||
|  |         "max": null, | ||
|  |         "min": null, | ||
|  |         "show": true, | ||
|  |         "splitFactor": null | ||
|  |       }, | ||
|  |       "yBucketBound": "auto", | ||
|  |       "yBucketNumber": null, | ||
|  |       "yBucketSize": null | ||
|  |     } | ||
|  |   ], | ||
|  |   "refresh": "5s", | ||
|  |   "schemaVersion": 26, | ||
|  |   "style": "dark", | ||
|  |   "tags": ["PromEx", "Phoenix LiveView", "pinchflat"], | ||
|  |   "templating": { | ||
|  |     "list": [ | ||
|  |       { | ||
|  |         "allValue": null, | ||
|  |         "datasource": "prometheus", | ||
|  |         "definition": "label_values(pinchflat_prom_ex_prom_ex_status_info, job)", | ||
|  |         "hide": 0, | ||
|  |         "includeAll": false, | ||
|  |         "label": "Prometheus Job", | ||
|  |         "multi": false, | ||
|  |         "name": "job", | ||
|  |         "options": [], | ||
|  |         "query": "label_values(pinchflat_prom_ex_prom_ex_status_info, job)", | ||
|  |         "refresh": 2, | ||
|  |         "regex": "", | ||
|  |         "skipUrlSync": false, | ||
|  |         "sort": 6, | ||
|  |         "tagValuesQuery": "", | ||
|  |         "tags": [], | ||
|  |         "tagsQuery": "", | ||
|  |         "type": "query", | ||
|  |         "useTags": false | ||
|  |       }, | ||
|  |       { | ||
|  |         "allValue": null, | ||
|  |         "datasource": "prometheus", | ||
|  |         "definition": "label_values(pinchflat_prom_ex_prom_ex_status_info, instance)", | ||
|  |         "hide": 0, | ||
|  |         "includeAll": false, | ||
|  |         "label": "Application Instance", | ||
|  |         "multi": false, | ||
|  |         "name": "instance", | ||
|  |         "options": [], | ||
|  |         "query": "label_values(pinchflat_prom_ex_prom_ex_status_info{job=\"$job\"}, instance)", | ||
|  |         "refresh": 2, | ||
|  |         "regex": "", | ||
|  |         "skipUrlSync": false, | ||
|  |         "sort": 0, | ||
|  |         "tagValuesQuery": "", | ||
|  |         "tags": [], | ||
|  |         "tagsQuery": "", | ||
|  |         "type": "query", | ||
|  |         "useTags": false | ||
|  |       }, | ||
|  |       { | ||
|  |         "auto": false, | ||
|  |         "auto_count": 30, | ||
|  |         "auto_min": "10s", | ||
|  |         "current": { | ||
|  |           "selected": false, | ||
|  |           "text": "30s", | ||
|  |           "value": "30s" | ||
|  |         }, | ||
|  |         "hide": 0, | ||
|  |         "label": "Interval", | ||
|  |         "name": "interval", | ||
|  |         "options": [ | ||
|  |           { | ||
|  |             "selected": false, | ||
|  |             "text": "15s", | ||
|  |             "value": "15s" | ||
|  |           }, | ||
|  |           { | ||
|  |             "selected": true, | ||
|  |             "text": "30s", | ||
|  |             "value": "30s" | ||
|  |           }, | ||
|  |           { | ||
|  |             "selected": false, | ||
|  |             "text": "1m", | ||
|  |             "value": "1m" | ||
|  |           }, | ||
|  |           { | ||
|  |             "selected": false, | ||
|  |             "text": "5m", | ||
|  |             "value": "5m" | ||
|  |           }, | ||
|  |           { | ||
|  |             "selected": false, | ||
|  |             "text": "15m", | ||
|  |             "value": "15m" | ||
|  |           }, | ||
|  |           { | ||
|  |             "selected": false, | ||
|  |             "text": "30m", | ||
|  |             "value": "30m" | ||
|  |           }, | ||
|  |           { | ||
|  |             "selected": false, | ||
|  |             "text": "1h", | ||
|  |             "value": "1h" | ||
|  |           } | ||
|  |         ], | ||
|  |         "query": "15s, 30s, 1m, 5m, 15m, 30m, 1h", | ||
|  |         "queryValue": "", | ||
|  |         "refresh": 2, | ||
|  |         "skipUrlSync": false, | ||
|  |         "type": "interval" | ||
|  |       } | ||
|  |     ] | ||
|  |   }, | ||
|  |   "time": { | ||
|  |     "from": "now-1h", | ||
|  |     "to": "now" | ||
|  |   }, | ||
|  |   "timepicker": { | ||
|  |     "refresh_intervals": ["5s", "10s", "30s", "1m", "5m"] | ||
|  |   }, | ||
|  |   "timezone": "", | ||
|  |   "title": "Pinchflat - PromEx PhoenixLiveView Dashboard", | ||
|  |   "uid": "57C5565313BA3CBE98CC2A2F8C18248F", | ||
|  |   "version": 1 | ||
|  | } |