Azure Blob Storage monitoring data reference
This article contains all the monitoring reference information for this service.
See Monitor Azure Blob Storage for details on the data you can collect for Azure Blob Storage and how to use it.
Metrics
This section lists all the automatically collected platform metrics for this service. These metrics are also part of the global list of all platform metrics supported in Azure Monitor.
For information on metric retention, see Azure Monitor Metrics overview.
Supported metrics for Microsoft.Storage/storageAccounts
The following table lists the metrics available for the Microsoft.Storage/storageAccounts resource type.
- All columns might not be present in every table.
- Some columns might be beyond the viewing area of the page. Select Expand table to view all available columns.
Table headings
- Category - The metrics group or classification.
- Metric - The metric display name as it appears in the Azure portal.
- Name in REST API - The metric name as referred to in the REST API.
- Unit - Unit of measure.
- Aggregation - The default aggregation type. Valid values: Average (Avg), Minimum (Min), Maximum (Max), Total (Sum), Count.
- Dimensions - Dimensions available for the metric.
- Time Grains - Intervals at which the metric is sampled. For example,
PT1M
indicates that the metric is sampled every minute,PT30M
every 30 minutes,PT1H
every hour, and so on. - DS Export- Whether the metric is exportable to Azure Monitor Logs via diagnostic settings. For information on exporting metrics, see Create diagnostic settings in Azure Monitor.
Category | Metric | Name in REST API | Unit | Aggregation | Dimensions | Time Grains | DS Export |
---|---|---|---|---|---|---|---|
Transaction | Availability The percentage of availability for the storage service or the specified API operation. Availability is calculated by taking the TotalBillableRequests value and dividing it by the number of applicable requests, including those that produced unexpected errors. All unexpected errors result in reduced availability for the storage service or the specified API operation. |
Availability |
Percent | Average, Minimum, Maximum | GeoType , ApiName , Authentication |
PT1M | Yes |
Transaction | Egress The amount of egress data. This number includes egress to external client from Azure Storage as well as egress within Azure. As a result, this number does not reflect billable egress. |
Egress |
Bytes | Total, Average, Minimum, Maximum | GeoType , ApiName , Authentication |
PT1M | Yes |
Transaction | Ingress The amount of ingress data, in bytes. This number includes ingress from an external client into Azure Storage as well as ingress within Azure. |
Ingress |
Bytes | Total, Average, Minimum, Maximum | GeoType , ApiName , Authentication |
PT1M | Yes |
Transaction | Success E2E Latency The average end-to-end latency of successful requests made to a storage service or the specified API operation, in milliseconds. This value includes the required processing time within Azure Storage to read the request, send the response, and receive acknowledgment of the response. |
SuccessE2ELatency |
MilliSeconds | Average, Minimum, Maximum | GeoType , ApiName , Authentication |
PT1M | Yes |
Transaction | Success Server Latency The average time used to process a successful request by Azure Storage. This value does not include the network latency specified in SuccessE2ELatency. |
SuccessServerLatency |
MilliSeconds | Average, Minimum, Maximum | GeoType , ApiName , Authentication |
PT1M | Yes |
Transaction | Transactions The number of requests made to a storage service or the specified API operation. This number includes successful and failed requests, as well as requests which produced errors. Use ResponseType dimension for the number of different type of response. |
Transactions |
Count | Total | ResponseType , GeoType , ApiName , Authentication , TransactionType |
PT1M | Yes |
Capacity | Used capacity The amount of storage used by the storage account. For standard storage accounts, it's the sum of capacity used by blob, table, file, and queue. For premium storage accounts and Blob storage accounts, it is the same as BlobCapacity or FileCapacity. |
UsedCapacity |
Bytes | Average | <none> | PT1H | No |
Supported metrics for Microsoft.Storage/storageAccounts/blobServices
The following table lists the metrics available for the Microsoft.Storage/storageAccounts/blobServices resource type.
- All columns might not be present in every table.
- Some columns might be beyond the viewing area of the page. Select Expand table to view all available columns.
Table headings
- Category - The metrics group or classification.
- Metric - The metric display name as it appears in the Azure portal.
- Name in REST API - The metric name as referred to in the REST API.
- Unit - Unit of measure.
- Aggregation - The default aggregation type. Valid values: Average (Avg), Minimum (Min), Maximum (Max), Total (Sum), Count.
- Dimensions - Dimensions available for the metric.
- Time Grains - Intervals at which the metric is sampled. For example,
PT1M
indicates that the metric is sampled every minute,PT30M
every 30 minutes,PT1H
every hour, and so on. - DS Export- Whether the metric is exportable to Azure Monitor Logs via diagnostic settings. For information on exporting metrics, see Create diagnostic settings in Azure Monitor.
Category | Metric | Name in REST API | Unit | Aggregation | Dimensions | Time Grains | DS Export |
---|---|---|---|---|---|---|---|
Transaction | Availability The percentage of availability for the storage service or the specified API operation. Availability is calculated by taking the TotalBillableRequests value and dividing it by the number of applicable requests, including those that produced unexpected errors. All unexpected errors result in reduced availability for the storage service or the specified API operation. |
Availability |
Percent | Average, Minimum, Maximum | GeoType , ApiName , Authentication , Tier |
PT1M | Yes |
Capacity | Blob Capacity The amount of storage used by the storage account's Blob service in bytes. |
BlobCapacity |
Bytes | Average | BlobType , Tier |
PT1H | No |
Capacity | Blob Count The number of blob objects stored in the storage account. |
BlobCount |
Count | Average | BlobType , Tier |
PT1H | No |
Capacity | Blob Provisioned Size The amount of storage provisioned in the storage account's Blob service in bytes. |
BlobProvisionedSize |
Bytes | Average | BlobType , Tier |
PT1H | No |
Capacity | Blob Container Count The number of containers in the storage account. |
ContainerCount |
Count | Average | <none> | PT1H | Yes |
Transaction | Egress The amount of egress data. This number includes egress to external client from Azure Storage as well as egress within Azure. As a result, this number does not reflect billable egress. |
Egress |
Bytes | Total, Average, Minimum, Maximum | GeoType , ApiName , Authentication , Tier |
PT1M | Yes |
Capacity | Index Capacity The amount of storage used by Azure Data Lake Storage Gen2 hierarchical index. |
IndexCapacity |
Bytes | Average | <none> | PT1H | No |
Transaction | Ingress The amount of ingress data, in bytes. This number includes ingress from an external client into Azure Storage as well as ingress within Azure. |
Ingress |
Bytes | Total, Average, Minimum, Maximum | GeoType , ApiName , Authentication , Tier |
PT1M | Yes |
Transaction | Success E2E Latency The average end-to-end latency of successful requests made to a storage service or the specified API operation, in milliseconds. This value includes the required processing time within Azure Storage to read the request, send the response, and receive acknowledgment of the response. |
SuccessE2ELatency |
MilliSeconds | Average, Minimum, Maximum | GeoType , ApiName , Authentication , Tier |
PT1M | Yes |
Transaction | Success Server Latency The average time used to process a successful request by Azure Storage. This value does not include the network latency specified in SuccessE2ELatency. |
SuccessServerLatency |
MilliSeconds | Average, Minimum, Maximum | GeoType , ApiName , Authentication , Tier |
PT1M | Yes |
Transaction | Transactions The number of requests made to a storage service or the specified API operation. This number includes successful and failed requests, as well as requests which produced errors. Use ResponseType dimension for the number of different type of response. |
Transactions |
Count | Total | ResponseType , GeoType , ApiName , Authentication , TransactionType , Tier |
PT1M | Yes |
Note
The Blob Capacity and Blob Count metric are emitted hourly. A background process computes these metrics and updates them multiple times a day.
Metric dimensions
For information about what metric dimensions are, see Multi-dimensional metrics.
This service has the following dimensions associated with its metrics.
Dimensions available to all storage services
Dimension Name | Description |
---|---|
GeoType | Transaction from Primary or Secondary cluster. The available values include Primary and Secondary. It applies to Read Access Geo Redundant Storage(RA-GRS) when reading objects from secondary tenant. |
ResponseType | Transaction response type. The available values include: |
ApiName | The name of operation. If a failure occurs before the name of the operation is identified, the name appears as "Unknown". You can use the value of the ResponseType dimension to learn more about the failure. |
Authentication | Authentication type used in transactions. The available values include: |
TransactionType | Type of transaction. The available values include: |
Dimensions specific to Blob storage
Dimension Name | Description |
---|---|
BlobType | The type of blob for Blob metrics only. The supported values are BlockBlob, PageBlob, and Azure Data Lake Storage. Append blobs are included in BlockBlob. |
Tier | Azure storage offers different access tiers, which allow you to store blob object data in the most cost-effective manner. See more in Azure Storage blob tier. The supported values include: Hot: Hot tier Cool: Cool tier Cold: Cold tier Archive: Archive tier Premium: Premium tier for block blob P4/P6/P10/P15/P20/P30/P40/P50/P60: Tier types for premium page blob Standard: Tier type for standard page Blob Untiered: Tier type for general purpose v1 storage account |
For the metrics supporting dimensions, you need to specify the dimension value to see the corresponding metrics values. For example, if you look at Transactions value for successful responses, you need to filter the ResponseType dimension with Success. If you look at BlobCount value for Block Blob, you need to filter the BlobType dimension with BlockBlob.
Resource logs
This section lists the types of resource logs you can collect for this service. The section pulls from the list of all resource logs category types supported in Azure Monitor.
Supported resource logs for Microsoft.Storage/storageAccounts/blobServices
Category | Category display name | Log table | Supports basic log plan | Supports ingestion-time transformation | Example queries | Costs to export |
---|---|---|---|---|---|---|
StorageDelete |
Storage Delete | StorageBlobLogs Storage Blob Service Logs Schema |
Yes | Yes | Queries | Yes |
StorageRead |
Storage Read | StorageBlobLogs Storage Blob Service Logs Schema |
Yes | Yes | Queries | Yes |
StorageWrite |
Storage Write | StorageBlobLogs Storage Blob Service Logs Schema |
Yes | Yes | Queries | Yes |
Azure Monitor Logs tables
This section lists the Azure Monitor Logs tables relevant to this service, which are available for query by Log Analytics using Kusto queries. The tables contain resource log data and possibly more depending on what is collected and routed to them.
The following sections describe the properties for Azure Storage resource logs when they're collected in Azure Monitor Logs or Azure Storage. The properties describe the operation, the service, and the type of authorization that was used to perform the operation.
Fields that describe the operation
{
"time": "2019-02-28T19:10:21.2123117Z",
"resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/mytestrp/providers/Microsoft.Storage/storageAccounts/testaccount1/blobServices/default",
"category": "StorageWrite",
"operationName": "PutBlob",
"operationVersion": "2017-04-17",
"schemaVersion": "1.0",
"statusCode": 201,
"statusText": "Success",
"durationMs": 5,
"callerIpAddress": "192.168.0.1:11111",
"correlationId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"location": "uswestcentral",
"uri": "http://mystorageaccount.blob.core.windows.net/cont1/blobname?timeout=10"
}
Property | Description |
---|---|
time | The Universal Time Coordinated (UTC) time when the request was received by storage. For example: 2018/11/08 21:09:36.6900118 . |
resourceId | The resource ID of the storage account. For example: /subscriptions/208841be-a4v3-4234-9450-08b90c09f4/resourceGroups/ myresourcegroup/providers/Microsoft.Storage/storageAccounts/mystorageaccount/storageAccounts/blobServices/default |
category | The category of the requested operation. For example: StorageRead , StorageWrite , or StorageDelete . |
operationName | The type of REST operation that was performed. For a complete list of operations, see Storage Analytics Logged Operations and Status Messages topic. |
operationVersion | The storage service version that was specified when the request was made. This is equivalent to the value of the x-ms-version header. For example: 2017-04-17 . |
schemaVersion | The schema version of the log. For example: 1.0 . |
statusCode | The HTTP or SMB status code for the request. If the HTTP request is interrupted, this value might be set to Unknown . For example: 206 |
statusText | The status of the requested operation. For a complete list of status messages, see Storage Analytics Logged Operations and Status Messages topic. In version 2017-04-17 and later, the status message ClientOtherError isn't used. Instead, this field contains an error code. For example: SASSuccess |
durationMs | The total time, expressed in milliseconds, to perform the requested operation. This includes the time to read the incoming request, and to send the response to the requester. For example: 12 . |
callerIpAddress | The IP address of the requester, including the port number. For example: 192.100.0.102:4362 . |
correlationId | The ID that is used to correlate logs across resources. For example: b99ba45e-a01e-0042-4ea6-772bbb000000 . |
location | The location of storage account. For example: North Europe . |
protocol | The protocol that is used in the operation. For example: HTTP , HTTPS , SMB , or NFS |
uri | Uniform resource identifier that is requested. |
Fields that describe how the operation was authenticated
{
"identity": {
"authorization": [
{
"action": "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read",
"denyAssignmentId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"principals": [
{
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"type": "User"
}
],
"reason": "Policy",
"result": "Granted",
"roleAssignmentId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"roleDefinitionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"type": "RBAC"
}
],
"properties": {
"metricResponseType": "Success",
"objectKey": "/samplestorageaccount/samplecontainer/sampleblob.png"
},
"requester": {
"appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"audience": "https://storage.azure.com/",
"objectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tokenIssuer": "https://sts.windows.net/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
},
"type": "OAuth"
},
}
Property | Description |
---|---|
identity / type | The type of authentication that was used to make the request. For example: OAuth , Kerberos , SAS Key , Account Key , or Anonymous |
identity / tokenHash | The SHA-256 hash of the authentication token used on the request. When the authentication type is Account Key , the format is "key1 | key2 (SHA256 hash of the key)". For example: key1(5RTE343A6FEB12342672AFD40072B70D4A91BGH5CDF797EC56BF82B2C3635CE) . When authentication type is SAS Key , the format is "key1 | key2 (SHA 256 hash of the key),SasSignature(SHA 256 hash of the SAS token)". For example: key1(0A0XE8AADA354H19722ED12342443F0DC8FAF3E6GF8C8AD805DE6D563E0E5F8A),SasSignature(04D64C2B3A704145C9F1664F201123467A74D72DA72751A9137DDAA732FA03CF) . When authentication type is OAuth , the format is "SHA 256 hash of the OAuth token". For example: B3CC9D5C64B3351573D806751312317FE4E910877E7CBAFA9D95E0BE923DD25C For other authentication types, there is no tokenHash field. |
authorization / action | The action that is assigned to the request. |
authorization / denyAssignmentId | The date in GUID format when access was denied by a deny assignment. The deny assignment might be from Azure Blueprints or a managed application. For more information on deny assignments, see Understand Azure deny assignments |
authorization / reason | The reason for the authorization result of the request. For example: Policy , NoApplicablePolicy , or MissingAttributes |
authorization / result | The authorization result of the request. For example: Granted or Denied |
authorization / roleAssignmentId | The role assignment ID. For example: 4e2521b7-13be-4363-aeda-111111111111 . |
authorization / roleDefinitionId | The role definition ID. For example: ba92f5b4-2d11-453d-a403-111111111111 . |
authorization / type | The source of the authorization result for the request. For example: RBAC or ABAC |
principals / id | The ID of the security principal. For example: a4711f3a-254f-4cfb-8a2d-111111111111 . |
principals / type | The type of security principal. For example: ServicePrincipal . |
properties / metricResponseType | The response from the metrics transaction. For examples, see the ResponseType metrics dimension for your storage service: blobs files queues tables |
properties / objectKey | The path to the object being accessed. For example: samplestorageaccount/container1/blob.png . |
requester / appID | The Open Authorization (OAuth) application ID that is used as the requester. For example: d3f7d5fe-e64a-4e4e-871d-333333333333 . |
requester / audience | The OAuth audience of the request. For example: https://storage.azure.com . |
requester / objectId | The OAuth object ID of the requester. In case of Kerberos authentication, represents the object identifier of Kerberos authenticated user. For example: 0e0bf547-55e5-465c-91b7-2873712b249c . |
requester / tenantId | The OAuth tenant ID of identity. For example: 72f988bf-86f1-41af-91ab-222222222222 . |
requester / tokenIssuer | The OAuth token issuer. For example: https://sts.windows.net/72f988bf-86f1-41af-91ab-222222222222/ . |
requester / upn | The User Principal Name (UPN) of requestor. For example: someone@contoso.com . |
requester / userName | This field is reserved for internal use only. |
Fields that describe the service
{
"properties": {
"accountName": "testaccount1",
"requestUrl": "https://testaccount1.blob.core.windows.net:443/upload?restype=container&comp=list&prefix=&delimiter=/&marker=&maxresults=30&include=metadata&_=1551405598426",
"userAgentHeader": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134",
"referrerHeader": "blob:https://portal.azure.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"clientRequestId": "",
"etag": "",
"serverLatencyMs": 63,
"serviceType": "blob",
"operationCount": 0,
"requestHeaderSize": 2658,
"requestBodySize": 0,
"responseHeaderSize": 295,
"responseBodySize": 2018,
"contentLengthHeader": 0,
"requestMd5": "",
"serverMd5": "",
"lastModifiedTime": "",
"conditionsUsed": "",
"smbTreeConnectID" : "0x3",
"smbPersistentHandleID" : "0x6003f",
"smbVolatileHandleID" : "0xFFFFFFFF00000065",
"smbMessageID" : "0x3b165",
"smbCreditsConsumed" : "0x3",
"smbCommandDetail" : "0x2000 bytes at offset 0xf2000",
"smbFileId" : " 0x9223442405598953",
"smbSessionID" : "0x8530280128000049",
"smbCommandMajor" : "0x6",
"smbCommandMinor" : "DirectoryCloseAndDelete"
}
}
Property | Description |
---|---|
accountName | The name of the storage account. For example: mystorageaccount . |
requestUrl | The URL that is requested. |
userAgentHeader | The User-Agent header value, in quotes. For example: WA-Storage/6.2.0 (.NET CLR 4.0.30319.42000; Win32NT 6.2.9200.0) . |
referrerHeader | The Referrer header value. For example: http://contoso.com/about.html . |
clientRequestId | The x-ms-client-request-id header value of the request. For example: 360b66a6-ad4f-4c4a-84a4-0ad7cb44f7a6 . |
etag | The ETag identifier for the returned object, in quotes. For example: 0x8D101F7E4B662C4 . |
serverLatencyMs | The total time expressed in milliseconds to perform the requested operation. This value doesn't include network latency (the time to read the incoming request and send the response to the requester). For example: 22 . |
serviceType | The service associated with this request. For example: blob , table , files , or queue . |
operationCount | The number of each logged operation that is involved in the request. This count starts with an index of 0 . Some requests require more than one operation. Most requests perform only one operation. For example: 1 . |
requestHeaderSize | The size of the request header expressed in bytes. For example: 578 . If a request is unsuccessful, this value might be empty. |
requestBodySize | The size of the request packets, expressed in bytes, that are read by the storage service. For example: 0 . If a request is unsuccessful, this value might be empty. |
responseHeaderSize | The size of the response header expressed in bytes. For example: 216 . If a request is unsuccessful, this value might be empty. |
responseBodySize | The size of the response packets written by the storage service, in bytes. If a request is unsuccessful, this value may be empty. For example: 216 . |
requestMd5 | The value of either the Content-MD5 header or the x-ms-content-md5 header in the request. The MD5 hash value specified in this field represents the content in the request. For example: 788815fd0198be0d275ad329cafd1830 . This field can be empty. |
serverMd5 | The value of the MD5 hash calculated by the storage service. For example: 3228b3cf1069a5489b298446321f8521 . This field can be empty. |
lastModifiedTime | The Last Modified Time (LMT) for the returned object. For example: Tuesday, 09-Aug-11 21:13:26 GMT . This field is empty for operations that can return multiple objects. |
conditionsUsed | A semicolon-separated list of key-value pairs that represent a condition. The conditions can be any of the following: For example: If-Modified-Since=Friday, 05-Aug-11 19:11:54 GMT . |
contentLengthHeader | The value of the Content-Length header for the request sent to the storage service. If the request was successful, this value is equal to requestBodySize. If a request is unsuccessful, this value may not be equal to requestBodySize, or it might be empty. |
tlsVersion | The TLS version used in the connection of request. For example: TLS 1.2 . |
smbTreeConnectID | The Server Message Block (SMB) treeConnectId established at tree connect time. For example: 0x3 |
smbPersistentHandleID | Persistent handle ID from an SMB2 CREATE request that survives network reconnects. Referenced in MS-SMB2 2.2.14.1 as SMB2_FILEID.Persistent. For example: 0x6003f |
smbVolatileHandleID | Volatile handle ID from an SMB2 CREATE request that is recycled on network reconnects. Referenced in MS-SMB2 2.2.14.1 as SMB2_FILEID.Volatile. For example: 0xFFFFFFFF00000065 |
smbMessageID | The connection relative MessageId. For example: 0x3b165 |
smbCreditsConsumed | The ingress or egress consumed by the request, in units of 64k. For example: 0x3 |
smbCommandDetail | More information about this specific request rather than the general type of request. For example: 0x2000 bytes at offset 0xf2000 |
smbFileId | The FileId associated with the file or directory. Roughly analogous to an NTFS FileId. For example: 0x9223442405598953 |
smbSessionID | The SMB2 SessionId established at session setup time. For example: 0x8530280128000049 |
smbCommandMajor uint32 | Value in the SMB2_HEADER.Command. Currently, this is a number between 0 and 18 inclusive. For example: 0x6 |
smbCommandMinor | The subclass of SmbCommandMajor, where appropriate. For example: DirectoryCloseAndDelete |
Activity log
The linked table lists the operations that can be recorded in the activity log for this service. These operations are a subset of all the possible resource provider operations in the activity log.
For more information on the schema of activity log entries, see Activity Log schema.
Related content
- See Monitor Azure Blob Storage for a description of monitoring Azure Blob Storage.
- See Monitor Azure resources with Azure Monitor for details on monitoring Azure resources.
- See Metrics and logs FAQ for frequently asked questions and answers.