gpt4 book ai didi

azure - 使用 Azure Application Insights 创建有关调用第三方 API 的警报

转载 作者:行者123 更新时间:2023-12-03 01:47:05 25 4
gpt4 key购买 nike

我已在我创建的 Azure WebApp 上启用应用程序见解。我的 WebApp 正在调用按配额运行的第三方 API。我每月只允许 10 万次通话。

我需要跟踪这些 API 调用,以便在调用次数达到 50% 时创建一个警报,然后在 75% 时创建另一个警报。

每次进行调用时,我都会使用 TrackEvent,并且 AppInsights 仪表板中的事件会增加。但当调用一定数量的电话时,我似乎无法创建警报。我无法从“事件”下拉列表中看到它。

此外,我需要的另一项要求是当每分钟的调用次数超过 10 次时创建警报。

TrackEvent 是满足这些要求的正确方法吗?

我做了这样的事情......

var telemetryEventClient = new Microsoft.ApplicationInsights.TelemetryClient(new Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration() { InstrumentationKey = "Instrumentation Key" });
telemetryEventClient.Context.Operation.Name = "MyAPIProvider";

var properties = new Dictionary<string, string>
{
{ "Source", "WebAppToAPI" }
};

var metrics = new Dictionary<string, double>
{
{ "CallingAPIMetric", 1 }
};

telemetryEventClient.TrackEvent("CallingAPI", properties, metrics);

但是当我考虑设置警报并将阈值设置为 50000(为了测试,我只设置了 5)时,我从未达到该阈值,因为事件计数始终为 1。我是否以正确的方式处理此问题?

最佳答案

您尝试定义的警报始终查看您在自定义事件中提供的值,而不是您触发的事件数量。
您可以创建一个自动流程来查询事件,并在查询结果超过某个阈值时向您发送电子邮件。适用于 Flow 和 Microsoft Logic Apps 的 Application Insights 连接器就是为此而创建的,并且可以在任何文档类型(事件、指标甚至跟踪)的任何查询结果上进行定义。有关如何创建自己的流程的分步文档为 here

对于您的查询 - 您需要一个像这样的简单分析查询:

customEvents
| where timestamp > ago(1h) // or any time range you need
| where name == "CallingAPI"
| count

关于azure - 使用 Azure Application Insights 创建有关调用第三方 API 的警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45015694/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com