AZ-104Chapter 150 of 168Objective 5.1

Azure Dashboards and Shared Dashboards

This chapter covers Azure Dashboards and Shared Dashboards, a key topic under Monitoring (Exam Objective 5.1). Dashboards are a central feature for visualizing Azure resource health, performance, and usage in a customizable, single-pane view. While not a heavy-weight topic on the AZ-104 exam (typically 1-2 questions, about 5% of the monitoring domain), understanding dashboard creation, sharing, and limitations is essential for the 'Monitor and Maintain Azure Resources' section. Expect questions on sharing mechanics, RBAC requirements, and the difference between private and shared dashboards.

25 min read
Intermediate
Updated May 31, 2026

Azure Dashboard as a Custom Control Room

Imagine you are a building manager responsible for monitoring a large office building with multiple floors, each with its own HVAC, lighting, security cameras, and occupancy sensors. The building's central monitoring system (Azure Monitor) collects all raw data, but it is overwhelming to look at every sensor reading at once. To make sense of it, you create a custom control room dashboard (Azure Dashboard) that displays only the most critical information: a floor plan showing occupancy heatmaps, a gauge for overall energy consumption, a chart of temperature trends for the past 24 hours, and a list of recent security alerts. You pin each of these visualizations from the central monitoring system onto a single screen, arranging them exactly how you want. This dashboard is personalized to your role—the security team gets a different dashboard showing camera feeds and access logs. In Azure, a dashboard is a customizable, tile-based layout that aggregates metrics, logs, and other Azure Monitor data from multiple sources. Each tile is a lens into a specific metric or log query, pinned from Metrics Explorer, Log Analytics, or other Azure services. You can resize, rearrange, and configure the refresh interval (default 5 minutes, minimum 1 minute) for each tile. Dashboards can be shared with other users via RBAC, and they are stored as JSON files in a resource group (typically under a hidden resource type 'Microsoft.Portal/dashboards'). Just as you can export your control room layout to another building, Azure dashboards can be exported and imported as JSON templates for reuse across subscriptions. The key is that dashboards are not just static screenshots—they are live views that update automatically, pulling the latest data from Azure Monitor every few minutes.

How It Actually Works

What is an Azure Dashboard?

An Azure Dashboard is a customizable, tile-based layout in the Azure portal that allows you to combine multiple visualizations (charts, metrics, logs, etc.) from different Azure services into a single view. Think of it as a personal or shared 'home page' that presents the most relevant monitoring data at a glance. Dashboards are stored as JSON files within a specific resource group (usually 'dashboards') under the resource type 'Microsoft.Portal/dashboards'. Each dashboard is associated with a subscription and resource group, and its tiles can display data from any resource in that subscription or even from other subscriptions if the user has appropriate permissions.

How Dashboards Work Internally

When you create a dashboard, the Azure portal generates a JSON representation that defines the layout, tile types, and data sources. Each tile is a 'part' that references a specific Azure resource or metric. For example, a 'Metric Chart' tile stores the resource ID, metric name, aggregation (e.g., average, sum), time range, and chart type. The portal periodically refreshes each tile based on a configurable refresh interval (default 5 minutes, minimum 1 minute). The refresh is done client-side: the browser sends requests to Azure Resource Manager (ARM) and Azure Monitor APIs to fetch the latest data. There is no server-side push; the dashboard itself does not trigger alerts or actions—it is purely a visualization tool.

Key Components and Configuration

Tile Types: Common tile types include Metric Chart (line, bar, pie, area), Log Query (from Log Analytics), Markdown (custom text), Clock, Map, and Resource Group/Subscription overview tiles. Each tile has its own configuration options.

Pinning: You can pin any metric chart, log query result, or even a blade (e.g., a specific resource's overview) to a dashboard. Pinning is done from the source service (e.g., Metrics Explorer, Log Analytics) by clicking the 'Pin to dashboard' icon.

Sharing: Dashboards are private by default. To share, you must publish the dashboard, which creates a shared version. Sharing is controlled via Azure RBAC: users need 'Dashboard Reader' role (built-in or custom) to view a shared dashboard, and 'Dashboard Contributor' to modify it. The shared dashboard is still stored in the same resource group, but it becomes visible to others.

Export/Import: Dashboards can be exported as JSON files and imported into another subscription or resource group. This is useful for templating and disaster recovery.

Limitations: A single Azure subscription can have up to 100 dashboards. Each dashboard can have up to 100 tiles. The refresh interval cannot be set below 1 minute. Dashboards cannot trigger alerts or run actions; they are read-only views.

Step-by-Step Configuration

1.

Create a Dashboard: In the Azure portal, navigate to 'Dashboard' from the left menu or by searching. Click 'New Dashboard' and choose a name. Optionally, select a resource group (default is 'dashboards').

2.

Add Tiles: Use the tile gallery to add predefined tiles (e.g., 'All Resources', 'Clock', 'Markdown') or pin from other services. To pin a metric chart, go to Monitor > Metrics, configure the chart, and click 'Pin to dashboard'.

3.

Customize Layout: Drag and drop tiles to arrange them. Resize tiles by dragging the bottom-right corner. Each tile has a gear icon for settings (e.g., time range, refresh interval).

4.

Share the Dashboard: Click the 'Share' button on the dashboard toolbar. This publishes the dashboard and generates a URL. You must also assign RBAC permissions: go to the dashboard's resource group, select the dashboard resource, and add users/groups with 'Dashboard Reader' role. Without RBAC, even with the URL, users cannot see the dashboard.

5.

Manage Permissions: For shared dashboards, use Access Control (IAM) on the dashboard resource itself. Built-in roles: 'Dashboard Reader' (view only), 'Dashboard Contributor' (view and edit). You can also assign custom roles.

Interaction with Related Technologies

Azure Monitor: Dashboards are the primary visualization layer for Azure Monitor data. Metrics and logs queried through Azure Monitor are pinned as tiles.

Azure Workbooks: Workbooks are more advanced than dashboards—they support interactive reports, parameterization, and data from multiple sources. Dashboards are simpler and tile-based.

Azure RBAC: Sharing dashboards relies entirely on RBAC. Without proper permissions, users cannot see shared dashboards, even if they have the URL.

Azure Policy: You can enforce dashboard naming conventions or restrict sharing using Azure Policy (e.g., deny sharing unless approved).

Common Traps on the Exam

Trap: 'Dashboards are automatically shared with all users in the subscription.' Reality: Dashboards are private by default. Sharing requires explicit publication and RBAC assignment.

Trap: 'You can share a dashboard by simply providing the URL.' Reality: The URL alone is insufficient; the user must have the 'Dashboard Reader' role on the dashboard resource.

Trap: 'Dashboards can trigger alerts.' Reality: Dashboards are read-only views. Alerts are configured separately in Azure Monitor.

Trap: 'You can set the refresh interval to 10 seconds.' Reality: Minimum is 1 minute (60 seconds). Default is 5 minutes.

Trap: 'Dashboards are stored in a special system resource group that you cannot see.' Reality: Dashboards are stored in a resource group you specify (default named 'dashboards'). You can see the dashboard resource in that resource group.

Walk-Through

1

Create a New Dashboard

Navigate to the Azure portal home, click 'Dashboard' on the left menu, then click 'New Dashboard' and select 'Blank dashboard' or choose a template. Provide a name for the dashboard and select a resource group. The default resource group is 'dashboards', but you can choose any existing or create a new one. The dashboard resource is created with type 'Microsoft.Portal/dashboards'. This step is the foundation; without a dashboard, no tiles can be added. On the exam, you may be asked where dashboards are stored—remember they are resources in a resource group, not in a hidden system location.

2

Add Tiles from the Tile Gallery

In the dashboard editor, click 'Add tile' to open the tile gallery. You can choose from predefined tiles like 'Clock', 'Markdown', 'All Resources', or 'Metrics Chart'. Each tile has a configuration panel where you set the data source, time range, and visualization options. For example, a 'Metrics Chart' tile requires selecting a resource, metric, aggregation, and time range. Tiles can be resized and moved by drag-and-drop. The gallery provides a quick way to add common visualizations without leaving the dashboard. Note that tiles added from the gallery are static until you configure them.

3

Pin Tiles from Azure Monitor Metrics

Go to Azure Monitor > Metrics (or any resource's Metrics blade). Configure a chart by selecting a resource, metric, aggregation, and time range. Click the 'Pin to dashboard' icon in the toolbar. A dialog appears to select the target dashboard (existing or new). The tile is added with the exact configuration you set. This method is more precise than the gallery because you can fine-tune the metric query. Pinning from Metrics Explorer ensures the tile reflects the exact metric you want. On the exam, know that pinning is available from Metrics, Log Analytics, and resource blades.

4

Customize Tile Settings and Layout

After adding tiles, you can customize each tile's appearance and behavior. Click the gear icon on a tile to open settings: you can change the title, subtitle, time range, refresh interval (1 minute minimum, 5 minutes default), and conditional formatting (e.g., color thresholds). You can also resize tiles by dragging the bottom-right corner and rearrange them by dragging. The dashboard layout is stored in JSON and can be exported. Customization is key for creating an effective dashboard—group related tiles, use consistent time ranges, and set appropriate refresh intervals to avoid stale data.

5

Share the Dashboard with Users

To share a dashboard, click the 'Share' button on the dashboard toolbar. This publishes the dashboard and generates a URL. However, sharing does not automatically grant access—you must assign RBAC permissions. Navigate to the dashboard resource in its resource group, select 'Access control (IAM)', and add users or groups with the 'Dashboard Reader' role (or 'Dashboard Contributor' for edit access). Without RBAC, users who click the URL will see an error. The shared dashboard appears in the recipient's portal under 'Shared dashboards'. On the exam, remember that sharing requires both publishing and RBAC.

6

Manage and Delete Dashboards

Dashboards can be managed like any other Azure resource. You can edit, rename, delete, or export a dashboard. To delete, go to the dashboard resource group, select the dashboard, and click 'Delete'. Be careful: deleting a shared dashboard removes it for all users. You can also download the dashboard as a JSON file for backup or templating. To import, go to the dashboard list, click 'Upload', and select a JSON file. Management tasks are straightforward but important for governance. The exam may test that dashboards are resources in a resource group and can be managed via ARM, CLI, or PowerShell.

What This Looks Like on the Job

In enterprise environments, Azure Dashboards are used to create operational 'war rooms' for monitoring critical applications. For example, a global e-commerce company might have a dashboard displaying real-time metrics for their web tier: CPU usage across all VMs, request latency, error rates, and active user sessions. This dashboard is shared with the DevOps team via a 'Dashboard Reader' role assigned to an Azure AD group. The team uses the dashboard during incident response to quickly identify anomalies. A common misconfiguration is forgetting to assign RBAC after sharing—team members get the URL but cannot see anything, leading to confusion.

Another scenario: a managed service provider (MSP) uses dashboards to monitor multiple customer subscriptions. They create a dashboard per customer, pinning key metrics like VM uptime, database DTU usage, and storage account throughput. They export the dashboard JSON as a template and deploy it to each customer subscription using Azure Blueprints or Terraform. This ensures consistent monitoring across customers. The challenge is that each dashboard can only display data from resources within the same subscription (or cross-subscription if the user has read access). So the MSP must ensure their service principal has Reader role on each customer's resources.

A third use case: compliance dashboards. A financial institution creates a dashboard showing the status of Azure Policy assignments, Azure Security Center recommendations, and recent audit logs. This dashboard is shared with the compliance officer who needs a high-level view. They set the refresh interval to 1 hour to avoid excessive API calls. A pitfall is that dashboards do not support real-time data; the minimum refresh is 1 minute, so time-sensitive alerts should use Azure Monitor Alerts instead. Also, if the dashboard uses Log Analytics queries, those queries can be expensive if not scoped properly (e.g., querying all logs instead of specific tables). Engineers often learn to use time range filters and restrict the query scope to avoid performance issues and cost overruns.

How AZ-104 Actually Tests This

The AZ-104 exam tests Azure Dashboards under Objective 5.1: 'Monitor and Maintain Azure Resources'. Specifically, you should be able to 'create and configure dashboards' and 'share dashboards with other users'. Expect 1-2 questions, often scenario-based, asking about sharing behavior or tile configuration.

Common wrong answers and why: 1. 'Dashboards are automatically shared with all users in the subscription.' This is false because dashboards are private by default. Candidates choose this because they confuse dashboards with other Azure shared features like shared images. 2. 'You can share a dashboard by providing the URL to users.' This is false; RBAC is required. Candidates think the URL alone works because many other Azure services (e.g., shared access signatures) work that way. 3. 'Dashboards can trigger email alerts when a metric crosses a threshold.' False; dashboards are read-only. Candidates confuse dashboards with alert rules. 4. 'You can set the refresh interval to 30 seconds.' False; minimum is 1 minute. Candidates may misremember the default or assume lower values are allowed.

Specific numbers and terms to know: - Default refresh interval: 5 minutes - Minimum refresh interval: 1 minute - Maximum tiles per dashboard: 100 - Maximum dashboards per subscription: 100 - Dashboard resource type: 'Microsoft.Portal/dashboards' - Built-in roles: 'Dashboard Reader', 'Dashboard Contributor' - Sharing requires both publishing and RBAC assignment.

Edge cases: - If a dashboard is shared but the underlying resources are deleted, the dashboard tiles show 'Resource not found' or similar error. The dashboard itself remains but becomes useless. - When exporting a dashboard, the JSON includes resource IDs. If you import into a different subscription, the resource IDs may not exist, causing broken tiles. You must update the JSON manually or use ARM template parameters. - Cross-subscription dashboards: A dashboard can display metrics from resources in different subscriptions as long as the user viewing the dashboard has read access to those resources. However, the dashboard itself is stored in one subscription.

How to eliminate wrong answers: Understand the mechanism: dashboards are stored as ARM resources, and sharing is controlled by RBAC. If an answer mentions automatic sharing, no RBAC needed, or alerting capability, it is wrong. Also, any refresh interval below 1 minute is invalid.

Key Takeaways

Dashboards are private by default; sharing requires publishing and RBAC (Dashboard Reader role).

Minimum refresh interval for dashboard tiles is 1 minute; default is 5 minutes.

Maximum 100 dashboards per subscription and 100 tiles per dashboard.

Dashboards are stored as ARM resources (Microsoft.Portal/dashboards) in a resource group.

Dashboards cannot trigger alerts; they are read-only visualization tools.

Export/import dashboards as JSON for templating across subscriptions.

Cross-subscription dashboards are possible if the viewer has read access to the underlying resources.

Easy to Mix Up

These come up on the exam all the time. Here's how to tell them apart.

Azure Dashboard

Tile-based layout with limited customization per tile.

Simpler to create and share; no scripting required.

Refresh interval per tile (min 1 minute).

No interactivity; static visualizations.

Stored as JSON in a resource group; export/import supported.

Azure Workbook

Rich, interactive reports with parameterization and custom queries.

Supports complex data sources (multiple Log Analytics workspaces, etc.).

Can use refresh intervals or manual refresh.

Allows user input (parameters) to filter data dynamically.

Stored as ARM resources; supports versioning and templates.

Watch Out for These

Mistake

Dashboards are automatically shared with all users in the subscription.

Correct

Dashboards are private by default. They must be explicitly published and RBAC roles assigned (e.g., 'Dashboard Reader') for others to view them.

Mistake

Providing the dashboard URL is enough for others to access it.

Correct

The URL alone does not grant access. Users must have the 'Dashboard Reader' role on the dashboard resource. Without RBAC, they will see an error.

Mistake

Dashboards can trigger alerts or run actions based on metric thresholds.

Correct

Dashboards are read-only visualization tools. They cannot trigger alerts. Alerts are configured separately in Azure Monitor.

Mistake

The refresh interval can be set to any value, including seconds.

Correct

The minimum refresh interval is 1 minute (60 seconds). The default is 5 minutes. Values less than 1 minute are not allowed.

Mistake

Dashboards are stored in a hidden system resource group that users cannot manage.

Correct

Dashboards are stored in a user-specified resource group (default named 'dashboards'). They are visible as resources of type 'Microsoft.Portal/dashboards' and can be managed like any other resource.

Do You Actually Know This?

Reveal each answer, then mark whether you got it right. Score 60%+ to unlock the next chapter.

Frequently Asked Questions

How do I share an Azure Dashboard with other users?

First, publish the dashboard by clicking the 'Share' button in the dashboard toolbar. This generates a URL. Then, assign RBAC permissions: go to the dashboard resource in its resource group, click 'Access control (IAM)', and add users/groups with the 'Dashboard Reader' role. Without RBAC, users cannot see the dashboard even with the URL.

Can I set a custom refresh interval for a dashboard tile?

Yes, you can set the refresh interval per tile in the tile settings. The minimum is 1 minute (60 seconds), and the default is 5 minutes. Values below 1 minute are not allowed.

What is the difference between a private and a shared dashboard?

A private dashboard is visible only to the creator. A shared dashboard is published and assigned RBAC roles so that other users can view (or edit) it. Both are stored in a resource group, but the shared one has an additional publication step and RBAC assignments.

Can I pin metrics from a different subscription to my dashboard?

Yes, as long as you have read access to the resources in the other subscription. The dashboard can display data from any subscription you can access. However, the dashboard resource itself belongs to one subscription.

How do I export a dashboard to use as a template?

Open the dashboard, click 'Export' on the toolbar. This downloads a JSON file. You can then import it into another subscription by going to the dashboard list and clicking 'Upload'. Note that resource IDs in the JSON may need updating if the resources are different.

What happens to a dashboard if the underlying resources are deleted?

The dashboard itself remains but tiles that reference deleted resources will show errors (e.g., 'Resource not found'). The dashboard becomes non-functional for those tiles. You must remove or update those tiles manually.

Can I use Azure Policy to enforce dashboard settings?

Yes, you can create Azure Policy definitions that restrict dashboard creation, enforce naming conventions, or require specific tags. For example, you can deny sharing unless the dashboard has a certain tag.

Terms Worth Knowing

Ready to put this to the test?

You've just covered Azure Dashboards and Shared Dashboards — now see how well it sticks with free AZ-104 practice questions. Full explanations included, no account needed.

Done with this chapter?