Dashboards & Executive Reporting

Visibility for All Stakeholders


Introduction

Different stakeholders need different views into your integration systems. Operations teams need real-time status and troubleshooting views; engineering leads need performance trends; executives need business impact and ROI metrics. A well-designed dashboard strategy provides the right information to the right people at the right time.

This comprehensive guide covers:

  • Dashboard types — Understanding different views
  • Azure dashboards — Azure Portal and Workbooks
  • Power BI — Advanced analytics and reporting
  • Executive reporting — Business-focused metrics
  • Automation — Scheduled reports

Dashboard Types

Stakeholder Views

┌─────────────────────────────────────────────────────────────────────┐
│                  DASHBOARD TYPES BY STAKEHOLDER                     │
├─────────────────────────────────────────────────────────────────────┤
│                                                                     │
│   OPERATIONS (Real-time)                                            │
│   ────────────────────                                              │
│   • Service health status                                           │
│   • Active incidents                                                │
│   • Queue depth and throughput                                      │
│   • Recent errors                                                   │
│   • Use: Azure Portal, Grafana                                      │
│                                                                     │
│   ENGINEERING (Tactical)                                            │
│   ─────────────────────────                                         │
│   • Performance trends                                              │
│   • Error rate analysis                                             │
│   • Capacity utilization                                            │
│   • Deployment frequency                                            │
│   • Use: Azure Workbooks, Power BI                                  │
│                                                                     │
│   EXECUTIVE (Strategic)                                             │
│   ─────────────────────                                             │
│   • Business metrics (transactions processed)                       │
│   • Cost trends                                                     │
│   • SLA compliance                                                  │
│   • ROI and value delivered                                         │
│   • Use: Power BI, scheduled emails                                 │
│                                                                     │
│   SECURITY (Compliance)                                             │
│   ─────────────────────                                             │
│   • Access patterns                                                 │
│   • Security events                                                 │
│   • Compliance status                                               │
│   • Audit findings                                                  │
│                                                                     │
└─────────────────────────────────────────────────────────────────────┘

Azure Workbooks

Operations Dashboard

{
  "workbook": {
    "name": "Integration Operations Dashboard",
    "description": "Real-time operational view",
    "priority": 1,
    "sections": [
      {
        "name": "Service Health",
        "visualization": "Tiles",
        "items": [
          {
            "metric": "Functions",
            "query": "resources | where type == 'microsoft.web/sites' | summarize Healthy = countif(health == 'Healthy') by name"
          },
          {
            "metric": "Service Bus",
            "query": "ServiceBusNamespaceMetrics | summarize by namespace"
          }
        ]
      },
      {
        "name": "Queue Status",
        "visualization": "Chart",
        "type": "Line",
        "query": "ServiceBusMetrics | where TimeGenerated > ago(1h) | render timechart"
      },
      {
        "name": "Recent Errors",
        "visualization": "List",
        "query": "AppTraces | where SeverityLevel == 'Error' | order by TimeGenerated desc | take 10"
      }
    ]
  }
}

Creating Workbooks

# Export workbook template
az monitor workbook template list \
  --resource-group rg-monitoring \
  --category "Azure"

# Create custom workbook
az monitor workbook create \
  --name "integration-ops" \
  --resource-group rg-monitoring \
  --location eastus \
  --display-name "Integration Operations" \
  --template-data @workbook-template.json

Power BI Integration

Power BI Dashboard Design

{
  "powerBIDashboard": {
    "name": "Integration Executive Summary",
    "refreshSchedule": "Daily 6 AM",
    "dataSources": [
      {
        "type": "Log Analytics",
        "workspace": "la-integration-prod",
        "queries": [
          "Daily transaction volume by service",
          "Monthly cost by resource group",
          "SLA compliance trends"
        ]
      },
      {
        "type": "Azure Cost Management",
        "scope": "Production Subscription"
      }
    ],
    "pages": [
      "Executive Summary",
      "Service Performance",
      "Cost Analysis",
      "SLA Compliance",
      "Capacity Planning"
    ]
  }
}

Example Queries for Power BI

// Daily transaction volume
requests
| where timestamp > ago(30d)
| summarize Transactions = count() by bin(timestamp, 1d), Service = appName
| order by timestamp

// SLA compliance by service
requests
| where timestamp > ago(30d)
| summarize 
  Total = count(),
  Failed = countif(success == false),
  P95Latency = percentile(duration, 95)
  by Service = appName
| extend SLA = 100.0 * (Total - Failed) / Total

// Cost by service
AzureResources
| where TimeGenerated > ago(30d)
| summarize Cost = sum(Cost) by Service = tostring(tags["service"])
| order by Cost desc

Executive Reporting

Key Metrics for Executives

┌─────────────────────────────────────────────────────────────────────┐
│                  EXECUTIVE METRICS                                  │
├─────────────────────────────────────────────────────────────────────┤
│                                                                     │
│   BUSINESS IMPACT:                                                  │
│   ✓ Transactions processed (daily/weekly/monthly)                   │
│   ✓ Integration uptime (% of SLA)                                   │
│   ✓ Message processing success rate                                 │
│   ✓ Average end-to-end latency                                      │
│                                                                     │
│   FINANCIAL:                                                        │
│   ✓ Monthly spend vs budget                                         │
│   ✓ Cost per transaction                                            │
│   ✓ Reserved instance coverage                                      │
│   ✓ Month-over-month trend                                          │
│                                                                     │
│   OPERATIONAL:                                                      │
│   ✓ Incidents resolved (count, MTTR)                                │
│   ✓ Deployment frequency                                            │
│   ✓ Technical debt metrics                                          │
│   ✓ Feature velocity                                                │
│                                                                     │
│   GROWTH:                                                           │
│   ✓ Transaction growth trend                                        │
│   ✓ New integrations deployed                                       │
│   ✓ Partner API additions                                           │
│                                                                     │
└─────────────────────────────────────────────────────────────────────┘

Monthly Report Template

{
  "monthlyReport": {
    "period": "January 2024",
    "sections": [
      {
        "title": "Executive Summary",
        "content": "One paragraph overview"
      },
      {
        "title": "Service Performance",
        "metrics": ["Uptime: 99.95%", "Transactions: 2.3M", "Errors: 0.02%"]
      },
      {
        "title": "Cost Summary",
        "metrics": ["Spend: $45,230", "vs Budget: -5%", "per Transaction: $0.019"]
      },
      {
        "title": "Incidents",
        "metrics": ["Total: 3", "Sev1: 0", "Sev2: 1", "MTTR: 45 min"]
      },
      {
        "title": "Looking Forward",
        "items": ["Capacity expansion in February", "New integration launch"]
      }
    ]
  }
}

Best Practices

Implementation Checklist

PracticeDescription
Match audienceDifferent views for different roles
Set refresh appropriatelyReal-time for ops, daily for exec
Limit to key metricsToo many = confusion
Include contextTrends vs point-in-time
Enable drill-downSummary to detail
Schedule reportsAutomated distribution

Dashboard Design Principles

┌─────────────────────────────────────────────────────────────────────┐
│                  DASHBOARD DESIGN PRINCIPLES                        │
├─────────────────────────────────────────────────────────────────────┤
│                                                                     │
│   ✓ Lead with key metrics                                           │
│   ✓ Show trends, not just current state                             │
│   ✓ Include comparison (vs target, vs period)                       │
│   ✓ Provide context (what does green/yellow/red mean)               │
│   ✓ Enable action (click to drill down)                             │
│   ✓ Update appropriately (real-time vs daily)                       │
│                                                                     │
└─────────────────────────────────────────────────────────────────────┘

Related Topics


Azure Integration Hub - Architect Level Observability & Operations at Scale