使用 Application Insights 看不到自定义日志

Custom logs are not visible using Application Insights

我正在处理我的第一个 Application Insights 项目并面临一些问题。

技术栈

项目类型 - Azure Durable Functions

.NetStandard 2.0

Visual Studio 2017

问题

在 HTTPStart 方法中,我使用 ILogger(和 TraceWriter)添加自定义日志消息。

示例代码

log.LogInformation("******* Test Message********");

当我在本地 运行 应用程序时,主机文件如下:

{
  "version": "2.0",
  "logger": {
    "categoryFilter": {
      "categoryLevels": {
        "Host.Triggers.DurableTask": "Information"
      }
    }
  }

}

在这个背景下,我想弄清楚以下问题:

  1. Azure 门户上未显示自定义日志。

问题是,我可以看到正在记录通用语句(现成的),但是没有显示借助 ILogger / TraceWriter 的自定义日志。

  1. 无法在本地看到任何日志 我想在我的本地系统上查看日志记录,这样我就不必每次都在 Azure 上部署,我需要在异常情况下测试日志记录。我看不到 VS2017 上的任何日志。

更新:

在您的功能应用程序 -> 监视器中 blade,如果一切正常,您应该会在那里看到应用程序洞察日志。像下面的截图:

以下是我的代码:

以下是我默认的host.json:

{
    "version": "2.0"
}

以下是我在门户中的应用程序设置:

并且在我将它发布到 azure 之后,我可以在 azure portal -> application insights 中看到 ILogger 写入的自定义日志(可能需要几分钟):

仅针对第 2 期,对于控制台应用程序或类似项目,"Application Insights Search" 功能不可用。

我安装的是Microsoft.ApplicationInsights2.8.1,添加如下两条自定义日志:

[FunctionName("Function1_Hello")]
public static string SayHello([ActivityTrigger] string name, ILogger log)
{
   log.LogInformation($"Saying hello to {name}.");
   log.LogInformation("xxxxxx ssssssss wwwwwwww");
   return $"Hello {name}!";
}

有两种查看方式(不需要发布到azure):

1.Nav 到 azure portal -> app insights -> search ,可能需要几分钟才能显示出来:

2.In visual studio输出window,可以尽快显示: