我想使用Application Insights来监控链接多个Azure函数的Logic App。我希望链尽可能安全,如果出现问题,我希望函数能够正确处理失败的http请求。我认为我可以在发生错误时从Application Insights发出警报,但是我不确定如何将失败的消息放入blob或“失败的消息队列”中。
Application Insights Alert是否有可能成为向blob添加数据的函数的触发器?
发布于 2018-06-10 00:19:53
可以从Alerts刀片定义具有功能触发器动作类型的动作组。如下图所示,App Service Auth无法在该功能上启用。
您还可以通过在Analytics中创建的自定义查询发出警报。例如,搜索过去一小时内包含“Error”一词的所有跟踪日志:
traces |
where message contains "Error" and timestamp >= ago(1h)
保存查询并创建新的警报规则,并将该查询用作警报条件。
在您的函数中访问事件内容:
HttpRequestMessageFeature feature = new HttpRequestMessageFeature(request.HttpContext);
HttpRequestMessage req = feature.HttpRequestMessage;
var content = await req.Content.ReadAsStringAsync();
然后使用WindowsAzure.Storage
SDK将内容推送到blob。
var blobClient = storageAccount.CreateCloudBlobClient();
var container = blobClient.GetContainerReference(containerName);
var blockBlob = container.GetBlockBlobReference(fileName);
await blockBlob.UploadTextAsync(content).ConfigureAwait(false);
https://stackoverflow.com/questions/50755995
复制相似问题