locked
Azure Storage Transaction/Ingress metric monitoring for particular Blob stroage RRS feed

  • Question

  • Hi,

    Appreciate if anyone can help with to get transactions/Ingress metric count for last 30 days on particular blob object. simply I just wanted to monitor network access monitoring for last 30 days. In my storage account container I have 2 blobs objects (refer image1) and I required to monitor the traffic on them for last 30 days individually.

    Here, I have tried with Metric pane under Monitoring(refer imaeg2, image3) but there I am not able to monitor the accessibility individually. appreciate help for sort out this issue for me. 

    Please note, I took screenshots from my test account and that's why can't any historical data on the graph.


    image1

    image2

    image3

    Thanks in advance

    Dilan



    • Edited by Dilanmic Tuesday, May 12, 2020 6:53 AM correction
    Tuesday, May 12, 2020 5:39 AM

Answers

  • Thanks for raising this question! Firstly, apologies for the delay in responding here and any inconvenience this issue may have caused. 

    It can be done by analyzing logs to get transactions/Ingress on a blob or container. 

    Azure Monitor

    Metrics: https://docs.microsoft.com/en-us/azure/storage/common/storage-metrics-in-azure-monitor

    Reference: https://docs.microsoft.com/en-us/rest/api/storageservices/storage-analytics-log-format#log-entry-format-20

    Version 1:

    <version-number>;<request-start-time>;<operation-type>;<request-status>;<http-status-code>;<end-to-end-latency-in-ms>;<server-latency-in-ms>;<authentication-type>;<requester-account-name>;<owner-account-name>;<service-type>;<request-url>;<requested-object-key>;<request-id-header>;<operation-count>;<requester-ip-address>;<request-version-header>;<request-header-size>;<request-packet-size>;<response-header-size>;<response-packet-size>;<request-content-length>;<request-md5>;<server-md5>;<etag-identifier>;<last-modified-time>;<conditions-used>;<user-agent-header>;<referrer-header>;<client-request-id><o:p></o:p>

    Version 2:

    <version-number>;<request-start-time>;<operation-type>;<request-status>;<http-status-code>;<end-to-end-latency-in-ms>;<server-latency-in-ms>;<authentication-type>;<requester-account-name>;<owner-account-name>;<service-type>;<request-url>;<requested-object-key>;<request-id-header>;<operation-count>;<requester-ip-address>;<request-version-header>;<request-header-size>;<request-packet-size>;<response-header-size>;<response-packet-size>;<request-content-length>;<request-md5>;<server-md5>;<etag-identifier>;<last-modified-time>;<conditions-used>;<user-agent-header>;<referrer-header>;<client-request-id>;<user-object-id>;<tenant-id>;<application-id>;<audience>;<issuer>;<user-principal-name>;<reserved-field>;<authorization-detail><o:p></o:p>

    You need to calculate based on request or response sizes. Here’s an example for Ingress/Egress:

    StorageBlobLogs
    | extend Ingress = iff(isnull(RequestHeaderSize),0,RequestHeaderSize) + iff(isnull(RequestBodySize),0,RequestBodySize)
    | extend Egress = iff(isnull(ResponseHeaderSize),0,ResponseHeaderSize) + iff(isnull(ResponseBodySize),0,ResponseBodySize)
    | project OperationName, Ingress, Egress, RequestHeaderSize, RequestBodySize, ResponseHeaderSize, ResponseBodySize

    Hope this helps!

    Kindly let us know if the above helps or you need further assistance on this issue.

    ------------------------------------------------------------------------------------------

    Do click on "Mark as Answer" and Upvote on the post that helps you, this can be beneficial to other community members.

    Wednesday, May 20, 2020 6:18 AM