{ "__inputs": [ { "name": "VAR_RATE", "type": "constant", "label": "rate", "value": "1h", "description": "" } ], "__elements": {}, "__requires": [ { "type": "grafana", "id": "grafana", "name": "Grafana", "version": "11.1.0" }, { "type": "datasource", "id": "prometheus", "name": "Prometheus", "version": "1.0.0" }, { "type": "panel", "id": "stat", "name": "Stat", "version": "" }, { "type": "panel", "id": "timeseries", "name": "Time series", "version": "" } ], "annotations": { "list": [ { "builtIn": 1, "datasource": { "type": "grafana", "uid": "-- Grafana --" }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "type": "dashboard" } ] }, "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 0, "id": null, "links": [], "panels": [ { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 0 }, "id": 13, "panels": [], "title": "Load", "type": "row" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Load times between the moment the app is initialized and the moment the target screen (Home, Channel or Thread) is shown in the screen.\n\nEach point in the graph shows the percentile of the events during the last hour.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "auto", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 1 }, "id": 2, "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "maxHeight": 600, "mode": "single", "sort": "none" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_load_bucket{}[$rate])))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_load_bucket{platform=\"android\"}[$rate])))", "fullMetaSearch": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_load_bucket{platform=\"ios\"}[$rate])))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "Load", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Load times between the moment the app is initialized and the moment the target screen (Home, Channel or Thread) is shown in the screen.\n\nThese values represent the percentile of all events since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "#EAB839", "value": 4 }, { "color": "red", "value": 10 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 6, "x": 12, "y": 1 }, "id": 7, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "11.1.0", "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_load_bucket{}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_load_bucket{platform=\"android\"}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_load_bucket{platform=\"ios\"}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "Load lifetime percentiles", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Load times between the moment the app is initialized and the moment the target screen (Home, Channel or Thread) is shown in the screen.\n\nThis graph represents all events generated since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "auto", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 9 }, "id": 10, "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "maxHeight": 600, "mode": "single", "sort": "none" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_load_count{})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_load_count{platform=\"android\"})", "fullMetaSearch": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_load_count{platform=\"ios\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "# Events load", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Load times between the moment the app is initialized and the moment the target screen (Home, Channel or Thread) is shown in the screen.\n\nThese numbers represent the number of events since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 6, "x": 12, "y": 9 }, "id": 4, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "11.1.0", "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "builder", "expr": "sum(mattermost_mobileapp_mobile_load_count{})", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "builder", "expr": "sum(mattermost_mobileapp_mobile_load_count{platform=\"android\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "builder", "expr": "sum(mattermost_mobileapp_mobile_load_count{platform=\"ios\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "# Events Load", "type": "stat" }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 17 }, "id": 14, "panels": [], "title": "Channel Switch", "type": "row" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Channel switch represents the time between the user clicks on a channel name, and the app shows the latest post in that channel.\n\nEach point in the graph shows the percentile of the events during the last hour.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "auto", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 18 }, "id": 1, "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "maxHeight": 600, "mode": "single", "sort": "none" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_channel_switch_bucket{}[$rate])))", "fullMetaSearch": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_channel_switch_bucket{platform=\"android\"}[$rate])))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_channel_switch_bucket{platform=\"ios\"}[$rate])))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "Channel Switch", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Channel switch represents the time between the user clicks on a channel name, and the app shows the latest post in that channel.\n\nThese values represent the percentile of all events since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "#EAB839", "value": 0.7 }, { "color": "red", "value": 1.5 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 6, "x": 12, "y": 18 }, "id": 8, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "11.1.0", "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_channel_switch_bucket{}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_channel_switch_bucket{platform=\"android\"}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_channel_switch_bucket{platform=\"ios\"}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "Channel switch lifetime percentiles", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Channel switch represents the time between the user clicks on a channel name, and the app shows the latest post in that channel.\n\nThis graph represents all events generated since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "auto", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green" }, { "color": "red", "value": 80 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 26 }, "id": 11, "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "maxHeight": 600, "mode": "single", "sort": "none" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_channel_switch_count{})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_channel_switch_count{platform=\"android\"})", "fullMetaSearch": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_channel_switch_count{platform=\"ios\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "# Events Channel Switch", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Channel switch represents the time between the user clicks on a channel name, and the app shows the latest post in that channel.\n\nThese numbers represent the number of events since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green" } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 6, "x": 12, "y": 26 }, "id": 16, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "11.1.0", "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_channel_switch_count{})", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_channel_switch_count{platform=\"android\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_channel_switch_count{platform=\"ios\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "# Events Channel Switch", "type": "stat" }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 34 }, "id": 15, "panels": [], "title": "Team switch", "type": "row" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Team switch represents the time between the user taps on a team, and the full category screen changes to the one of the new team.\n\nEach point in the graph shows the percentile of the events during the last hour.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "auto", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green" }, { "color": "red", "value": 80 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 35 }, "id": 3, "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "maxHeight": 600, "mode": "single", "sort": "none" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_team_switch_bucket{}[$rate])))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_team_switch_bucket{platform=\"android\"}[$rate])))", "fullMetaSearch": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (rate(mattermost_mobileapp_mobile_team_switch_bucket{platform=\"ios\"}[$rate])))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "Mobile Team switch", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Team switch represents the time between the user taps on a team, and the full category screen changes to the one of the new team.\n\nThese values represent the percentile of all events since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green" }, { "color": "#EAB839", "value": 0.5 }, { "color": "red", "value": 1 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 6, "x": 12, "y": 35 }, "id": 9, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "11.1.0", "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_team_switch_bucket{}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_team_switch_bucket{platform=\"android\"}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "histogram_quantile($percentile, sum by(le) (mattermost_mobileapp_mobile_team_switch_bucket{platform=\"ios\"}))", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "Team Switch lifetime percentiles", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Team switch represents the time between the user taps on a team, and the full category screen changes to the one of the new team.\n\nThis graph represents all events generated since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisBorderShow": false, "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 0, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "insertNulls": false, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "auto", "spanNulls": false, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green" }, { "color": "red", "value": 80 } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 43 }, "id": 12, "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "maxHeight": 600, "mode": "single", "sort": "none" } }, "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_team_switch_count{})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_team_switch_count{platform=\"android\"})", "fullMetaSearch": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_team_switch_count{platform=\"ios\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": false, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "# Events Team Switch", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "description": "Team switch represents the time between the user taps on a team, and the full category screen changes to the one of the new team.\n\nThese numbers represent the number of events since the last metrics restart.", "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green" } ] } }, "overrides": [ { "matcher": { "id": "byFrameRefID", "options": "Total" }, "properties": [ { "id": "displayName", "value": "All" } ] }, { "matcher": { "id": "byFrameRefID", "options": "Android" }, "properties": [ { "id": "displayName", "value": "Android" } ] }, { "matcher": { "id": "byFrameRefID", "options": "iOS" }, "properties": [ { "id": "displayName", "value": "iOS" } ] } ] }, "gridPos": { "h": 8, "w": 6, "x": 12, "y": 43 }, "id": 17, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "horizontal", "percentChangeColorMode": "standard", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showPercentChange": false, "textMode": "auto", "wideLayout": true }, "pluginVersion": "11.1.0", "targets": [ { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_team_switch_count{})", "fullMetaSearch": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Total", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_team_switch_count{platform=\"android\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "Android", "useBackend": false }, { "datasource": { "type": "prometheus", "uid": "Prometheus" }, "disableTextWrap": false, "editorMode": "code", "expr": "sum(mattermost_mobileapp_mobile_team_switch_count{platform=\"ios\"})", "fullMetaSearch": false, "hide": false, "includeNullMetadata": true, "instant": false, "legendFormat": "__auto", "range": true, "refId": "iOS", "useBackend": false } ], "title": "# Events Team Switch", "type": "stat" } ], "refresh": "", "schemaVersion": 39, "tags": [], "templating": { "list": [ { "description": "rate for measurements", "hide": 2, "name": "rate", "query": "${VAR_RATE}", "skipUrlSync": false, "type": "constant", "current": { "value": "${VAR_RATE}", "text": "${VAR_RATE}", "selected": false }, "options": [ { "value": "${VAR_RATE}", "text": "${VAR_RATE}", "selected": false } ] }, { "current": { "selected": false, "text": "0.95", "value": "0.95" }, "hide": 0, "includeAll": false, "multi": false, "name": "percentile", "options": [ { "selected": false, "text": "0.99", "value": "0.99" }, { "selected": true, "text": "0.95", "value": "0.95" }, { "selected": false, "text": "0.90", "value": "0.90" }, { "selected": false, "text": "0.75", "value": "0.75" } ], "query": "0.99, 0.95, 0.90, 0.75", "queryValue": "", "skipUrlSync": false, "type": "custom" } ] }, "time": { "from": "now-24h", "to": "now" }, "timepicker": {}, "timezone": "browser", "title": "Mobile Performance Metrics", "uid": "ddp4txrlmyg3kc", "version": 26, "weekStart": "" }