gpt4 book ai didi

azure - 阻止 Azure Function 向 Application Insights 进行过多日志记录

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

我有一个用 Java 编写的 Azure 函数,附带以下 host.json 文件:

{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[3.*, 4.0.0)"
},
"extensions": {
"http": {
"routePrefix": ""
},
"queues": {
"maxPollingInterval": "00:00:10"
}
},
"logging": {
"logLevel": {
"default": "Warning",
"Host": "Warning",
"Function": "Warning",
"Azure.Core": "Error"
}
}
}

根据我的理解,设置 "default": "Warning" 日志级别应该会导致生成非常少的日志,除非发生异常情况。不幸的是,情况似乎并非如此。在 Application Insights 中,我可以看到大量日志条目,例如:

  • “WorkerStatusRequest 已完成”
  • “工作线程已初始化”
  • “收到工作线程终止请求。正常关闭工作线程。”
  • “Java Worker 调用的函数“abc”(ID:defghijk)”
  • “已执行‘Functions.abc’(成功,Id=defghijk,持续时间=826ms)”
  • “Java 工作线程收到的 FunctionLoadRequest,Java 版本 - C:\Program Files\Java\microsoft-jdk-11.0.16.1 - 11.0.16.1”
  • ...

我的问题是如何让它保持沉默。那些日志语句对我来说并不是那么有趣。我还观察到它们都是用 SeverityLevel=1 记录的,根据文档,它等于 Debug

感谢您的帮助。

最佳答案

如下所示修改您的 host.json 以减少过多的日志记录:

{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[3.*, 4.0.0)"
},
"extensions": {
"http": {
"routePrefix": ""
},
"queues": {
"maxPollingInterval": "00:00:10"
}
},
"logging": {
"logLevel": {
"default": "Warning",
"Function": "Error",
"Host.Aggregator": "Error",
"Host.Results": "Information",
"Function.Function1": "Information",
"Function.Function1.User": "Error"
},
"applicationInsights": {
"samplingSettings": {
"isEnabled": true,
"maxTelemetryItemsPerSecond": 1,
"excludedTypes": "Exception"
}
}
}
}

您还可以将所有日志级别更改为警告错误

回应:

enter image description here

enter image description here

根据 doc ,当SeverityLevel=1时,指的是信息。所以它显示了所有与功能相关的信息。

关于azure - 阻止 Azure Function 向 Application Insights 进行过多日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76831194/

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