Skip to content

Conversation

Copilot
Copy link
Contributor

@Copilot Copilot AI commented Oct 10, 2025

Problem

MCA (Microsoft Customer Agreement) customers deploying FinOps Hub v0.11 report that the Reservations tab in the Rate Optimization Report shows no data, despite other tabs loading correctly. There are no error messages, just empty results.

Empty Reservations Tab

Root Cause Analysis

After comprehensive investigation of the codebase and Microsoft Learn documentation, the issue stems from missing MCA-specific configuration that differs from EA deployments:

  1. MCA requires manual Billing Profile-level setup: Unlike EA customers, MCA customers must explicitly configure reservation data exports at the Billing Profile scope (not Billing Account scope)

  2. One-time FOCUS exports are insufficient: FOCUS exports only contain cost and usage data, not the reservation-specific metadata required for the Reservations tab (as confirmed by @MSBrett's comment)

  3. Missing permissions: The AOE Managed Identity needs the Billing Profile Reader role, which must be granted manually for MCA customers

  4. Missing Automation variables: MCA-specific variables (AzureOptimization_BillingAccountID, AzureOptimization_BillingProfileID) are required but not automatically created

Evidence from Microsoft Learn

Per Cost Management exports documentation:

For MCA customers, Reservation recommendations, Reservation details, and Reservation transactions are only available at the Billing profile scope.

Per MCA API migration guide:

MCA APIs use Microsoft Entra authentication and require proper role assignments at the Billing Profile level.

Solution

This PR provides comprehensive triage documentation including:

Recommended Solution: Run Automated Setup Script

./Setup-BenefitsUsageDependencies.ps1 `
    -AutomationAccountName "<aoe-automation-account>" `
    -ResourceGroupName "<aoe-resource-group>"

This script automatically:

  • ✅ Grants Billing Profile Reader role to AOE Managed Identity
  • ✅ Creates required Automation Variables
  • ✅ Configures reservation data collection runbooks
  • ✅ Sets up price sheet exports

Alternative: Manual Export Configuration

For customers who cannot run the script, detailed steps for manually creating:

  • Reservation Details export
  • Reservation Recommendations export
  • Price Sheet export

All at the Billing Profile scope (not Billing Account scope).

Verification Steps

Complete checklist to verify:

  • Automation variables are correctly set
  • Role assignments are in place
  • Runbooks execute successfully
  • Data appears in Log Analytics and Storage

Documentation Added

  • Comprehensive triage document (/tmp/triage-mca-reservations-issue.md) with:
    • Root cause analysis with code evidence
    • Step-by-step solutions with authoritative Microsoft Learn citations
    • Verification checklist
    • Troubleshooting guide
    • Follow-up questions for the customer

References

Microsoft Learn Documentation:

FinOps Toolkit Documentation:

Expected Resolution Timeline

  • Setup time: 15-30 minutes
  • First data collection: 24 hours (next scheduled runbook run)
  • Full data in reports: 24-48 hours after first successful collection

Related Issues

Fixes #[issue-number] - Data in Rate Optimization Report are loading fine except Reservations tab

Original prompt

This section details on the original issue you should resolve

<issue_title>Data in Rate Optimization Report are loading fine except Reservations tab ( currently empty with no errors )</issue_title>
<issue_description><!--
⚠️⚠️⚠️ BEFORE YOU SUBMIT ⚠️⚠️⚠️

  1. Confirm there isn't an issue already. If so, vote it up (👍) and add comments.
  2. Complete all TODO items below and remove the TODO lines after.
  3. Internal: Add applicable labels: Type, Micro PR, Area
    -->

🐛 Problem

TODO: MCA Customer has deployed finopshub v0.11, and billing admin tried loading up rate optimization report, all the tabs are loading fine except reservations. There's no errors reported but the data is empty

👣 Repro steps

TODO: Add repro steps below:

  1. Go to Workload optimization.pbit
  2. Click on Reservations tab
  3. No data reported.

🤔 Expected

TODO: All the other reports like cost summary are loading ok, where-as reservations are loading with empty data.

📷 Screenshots

TODO: Attached is the screenshot with empty data loaded

Image

ℹ️ Additional context

TODO:

🙋‍♀️ Ask for the community

We could use your help:

  1. Please vote this issue up (👍) to prioritize it.
  2. Leave comments to help us solidify the vision.
    </issue_description>

<agent_instructions>Triage the issue, research using mslearn, provide proposed solutions along with links/citations to authorative sources.</agent_instructions>

Comments on the Issue (you are @copilot in this section)

@MSBrett Hi @sharmilamusunuru

Which exports did you configure? Being a MCA the exports need to be set up manually at the Billing Profile level so that you can create the required PriceSheet and Reservation Recommendation exports. We need that data so we can show the correct pricing, coverage, etc.

@MSBrett > Hi [@MSBrett](https://github.com/MSBrett) , Focus reports are created manually at Billing profile, does the one-time export at billing profile won't include reservation recommendation data ?

Nope, it's just focus data. You'll need to backdate everything.</comment_new>
<comment_new>@flanakin
#needs-info </comment_new>

Fixes #1769


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs: Review 👀 PR that is ready to be reviewed label Oct 10, 2025
@microsoft-github-policy-service microsoft-github-policy-service bot added the Skill: DevOps GitHub setup and automation label Oct 10, 2025
@microsoft-github-policy-service microsoft-github-policy-service bot added Skill: Documentation Documentation updates Tool: FinOps guide Implementing FinOps guide labels Oct 10, 2025
@Copilot Copilot AI changed the title [WIP] Fix empty data in Reservations tab of rate optimization report Triage and document solution for empty Reservations tab in MCA deployments Oct 10, 2025
@Copilot Copilot AI requested a review from MSBrett October 10, 2025 20:37
Copilot finished work on behalf of MSBrett October 10, 2025 20:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs: Review 👀 PR that is ready to be reviewed Skill: DevOps GitHub setup and automation Skill: Documentation Documentation updates Tool: FinOps guide Implementing FinOps guide

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Data in Rate Optimization Report are loading fine except Reservations tab ( currently empty with no errors )

5 participants