我正在查看我的 Azure 存储帐户的账单并尝试了解管理其成本。
目前我的 blob 成本主要位于“所有其他操作”类别下。 有办法查看这些操作是什么吗?
我想降低此成本,因此目标是更新我的应用程序,以便减少执行这些操作,但我需要首先确定它们是什么。
下面是我从成本分析中得到的图表。 (存储帐户、累计成本、按米分组)
最佳答案
在与 Azure 进行支持通话后,他们向我介绍了一些(有些隐藏的)跟踪功能。
首先也是最简单的是检查交易类型。
- 转到存储帐户 > 指标
- 选择
交易
作为指标 - 点击
添加过滤器
并选择 API 名称作为属性 - 选择您认为可疑的 API 名称
遗憾的是,选择多个不会单独显示它们,因此您必须单独尝试每个 API,看看是否有任何问题。
<小时/>第二个选项是为您感兴趣的存储类型启用诊断日志记录。
如果上述方法没有产生任何好的结果,或者您对确切时间的确切调用感到好奇等等。您可以启用此功能,并等待收集日志(通常需要几天时间),以便您有一个很好的样本集可供推理。
- 转到存储帐户 >
诊断设置(经典)
。- 这位于
监控(经典)
下,在新的监控部分中似乎没有替代项。
- 这位于
- 启用日志记录和指标类型(小时或分钟)
- 点击
保存
这些日志将写入同一帐户中名为 $logs
的容器中的 Blob 存储。根据文档,启用后无法删除此容器,但完成后可以删除内容。
请注意,如果您的存储帐户获得大量流量,此日志可能会很快变得非常大。您需要像往常一样为此容器中的读取、写入和存储支付相同的费用,包括启用这些设置时平台执行的日志写入。
查看文档 here
设置完毕后,给它一些时间来收集数据。
使用存储资源管理器或其他方式导航和下载日志并检查它们。
日志包含对存储发出的每个请求,以及时间戳、API 名称、结果、操作是否经过身份验证等详细信息,如果您正在查看 blob,它还会显示 url、用户代理等。
(结果我的应用每天对 GetBlobProperties
和 GetContainerProperties
进行了近 100,000 次调用🎈)
关于Azure Blobs 计费故障为 "All Other Operations",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60168305/