Loading

Set up Azure Storage instrumentation

Package Supported versions
Azure.Storage.Blobs ≥12.8.0 <13.0.0
Azure.Storage.Queues ≥12.6.0 <13.0.0
Azure.Storage.Files.Shares ≥12.6.0 <13.0.0

For the full compatibility matrix including supported installation methods, refer to Azure Storage.

This page assumes the core agent is already set up. If not, see Set up the APM .NET Agent first.

Add the Elastic.Apm.Azure.Storage NuGet package to your project:

dotnet add package Elastic.Apm.Azure.Storage
		

Subscribe to diagnostic events using the appropriate subscriber for your storage service:

  • If the agent is included by referencing the Elastic.Apm.NetCoreAll package, the subscribers will be automatically subscribed with the agent, and no further action is required.

  • If you’re using Azure.Storage.Blobs, subscribe AzureBlobStorageDiagnosticsSubscriber with the agent

    using Elastic.Apm;
    using Elastic.Apm.Azure.Storage;
    
    Agent.Subscribe(new AzureBlobStorageDiagnosticsSubscriber());
    		
  • If you’re using Azure.Storage.Queues, subscribe AzureQueueStorageDiagnosticsSubscriber with the agent

    using Elastic.Apm;
    using Elastic.Apm.Azure.Storage;
    
    Agent.Subscribe(new AzureQueueStorageDiagnosticsSubscriber());
    		
  • If you’re using Azure.Storage.Files.Shares, subscribe AzureFileShareStorageDiagnosticsSubscriber with the agent

    using Elastic.Apm;
    using Elastic.Apm.Azure.Storage;
    
    Agent.Subscribe(new AzureFileShareStorageDiagnosticsSubscriber());
    		

For Azure Queue storage,

  • A new transaction is created when one or more messages are received from a queue
  • A new span is created when there is a current transaction, and when a message is sent to a queue

For Azure Blob storage, a new span is created when there is a current transaction and when a request is made to blob storage.

For Azure File Share storage, a new span is created when there is a current transaction and when a request is made to file storage.