我正在将Azure Functions V2与Azure服务总线触发器一起使用,该触发器被设置为在ASB订阅上存在消息时被触发。我正在尝试查看消息接收延迟上是否有可用的度量标准,以便可以在仪表板上进行绘制。我正在使用ASB标准SKU,因此当发生嘈杂的邻居问题时,至少我可以这样识别。
我怀疑trigger属性下的代码会负责检索消息。因此,有没有一种方法可以使我看到平均等待时间?基本上,该功能仅提供执行指标。我正在寻找的是端到端延迟指标。
答案 0 :(得分:0)
如果您使用应用程序见解进行日志记录,则函数运行时将为每条消息记录如下行:
2019-08-04 21:09:06.026 Trigger Details: MessageId: <Guid>, DeliveryCount: 1, EnqueuedTime: 8/4/2019 9:09:05 PM, LockedUntil: 8/4/2019 9:09:35 PM
如果您将此日志行解析为EnqueuedTime
,还解析了日志记录时间(第一个时间戳记),那么我们可以计算收发延迟。
我知道这不是理想的方法。我希望函数运行时会记录可以在Azure Monitor中轻松查看的事件。或者,如果它与输入触发器一起传递给EnqueuedTime
,那么我们可以将其作为自定义事件自己记录在Application Insights中。