Monitoring azure storage bandwidth usage for each of my users -
i have application give sas tokens registered users upload , download directly azure storage. best way monitor bandwidth each of users?
i have taken @ logs azure provides, , looking @ things, possible way bind sas token user's ip address, , check logs <requester-ip-address> field. however, way doesn't seem concrete multiple users might have same ip address.
also, see <request-id-header> field which, according documentation, opaque value uniquely identifies request. don't see way of getting header value if user directly communicates azure storage.
thanks.
a different approach be:
- using copy blob api: create temporary file user's username , generate sas token user download file
- remove file after expiry of sas token
- check analytic logs in storage account; whether blob accessed, , whether download successful, , if not downloaded bytes
- if user failed download whole blob; see sasnetworkerror in log
- in event of sasnetworkerror; log contain amount of data downloaded user (https://docs.microsoft.com/en-us/rest/api/storageservices/storage-analytics-log-format response-packet-size). tell percentage of download completed right before error.
Comments
Post a Comment