如何在Azure Function日志中排除Request日志条目?
排除Azure Function应用中的「Request」日志条目
你当前配置里的excludedTypes: "Request"是Application Insights采样规则的排除项,仅控制采样是否收集这类日志,无法直接过滤日志输出,所以没起到预期效果。以下是两种有效的解决方法:
方法1:修改host.json过滤运行时日志
这些自动生成的「Request」日志属于Function运行时或触发器扩展的日志类别,可通过host.json的日志级别配置直接过滤:
{ "version": "2.0", "logging": { "applicationInsights": { "samplingSettings": { "isEnabled": true } }, "logLevel": { "WhatInBoxFunctions": "Information", // 完全禁用Function执行器生成的Request日志 "Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor": "None", // 过滤Blob触发器轮询相关日志,仅保留警告及以上级别 "Microsoft.Azure.WebJobs.Extensions.Storage.Blobs": "Warning" } } }
- 设置
"None"会彻底屏蔽对应类别的所有日志;若不想完全禁用,可设为"Warning"或"Error"仅保留高优先级日志 - 修改后需重启Function应用使配置生效
方法2:在Application Insights中过滤日志
如果日志已上传至Application Insights,可通过查询规则过滤:
- 进入你的Application Insights资源,打开「日志」页面
- 使用Kusto查询排除目标日志,示例:
traces | where type != "Request" // 或精准排除Blob触发器轮询相关的Request日志 | where operation_Name !contains "BlobTriggerPoll" - 可将过滤后的查询保存为工作簿或设置为默认视图,避免重复操作
内容的提问来源于stack exchange,提问作者Ryan
相关产品推荐
相关产品推荐

