You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Serverless Functions中ILogger日志无输出问题排查求助

Azure Functions ILogger日志未在Live Metrics显示的排查方案

一、代码层面问题排查

  • 泛型类型不匹配:你的类是EnrollmentFunctions,但注入的ILogger泛型为ILogger<AttestationFunctions>,这会导致日志分类错误,Live Metrics可能过滤了该分类的日志。修改为匹配的泛型类型即可:
    private readonly ILogger<EnrollmentFunctions> logger;
    
    public EnrollmentFunctions(ILogger<EnrollmentFunctions> log)
    {
        logger = log;
    }
    

二、host.json配置及集成检查

  • 采样规则拦截日志:当前配置中maxTelemetryItemsPerSecond=20,如果请求量较低,采样机制可能未触发日志上报。可临时关闭采样测试:
    {"version": "2.0", "logging": {"applicationInsights": {"samplingSettings": {"isEnabled": false}}}}
    
    注意:关闭采样仅用于排查,生产环境建议保留采样以控制成本。
  • 确认Application Insights关联有效性:确保函数应用已绑定有效的Application Insights资源,且应用设置中正确配置了APPLICATIONINSIGHTS_CONNECTION_STRING或APPINSIGHTS_INSTRUMENTATIONKEY。

三、Live Metrics显示规则检查

  • 延迟问题:Live Metrics日志上报存在几秒到十几秒的延迟,不要立即刷新判断结果。
  • 过滤规则限制:检查Live Metrics界面是否设置了过滤条件(比如仅显示Error级别日志),切换到「全部日志」视图查看完整内容。

四、其他日志查看渠道

  • 日志流(Log Stream):在Azure门户进入函数应用→「监控」→「日志流」,可实时查看函数原始日志,不受Application Insights采样影响。
  • Application Insights日志查询:在关联的Application Insights资源中进入「日志」页面,用Kusto语句查询:
    traces
    | where message contains "Requesting attestation of device name"
    | order by timestamp desc
    
  • 本地调试日志:本地运行函数时,日志会直接输出到控制台窗口,若配置了本地Application Insights模拟器,也会同步到模拟器中。

内容的提问来源于stack exchange,提问作者morleyc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 16:05:29