microsoft / microsoft/finops-toolkit

[External][Cost Management] ContractedCost missing in Cost Management exports

Open
#874 5 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Resolution: External Tool: Cost Management
Dominant language
PowerShell
Stars
603
Forks
248
Avg merge
7d 11h
Merged PRs (30d)
11

Description

🐛 Problem

Microsoft Cost Management does not include ContractedCost or ContractedUnitPrice in all exported cost data. There are 2 bugs with this:

  1. ContractedCost and ContractedUnitPrice should always be specified.
  2. If not available, ContractedCost and ContractedUnitPrice should be null and not 0.

There are currently 2 known reasons why ContractedCost and ContractedUnitPrice will be missing:

  1. Reservation usage charges for MCA accounts.
  2. Reservation usage charges for EA accounts when Cost Management cost allocation is enabled.

If you are using Cost Management cost allocation for an EA account, consider disabling cost allocation rules to work around this.

This is documented in Ingest cost details data as a limitations for UnitPrice column in actual/amortized cost data. This limitation also applies to the ContractedCost and ContractedUnitPrice columns in FOCUS data.

👣 Repro steps

  1. Export FOCUS cost data.
  2. Filter rows where ContractedCost == 0 and EffectiveCost > 0.

🤔 Expected

  • All rows should have an accurate ContractedCost and ContractedUnitPrice values.
  • The only records with a ContractedCost or ContractedUnitPrice of 0 should be free.
  • If a value is not available, they should be null. (However, ContractedCost and ContractedUnitPrice should always be available.)

ℹ️ Additional context

This is a tracking bug only. The FinOps toolkit community is not responsible for this and cannot resolve the issue. Subscribe to this issue to be notified when the issue has been resolved.

[!IMPORTANT]
If you are using Cost Management cost allocation, consider disabling cost allocation rules to work around this.

We are tracking the following workarounds until this issue is resolved:

  • #835
  • #614

Related issues:

  • #834

[!NOTE]
If you are facing this issue, you can file a support request with the Cost Management team to convey the importance of these columns for your needs; however, as a known issue, the support request will likely be closed. The intent of creating a support request is to raise awareness of your needs and increase the priority of the fix.

🙋‍♀️ Ask for the community

We could use your help:

  1. Please vote this issue up (👍) to prioritize it.
  2. Let us know if you see an opportunity to improve the experience from the toolkit.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the Microsoft Cost Management limitation documented in the linked Ingest cost details data documentation, then reproduce the issue by exporting FOCUS cost data and filtering rows where ContractedCost is 0 and EffectiveCost is greater than 0. This repository issue is tracking an external service defect, so done means Microsoft Cost Management supplies accurate values or nulls rather than a repository change.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure
Domain
cloud
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.