mq-quiz / infra /core /monitor /applicationinsights-dashboard.bicep
Pamela Fox
Port to core (appservice/vnet/pg changes made)
9595e1d
param name string
param applicationInsightsName string
param location string = resourceGroup().location
param tags object = {}
// 2020-09-01-preview because that is the latest valid version
resource applicationInsightsDashboard 'Microsoft.Portal/dashboards@2020-09-01-preview' = {
name: name
location: location
tags: tags
properties: {
lenses: [
{
order: 0
parts: [
{
position: {
x: 0
y: 0
colSpan: 2
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'id'
value: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
{
name: 'Version'
value: '1.0'
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/AspNetOverviewPinnedPart'
asset: {
idInputName: 'id'
type: 'ApplicationInsights'
}
defaultMenuItemId: 'overview'
}
}
{
position: {
x: 2
y: 0
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ComponentId'
value: {
Name: applicationInsights.name
SubscriptionId: subscription().subscriptionId
ResourceGroup: resourceGroup().name
}
}
{
name: 'Version'
value: '1.0'
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/ProactiveDetectionAsyncPart'
asset: {
idInputName: 'ComponentId'
type: 'ApplicationInsights'
}
defaultMenuItemId: 'ProactiveDetection'
}
}
{
position: {
x: 3
y: 0
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ComponentId'
value: {
Name: applicationInsights.name
SubscriptionId: subscription().subscriptionId
ResourceGroup: resourceGroup().name
}
}
{
name: 'ResourceId'
value: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/QuickPulseButtonSmallPart'
asset: {
idInputName: 'ComponentId'
type: 'ApplicationInsights'
}
}
}
{
position: {
x: 4
y: 0
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ComponentId'
value: {
Name: applicationInsights.name
SubscriptionId: subscription().subscriptionId
ResourceGroup: resourceGroup().name
}
}
{
name: 'TimeContext'
value: {
durationMs: 86400000
endTime: null
createdTime: '2018-05-04T01:20:33.345Z'
isInitialTime: true
grain: 1
useDashboardTimeRange: false
}
}
{
name: 'Version'
value: '1.0'
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/AvailabilityNavButtonPart'
asset: {
idInputName: 'ComponentId'
type: 'ApplicationInsights'
}
}
}
{
position: {
x: 5
y: 0
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ComponentId'
value: {
Name: applicationInsights.name
SubscriptionId: subscription().subscriptionId
ResourceGroup: resourceGroup().name
}
}
{
name: 'TimeContext'
value: {
durationMs: 86400000
endTime: null
createdTime: '2018-05-08T18:47:35.237Z'
isInitialTime: true
grain: 1
useDashboardTimeRange: false
}
}
{
name: 'ConfigurationId'
value: '78ce933e-e864-4b05-a27b-71fd55a6afad'
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/AppMapButtonPart'
asset: {
idInputName: 'ComponentId'
type: 'ApplicationInsights'
}
}
}
{
position: {
x: 0
y: 1
colSpan: 3
rowSpan: 1
}
metadata: {
inputs: []
type: 'Extension/HubsExtension/PartType/MarkdownPart'
settings: {
content: {
settings: {
content: '# Usage'
title: ''
subtitle: ''
}
}
}
}
}
{
position: {
x: 3
y: 1
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ComponentId'
value: {
Name: applicationInsights.name
SubscriptionId: subscription().subscriptionId
ResourceGroup: resourceGroup().name
}
}
{
name: 'TimeContext'
value: {
durationMs: 86400000
endTime: null
createdTime: '2018-05-04T01:22:35.782Z'
isInitialTime: true
grain: 1
useDashboardTimeRange: false
}
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/UsageUsersOverviewPart'
asset: {
idInputName: 'ComponentId'
type: 'ApplicationInsights'
}
}
}
{
position: {
x: 4
y: 1
colSpan: 3
rowSpan: 1
}
metadata: {
inputs: []
type: 'Extension/HubsExtension/PartType/MarkdownPart'
settings: {
content: {
settings: {
content: '# Reliability'
title: ''
subtitle: ''
}
}
}
}
}
{
position: {
x: 7
y: 1
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ResourceId'
value: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
{
name: 'DataModel'
value: {
version: '1.0.0'
timeContext: {
durationMs: 86400000
createdTime: '2018-05-04T23:42:40.072Z'
isInitialTime: false
grain: 1
useDashboardTimeRange: false
}
}
isOptional: true
}
{
name: 'ConfigurationId'
value: '8a02f7bf-ac0f-40e1-afe9-f0e72cfee77f'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/CuratedBladeFailuresPinnedPart'
isAdapter: true
asset: {
idInputName: 'ResourceId'
type: 'ApplicationInsights'
}
defaultMenuItemId: 'failures'
}
}
{
position: {
x: 8
y: 1
colSpan: 3
rowSpan: 1
}
metadata: {
inputs: []
type: 'Extension/HubsExtension/PartType/MarkdownPart'
settings: {
content: {
settings: {
content: '# Responsiveness\r\n'
title: ''
subtitle: ''
}
}
}
}
}
{
position: {
x: 11
y: 1
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ResourceId'
value: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
{
name: 'DataModel'
value: {
version: '1.0.0'
timeContext: {
durationMs: 86400000
createdTime: '2018-05-04T23:43:37.804Z'
isInitialTime: false
grain: 1
useDashboardTimeRange: false
}
}
isOptional: true
}
{
name: 'ConfigurationId'
value: '2a8ede4f-2bee-4b9c-aed9-2db0e8a01865'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/CuratedBladePerformancePinnedPart'
isAdapter: true
asset: {
idInputName: 'ResourceId'
type: 'ApplicationInsights'
}
defaultMenuItemId: 'performance'
}
}
{
position: {
x: 12
y: 1
colSpan: 3
rowSpan: 1
}
metadata: {
inputs: []
type: 'Extension/HubsExtension/PartType/MarkdownPart'
settings: {
content: {
settings: {
content: '# Browser'
title: ''
subtitle: ''
}
}
}
}
}
{
position: {
x: 15
y: 1
colSpan: 1
rowSpan: 1
}
metadata: {
inputs: [
{
name: 'ComponentId'
value: {
Name: applicationInsights.name
SubscriptionId: subscription().subscriptionId
ResourceGroup: resourceGroup().name
}
}
{
name: 'MetricsExplorerJsonDefinitionId'
value: 'BrowserPerformanceTimelineMetrics'
}
{
name: 'TimeContext'
value: {
durationMs: 86400000
createdTime: '2018-05-08T12:16:27.534Z'
isInitialTime: false
grain: 1
useDashboardTimeRange: false
}
}
{
name: 'CurrentFilter'
value: {
eventTypes: [
4
1
3
5
2
6
13
]
typeFacets: {}
isPermissive: false
}
}
{
name: 'id'
value: {
Name: applicationInsights.name
SubscriptionId: subscription().subscriptionId
ResourceGroup: resourceGroup().name
}
}
{
name: 'Version'
value: '1.0'
}
]
#disable-next-line BCP036
type: 'Extension/AppInsightsExtension/PartType/MetricsExplorerBladePinnedPart'
asset: {
idInputName: 'ComponentId'
type: 'ApplicationInsights'
}
defaultMenuItemId: 'browser'
}
}
{
position: {
x: 0
y: 2
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'sessions/count'
aggregationType: 5
namespace: 'microsoft.insights/components/kusto'
metricVisualization: {
displayName: 'Sessions'
color: '#47BDF5'
}
}
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'users/count'
aggregationType: 5
namespace: 'microsoft.insights/components/kusto'
metricVisualization: {
displayName: 'Users'
color: '#7E58FF'
}
}
]
title: 'Unique sessions and users'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
openBladeOnClick: {
openBlade: true
destinationBlade: {
extensionName: 'HubsExtension'
bladeName: 'ResourceMenuBlade'
parameters: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
menuid: 'segmentationUsers'
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 4
y: 2
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'requests/failed'
aggregationType: 7
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Failed requests'
color: '#EC008C'
}
}
]
title: 'Failed requests'
visualization: {
chartType: 3
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
openBladeOnClick: {
openBlade: true
destinationBlade: {
extensionName: 'HubsExtension'
bladeName: 'ResourceMenuBlade'
parameters: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
menuid: 'failures'
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 8
y: 2
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'requests/duration'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Server response time'
color: '#00BCF2'
}
}
]
title: 'Server response time'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
openBladeOnClick: {
openBlade: true
destinationBlade: {
extensionName: 'HubsExtension'
bladeName: 'ResourceMenuBlade'
parameters: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
menuid: 'performance'
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 12
y: 2
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'browserTimings/networkDuration'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Page load network connect time'
color: '#7E58FF'
}
}
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'browserTimings/processingDuration'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Client processing time'
color: '#44F1C8'
}
}
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'browserTimings/sendDuration'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Send request time'
color: '#EB9371'
}
}
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'browserTimings/receiveDuration'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Receiving response time'
color: '#0672F1'
}
}
]
title: 'Average page load time breakdown'
visualization: {
chartType: 3
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 0
y: 5
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'availabilityResults/availabilityPercentage'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Availability'
color: '#47BDF5'
}
}
]
title: 'Average availability'
visualization: {
chartType: 3
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
openBladeOnClick: {
openBlade: true
destinationBlade: {
extensionName: 'HubsExtension'
bladeName: 'ResourceMenuBlade'
parameters: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
menuid: 'availability'
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 4
y: 5
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'exceptions/server'
aggregationType: 7
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Server exceptions'
color: '#47BDF5'
}
}
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'dependencies/failed'
aggregationType: 7
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Dependency failures'
color: '#7E58FF'
}
}
]
title: 'Server exceptions and Dependency failures'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 8
y: 5
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'performanceCounters/processorCpuPercentage'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Processor time'
color: '#47BDF5'
}
}
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'performanceCounters/processCpuPercentage'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Process CPU'
color: '#7E58FF'
}
}
]
title: 'Average processor and process CPU utilization'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 12
y: 5
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'exceptions/browser'
aggregationType: 7
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Browser exceptions'
color: '#47BDF5'
}
}
]
title: 'Browser exceptions'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 0
y: 8
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'availabilityResults/count'
aggregationType: 7
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Availability test results count'
color: '#47BDF5'
}
}
]
title: 'Availability test results count'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 4
y: 8
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'performanceCounters/processIOBytesPerSecond'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Process IO rate'
color: '#47BDF5'
}
}
]
title: 'Average process I/O rate'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
{
position: {
x: 8
y: 8
colSpan: 4
rowSpan: 3
}
metadata: {
inputs: [
{
name: 'options'
value: {
chart: {
metrics: [
{
resourceMetadata: {
id: '/subscriptions/${subscription().subscriptionId}/resourceGroups/${resourceGroup().name}/providers/Microsoft.Insights/components/${applicationInsights.name}'
}
name: 'performanceCounters/memoryAvailableBytes'
aggregationType: 4
namespace: 'microsoft.insights/components'
metricVisualization: {
displayName: 'Available memory'
color: '#47BDF5'
}
}
]
title: 'Average available memory'
visualization: {
chartType: 2
legendVisualization: {
isVisible: true
position: 2
hideSubtitle: false
}
axisVisualization: {
x: {
isVisible: true
axisType: 2
}
y: {
isVisible: true
axisType: 1
}
}
}
}
}
}
{
name: 'sharedTimeRange'
isOptional: true
}
]
#disable-next-line BCP036
type: 'Extension/HubsExtension/PartType/MonitorChartPart'
settings: {}
}
}
]
}
]
}
}
resource applicationInsights 'Microsoft.Insights/components@2020-02-02' existing = {
name: applicationInsightsName
}