能否获取Azure存储账户的‘最后访问日期’用于生成报告?
获取Azure Blob的Last Accessed Date并生成报告
1. 使用Log Analytics
要获取last accessed date,需先开启Blob存储的诊断日志,并将日志发送至Log Analytics工作区:
- 配置诊断设置时,勾选
StorageRead日志类别,该类别会记录Blob的所有访问操作 - 在Log Analytics中通过Kusto查询提取并聚合最后访问时间,示例查询:
StorageBlobLogs | where OperationName in ("GetBlob", "HeadBlob") | project BlobUrl, AccountName, ResourceGroup, TimeGenerated | summarize LastAccessed = max(TimeGenerated) by BlobUrl, AccountName, ResourceGroup
可根据需求调整查询维度,导出结果后即可生成报告。
2. 使用Azure Storage Analytics(经典)
启用Blob访问日志后,日志会自动存储在存储账户的$logs容器中。你可以直接读取这些日志文件,解析其中的访问时间字段来获取last accessed date,再用Power BI、Excel等工具整理成可视化报告。
3. 关键说明
- Resource Graph Explorer无法直接查询Blob的last accessed date,因为该数据不属于资源属性,仅存在于访问日志中
- Last accessed date基于实际访问操作(如GetBlob、HeadBlob)生成,若Blob从未被访问过,不会有对应日志记录
- 诊断日志存在一定延迟,且需提前开启才能收集历史访问数据
内容的提问来源于stack exchange,提问作者samauces
相关产品推荐
相关产品推荐

