Dashboard App Release Monitoring
This dashboard shows us the health of our latest App release. It is tied to a specific version and some widgets compare the latest release with the previous one.
Most important widgets
- Crash Rate over the last 60 days (includes 2 App releases)
- Crash Rate per 1000 sessions
- Annoyed User Rate
– This shows us the percentage of all users for which the app crashed at least once
- Non Crash Free Users
– Line chart which shows us the annoyed user rate over time
- Adoption Rate
– Line chart which shows us when and how much users have update their App to the latest version
- User Affected crashes
– This widget is really important for us as it sorts the crashes based on how much users are affected. This helps us in deciding which bugs we need to fix in combination with the crashes sorted by occurrence.
Dashboard Details
Required Products: APM
Level of Effort: Low
This dashboard will work on the standard New Relic data models and does not require any custom attributes or events.
Chart Details
Crash Rate
Line Chart
SELECT percentage(uniqueCount(sessionId), WHERE category = 'Crash') as `Crash rate` FROM MobileSession, MobileCrash WHERE (appName = 'android-runtastic-lite' OR appName = 'android-runtastic-pro' AND appVersion NOT LIKE '%debug') FACET appName TIMESERIES SINCE 60 days AGO LIMIT 1000
Show the crash rate over the last 60 days
Crash Rate Lite
Billboard
SELECT (count(crashException) / uniqueCount(sessionId))*1000 as 'per 1000 sessions' FROM Mobile WHERE appName = 'android-runtastic-lite' AND appVersion = '8.10' AND crashLocationClass NOT LIKE 'android.app.UiAutomation' SINCE 1 week ago COMPARE WITH 1 week ago
Crash rate per 1000 sessions
Annoyed User Rate
Pie Chart
SELECT uniqueCount(rt_uidt) AS 'UNIQUE USERS' FROM Mobile WHERE appName = 'android-runtastic-lite' AND appVersion = '8.10' AND (category='Crash' or category='Session') SINCE 1 week ago FACET category
Show the percentage of users which had at least one crash for a specific app version over the last week
Non Crash Free Users
Line Chart
SELECT (filter(uniqueCount(uuid), WHERE category='Crash') / uniqueCount(uuid)) * 100 as `Crash-free users` FROM MobileSession, MobileCrash WHERE (appName = 'android-runtastic-lite' OR appName = 'android-runtastic-pro') FACET appName TIMESERIES SINCE 60 days AGO
Show the time series for users which had at least one crash over the last 60 days
App Sessions
Billboard
SELECT uniqueCount(sessionId) FROM Mobile WHERE appName = 'android-runtastic-lite' AND appVersion = '8.10' SINCE 1 week ago COMPARE WITH 1 week ago
Show the unique app sessions for a specific app version over the last week
Adoption Rate
Line Chart
SELECT uniqueCount(uuid) FROM MobileSession WHERE appName = 'android-runtastic-lite' OR appName = 'android-runtastic-pro' FACET appVersion SINCE 2 month ago TIMESERIES 1 day LIMIT 3
Show the amount of unique users which are using a specific version of the app over the last 60 days
User Affected Crashes
Pie Chart
SELECT (filter(uniqueCount(rt_uidt), WHERE category='Crash')) as `Users affected` FROM MobileSession, MobileCrash WHERE (appVersion = '8.10' AND appName='android-runtastic-lite') FACET crashLocation SINCE 1 week AGO LIMIT 5
_Show the crashes for a specific version of the app ordered by how much unique users are affected _
Dashboard Definition
{
"dashboard": {
"id": 751657,
"title": "Android Runtastic Insights 8.10",
"description": null,
"icon": "bar-chart",
"created_at": "2018-10-17T10:10:29Z",
"updated_at": "2018-11-13T09:55:36Z",
"visibility": "all",
"editable": "editable_by_all",
"ui_url": "https://insights.newrelic.com/accounts/38723/dashboards/751657",
"api_url": "https://api.newrelic.com/v2/dashboards/751657",
"owner_email": "thomas.richtsfeld@runtastic.com",
"metadata": {
"version": 1
},
"widgets": [
{
"visualization": "faceted_line_chart",
"layout": {
"width": 1,
"height": 1,
"row": 1,
"column": 1
},
"widget_id": 7110611,
"account_id": 38723,
"data": [
{
"nrql": "SELECT (filter(uniqueCount(uuid), WHERE category='Crash') / uniqueCount(uuid)) * 100 as `Crash-free users` FROM MobileSession, MobileCrash WHERE (appName = 'android-runtastic-lite' OR appName = 'android-runtastic-pro') FACET appName TIMESERIES SINCE 2 weeks AGO"
}
],
"presentation": {
"title": "Non Crash free users",
"notes": null
}
},
{
"visualization": "billboard_comparison",
"layout": {
"width": 1,
"height": 1,
"row": 1,
"column": 2
},
"widget_id": 7109480,
"account_id": 38723,
"data": [
{
"nrql": "SELECT (count(crashException) / uniqueCount(sessionId))*1000 as 'per 1000 sessions' FROM Mobile WHERE appName = 'android-runtastic-lite' AND appVersion = '8.10' AND crashLocationClass NOT LIKE 'android.app.UiAutomation' SINCE 1 week ago COMPARE WITH 1 week ago"
}
],
"presentation": {
"title": "Crash Rate Lite",
"notes": "Without RN crash"
}
},
{
"visualization": "billboard_comparison",
"layout": {
"width": 1,
"height": 1,
"row": 1,
"column": 3
},
"widget_id": 7109483,
"account_id": 38723,
"data": [
{
"nrql": "SELECT (count(crashException) / uniqueCount(sessionId))*1000 as 'per 1000 sessions' FROM Mobile WHERE appName = 'android-runtastic-pro' AND appVersion = '8.10' AND crashLocationClass NOT LIKE 'android.app.UiAutomation' AND crashFingerprint NOT LIKE '561574351be24c03916cb089f74fc825-38723-188441194' SINCE 1 week ago COMPARE WITH 1 week ago"
}
],
"presentation": {
"title": "Crash Rate Pro",
"notes": null
}
},
{
"visualization": "faceted_line_chart",
"layout": {
"width": 1,
"height": 1,
"row": 2,
"column": 1
},
"widget_id": 7365468,
"account_id": 38723,
"data": [
{
"nrql": "SELECT uniqueCount(uuid) FROM MobileSession WHERE appName = 'android-runtastic-lite' OR appName = 'android-runtastic-pro' FACET appVersion SINCE 1 month ago TIMESERIES 1 day LIMIT 3"
}
],
"presentation": {
"title": "Adoption Rate",
"notes": null
}
},
{
"visualization": "facet_pie_chart",
"layout": {
"width": 1,
"height": 1,
"row": 2,
"column": 2
},
"widget_id": 7110182,
"account_id": 38723,
"data": [
{
"nrql": "SELECT (filter(uniqueCount(rt_uidt), WHERE category='Crash')) as `Users affected` FROM MobileSession, MobileCrash WHERE (appVersion = '8.10' AND appName='android-runtastic-lite') FACET crashLocation SINCE 1 week AGO LIMIT 5"
}
],
"presentation": {
"title": "User Affected Crashes Lite",
"notes": null,
"drilldown_dashboard_id": null
}
},
{
"visualization": "facet_pie_chart",
"layout": {
"width": 1,
"height": 1,
"row": 2,
"column": 3
},
"widget_id": 7110241,
"account_id": 38723,
"data": [
{
"nrql": "SELECT (filter(uniqueCount(rt_uidt), WHERE category='Crash')) as `Users affected` FROM MobileSession, MobileCrash WHERE (appVersion = '8.10' AND appName='android-runtastic-pro') FACET crashLocation SINCE 1 week AGO LIMIT 5"
}
],
"presentation": {
"title": "User Affected Crashes Pro",
"notes": null,
"drilldown_dashboard_id": null
}
},
{
"visualization": "facet_bar_chart",
"layout": {
"width": 1,
"height": 1,
"row": 3,
"column": 1
},
"widget_id": 7365465,
"account_id": 38723,
"data": [
{
"nrql": "SELECT average(rt_startup_time_to_ui) as milliseconds from performance WHERE appName LIKE 'android-runtastic-%' AND (appVersion = '8.10' OR appVersion = '8.9.2' OR appVersion = '8.8') FACET appVersion"
}
],
"presentation": {
"title": "Avg. Time to UI",
"notes": null,
"drilldown_dashboard_id": null
}
},
{
"visualization": "facet_pie_chart",
"layout": {
"width": 1,
"height": 1,
"row": 3,
"column": 2
},
"widget_id": 7109486,
"account_id": 38723,
"data": [
{
"nrql": "SELECT count(*) FROM MobileCrash WHERE (appName='android-runtastic-lite') WHERE appVersion = '8.10' AND crashFingerprint NOT IN( ) AND crashLocationClass NOT LIKE 'android.app.UiAutomation' FACET `crashLocation` SINCE 1 Week ago LIMIT 5"
}
],
"presentation": {
"title": "Top 5 Crashes Lite",
"notes": null,
"drilldown_dashboard_id": 751657
}
},
{
"visualization": "facet_pie_chart",
"layout": {
"width": 1,
"height": 1,
"row": 3,
"column": 3
},
"widget_id": 7109487,
"account_id": 38723,
"data": [
{
"nrql": "SELECT count(*) FROM MobileCrash WHERE (appName='android-runtastic-pro') WHERE appVersion = '8.10' AND crashLocationClass NOT LIKE 'android.app.UiAutomation' FACET `crashLocation` SINCE 1 Week ago LIMIT 5"
}
],
"presentation": {
"title": "Top 5 Crashes Pro",
"notes": null,
"drilldown_dashboard_id": null
}
},
{
"visualization": "facet_bar_chart",
"layout": {
"width": 1,
"height": 1,
"row": 4,
"column": 1
},
"widget_id": 7365466,
"account_id": 38723,
"data": [
{
"nrql": "SELECT average(rt_startup_operation_execution_time) as milliseconds from performance WHERE appName LIKE 'android-runtastic-%' AND (appVersion = '8.10' OR appVersion = '8.9.2' OR appVersion = '8.8') FACET appVersion"
}
],
"presentation": {
"title": "Avg. AppStartHandler duration",
"notes": null,
"drilldown_dashboard_id": null
}
},
{
"visualization": "facet_pie_chart",
"layout": {
"width": 1,
"height": 1,
"row": 4,
"column": 2
},
"widget_id": 7109482,
"account_id": 38723,
"data": [
{
"nrql": "SELECT uniqueCount(rt_uidt) AS 'UNIQUE USERS' FROM Mobile WHERE appName = 'android-runtastic-lite' AND appVersion = '8.10' AND (category='Crash' or category='Session') SINCE 1 week ago FACET category"
}
],
"presentation": {
"title": "Annoyed User Rate Lite",
"notes": null,
"drilldown_dashboard_id": null
}
},
{
"visualization": "facet_pie_chart",
"layout": {
"width": 1,
"height": 1,
"row": 4,
"column": 3
},
"widget_id": 7109485,
"account_id": 38723,
"data": [
{
"nrql": "SELECT uniqueCount(rt_uidt) as `unique users` FROM Mobile WHERE appName = 'android-runtastic-pro' AND appVersion = '8.10' AND (category='Crash' or category='Session') SINCE 1 week ago FACET category"
}
],
"presentation": {
"title": "Annoyed User Rate Pro",
"notes": null,
"drilldown_dashboard_id": null
}
},
{
"visualization": "faceted_line_chart",
"layout": {
"width": 1,
"height": 1,
"row": 5,
"column": 1
},
"widget_id": 7110709,
"account_id": 38723,
"data": [
{
"nrql": "SELECT percentage(uniqueCount(sessionId), WHERE category = 'Crash') as `Crash rate` FROM MobileSession, MobileCrash WHERE (appName = 'android-runtastic-lite' OR appName = 'android-runtastic-pro' AND appVersion NOT LIKE '%debug') FACET appName TIMESERIES SINCE 60 days AGO LIMIT 1000"
}
],
"presentation": {
"title": "Crash rate",
"notes": null
}
}
],
"filter": {
"event_types": [
"MobileCrash"
],
"attributes": [
"appBuild",
"crashLocation"
]
}
}
}
Vote for this Dashboard!