Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
357 changes: 357 additions & 0 deletions src/content/docs/cci/azure-cci.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,357 @@
---
title: Cloud Cost Intelligence - Azure
tags:
- cloud cost intelligence
- azure
- azure cost management
- cloud cost optimization
- cci azure
metaDescription: Connect your Azure billing to New Relic Cloud Cost Intelligence to monitor, analyze, and optimize cloud spending across Azure services.
redirect:
- /docs/cci/financial-intelligence/cci-azure
freshnessValidatedDate: 2025-10-15
---

<Callout title="preview">
We're still working on this feature, but we'd love for you to try it out!

This feature is currently provided as part of a preview program pursuant to our [pre-release policies](/docs/licenses/license-information/referenced-policies/new-relic-pre-release-policy).
</Callout>

Connect your Azure billing to Cloud Cost Intelligence for complete cost monitoring and optimization of your Azure infrastructure. Get real-time visibility into spending patterns, resource use, and cost allocation across services and resource groups. With the Cloud Cost Intelligence for Azure, you can:

- **Optimize resource usage** - Find underutilized or costly Azure services and VMs to adjust allocations across subscriptions and resource groups
- **Control expenses** - See specific cost drivers in your Azure environment, including compute, storage, networking, and database services for better financial decisions
- **Enhance efficiency** - Focus on resource management strategies that align with business objectives for efficient use of Azure resources and budget
- **Monitor multi-subscription costs** - Track spending across multiple Azure subscriptions and management groups from one dashboard
- **Enable cost accountability** - Implement department-level cost allocation and chargeback using Azure tags and resource group organization
- **Manage budgets proactively** - Set up alerts for Azure spending thresholds and budget limits to prevent overruns and maintain financial control

## Prerequisites

Before you connect Azure to Cloud Cost Intelligence, make sure you have:
- **Completed Azure billing export configuration** - This is mandatory as the export creates the storage account, container, and directory path needed in the connection process. See the collapsible section below for detailed instructions.
- An **Azure subscription** with an active billing account.
- **Contributor or Owner role** on the subscription you want to monitor.
- **Access to Azure Cost Management** features.
- **Billing reader permissions** for the subscription or management group.

<CollapserGroup>
<Collapser
id="azure-billing-export-setup"
title="Azure billing export configuration"
>
Determine whether a billing export already exists that matches the parameters specified below:
- **If a matching export exists**: Proceed with your setup process using the existing export.
- **If no matching export exists**: Follow the steps below to create a new billing export.

### Access Azure Cost Management

1. Navigate to the **Azure Console > Cost Management & Billing > Billing Scope**.
2. Expand the **Settings** section and click **Exports**.

### Create new export

1. Click **Create**.
2. Select **Cost and Usage (FOCUS)** as the export type.
3. Provide an export prefix for identification purposes.

### Configure export parameters

Configure the export with the following parameters:

<table>
<thead>
<tr>
<th width={200}>Parameter</th>
<th width={200}>Value</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Type of Data</td>
<td>Cost and Usage details (FOCUS) - Preview</td>
<td>Provides detailed cost and usage information in FOCUS format</td>
</tr>
<tr>
<td>Export Name</td>
<td>A descriptive name of your choice</td>
<td>Meaningful identifier for your export</td>
</tr>
<tr>
<td>Dataset Version</td>
<td>1.2-preview (Latest dataset schema files)</td>
<td>Latest schema version available</td>
</tr>
<tr>
<td>Frequency</td>
<td>Daily export of month-to-date costs</td>
<td>Daily exports capture month-to-date cost information</td>
</tr>
<tr>
<td>Export Description</td>
<td>A meaningful description of your choice</td>
<td>Context about the export purpose</td>
</tr>
</tbody>
</table>

### Configure storage settings

After configuring the export parameters, click **Next** to proceed to storage configuration.

Configure the storage settings with the following specifications:

<table>
<thead>
<tr>
<th width={200}>Setting</th>
<th width={200}>Value</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Storage Type</td>
<td>Blob Storage</td>
<td>Azure Blob Storage for cost data</td>
</tr>
<tr>
<td>Destination Storage</td>
<td>Use existing storage account or create a new one</td>
<td>Storage location for billing data</td>
</tr>
<tr>
<td>Container and Directory</td>
<td>Use existing container/directory or create new</td>
<td>Organization structure for billing exports</td>
</tr>
<tr>
<td>Compression Type</td>
<td>Parquet</td>
<td>Provides optimal storage efficiency and query performance</td>
</tr>
<tr>
<td>Data Overwrite</td>
<td>Yes</td>
<td>Allows updates to existing data</td>
</tr>
<tr>
<td>File Partitioning</td>
<td>Yes</td>
<td>Enables efficient data organization and retrieval</td>
</tr>
</tbody>
</table>

<Callout variant="important">
We recommend the storage account to be based in **(US) East US**. This helps save on outbound data transfer costs. The storage type should be **Azure Blob storage**.
</Callout>

### Finalize configuration

1. Review all configured settings.
2. Click **Create** to finalize the billing export configuration.
3. Verify that the export appears in your **Exports** list.

<Callout variant="tip">
- The FOCUS (FinOps Open Cost and Usage Specification) format is currently in preview
- Dataset version 1.2-preview represents the latest schema version available
- Daily exports are capturing month-to-date cost information
- Parquet compression provides optimal storage efficiency and query performance
</Callout>

</Collapser>
</CollapserGroup>

## Connect Azure to Cloud Cost Intelligence

<Steps>
<Step>
### Select your account

Now that you've completed the Azure billing export setup, you're ready to connect your Azure billing to New Relic. Start by choosing your New Relic account.

1. Go to <DNT>[**one.newrelic.com**](https://one.newrelic.com) > **All Capabilities** > **Cloud Cost Intelligence - Azure**</DNT>.
2. Select your account from the dropdown and click **Continue**.
</Step>

<Step>
### Connect your Azure billing account

Now you'll provide the connection details that link your Azure billing data to New Relic. You'll need information from both your Azure billing account and the storage location where your billing exports are saved.

Enter the following Azure billing information:

<table>
<thead>
<tr>
<th width={220}>Field</th>
<th>Description</th>
<th>Location</th>
</tr>
</thead>
<tbody>
<tr>
<td>**Azure Agreement Type**</td>
<td>
Select your agreement type from the dropdown.
</td>
<td>
Navigate to **Azure Console > Cost Management + Billing > Settings > Properties**. For more information, see [Billing accounts and scopes in the Azure portal](https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/view-all-accounts).
</td>
</tr>
<tr>
<td>**Tenant ID**</td>
<td>
Enter the unique identifier for your organization's Microsoft Entra ID instance.
</td>
<td>
Go to **[Microsoft Entra Admin center](https://entra.microsoft.com/#home)**
</td>
</tr>
<tr>
<td>**Billing account ID**</td>
<td>
Enter your Azure billing account ID.
</td>
<td>
Navigate to **Azure Console > Cost Management + Billing > Settings > Properties**. For more information, see [Billing administration](https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/direct-ea-administration#to-view-enrollment-properties).
</td>
</tr>
<tr>
<td>**Azure Storage account name**</td>
<td>
Enter the name of the storage account where your billing export is saved. This is the account you created or selected during the billing export configuration. It is recommended to use a storage account in **(US) East US** to minimize outbound data transfer costs. The storage type should be **Azure Blob storage**.
</td>
<td>
</td>
</tr>
<tr>
<td>**Storage Container Name**</td>
<td>
Enter the container name within your storage account that holds the billing export files.
</td>
<td>
Go to **[Microsoft Azure](https://portal.azure.com/#home) > Subscription > Storage account > Container**
**Note**: You must grant access to the New Relic service principal in the next step for this container.
</td>
</tr>
<tr>
<td>**Directory Path**</td>
<td>
Enter the base path where billing data is stored within the container (for example, `20251001-20251031` for October 2025).
**Note**: If your billing export publishes directly to the root of the container, leave this field empty.
</td>
<td>
</td>
</tr>
</tbody>
</table>

After entering all the required information, click **Continue** to proceed to the next step.
</Step>

<Step>
### Grant New Relic access to your billing data

Now that you've provided your Azure connection details, New Relic needs permission to read the billing data from your storage container. This step authorizes the New Relic service principal (**msazurecostdata**) to access your billing exports securely.

<Callout variant="tip">
Azure administrator approval is required for this step.
</Callout>

- **Initiate the connection request**

1. Click the **Initiate Connection** button in the New Relic interface.
2. You'll be redirected to the Microsoft Authentication flow.
3. Review and accept the authentication request.
4. A small file (0 KB) will download to your system upon acceptance. You can safely delete this file.

- **Verify the service principal was added**

After accepting the authentication request, confirm that the New Relic service principal was successfully added to your Azure environment:

1. Navigate to **Enterprise Applications** in your Microsoft Entra Account.
2. Verify that the service principal **msazurecostdata** appears in the list.

<Callout variant="tip">
For help viewing enterprise applications, see the [Microsoft Entra documentation](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/view-applications-portal).
</Callout>

- **Assign read permissions to the service principal**

The final step grants the service principal permission to read your billing data. You'll assign the **Storage Blob Data Reader** role, which provides read-only access to the billing exports.

**Prerequisites for this step**:
- Access to the storage account where the billing export is published
- Permissions to modify IAM role assignments

**Follow these steps**:

1. **Navigate to Access Control**:
- Open the storage account container where your billing exports are published.
- Select **Access Control (IAM)** from the left navigation menu.

2. **Add role assignment**:
- Navigate to the **Role Assignments** tab.
- Click **Add** or **Add role assignment**.

3. **Select the role**:
- Choose **Storage Blob Data Reader** from the role list.

4. **Assign the service principal**:
- In the **Add Members** section, search for **msazurecostdata** (the service principal you verified in the previous step).
- Select it from the search results.

5. **Complete the assignment**:
- Review the role assignment configuration.
- Click **Review + Assign** to finalize.
- Verify that **msazurecostdata** now appears in the role assignments list.

- **Verify the connection**

After completing all the steps above, confirm that:
- Service principal **msazurecostdata** is visible in Enterprise Applications
- Service principal has the **Storage Blob Data Reader** role assigned
- Role assignment is applied to the correct storage account container
- Connection test completes successfully in the New Relic interface

<Callout variant="tip">
**Security note**: The service principal only has read-only access to your billing data. It cannot write, modify, or delete any data. Access is limited exclusively to the billing export container you specified.
</Callout>

With permissions configured, New Relic can now begin collecting your Azure cost data.
</Step>

<Step>
### Verify data collection

You've successfully connected your Azure billing to Cloud Cost Intelligence! Your Azure cost data will begin flowing into New Relic.

**What happens next**:
- New Relic will start processing your Azure billing exports
- Initial data processing can take up to 12 hours
- Once processing completes, you'll see your cost data in the Cost Overview dashboard

<Callout variant="important">
Processing your data for the first time can take up to 12 hours.
</Callout>

**View your data**:

Once processing is complete, go to [**Cost Overview**](/docs/cci/financial-intelligence/cloud-cost-insights) to view your Azure cost data and start optimizing your cloud spending.
</Step>
</Steps>

## What's next?

Now that your Azure billing is connected, you can take full advantage of Cloud Cost Intelligence features:

- **[View your cost data](/docs/cci/financial-intelligence/cloud-cost-insights)** - Explore detailed cost breakdowns, trends, and insights across your Azure services and resource groups.
- **[Set up cost budgets](/docs/cci/financial-intelligence/cci-budgets)** - Create budgets and alerts to proactively manage spending and prevent cost overruns.
- **[Configure general settings](/docs/cci/configure-cci/general-setting)** - Customize your Cloud Cost Intelligence experience with additional configuration options.

Start by exploring your cost data to identify optimization opportunities and establish baseline spending patterns.

Loading
Loading