首页 > 解决方案 > 无法将事件记录到应用程序洞察中

问题描述

我正在尝试使用ILogger.

我已经实现ILogger了,它可以很好地登录到控制台,但它不会将任何内容记录到 app-insights 中。文档似乎不是最新的,因为接口中没有调用AddApplicationInsights方法ILoggingBuilder

因此,我改用了该方法AddAzureWebAppDiagnostics

 public class Program
    {
        public static void Main(string[] args)
        {
            BuildWebHost(args).Run();
        }

        public static IWebHost BuildWebHost(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
                .ConfigureLogging((hostingContext, logging) =>
                {
                    // Add Azure Logging
                    logging.AddAzureWebAppDiagnostics();
                    logging.AddConsole();
                })
                .UseApplicationInsights()
                .UseStartup<Startup>()
                .Build();
public class Startup
{
        private readonly ILoggerFactory _loggerFactory;

        public Startup(IConfiguration config, ILoggerFactory loggerFactory)
        {
            Configuration = config;
            _loggerFactory = loggerFactory;
        }

        public void ConfigureServices(IServiceCollection services)
        {
              ILogger logger = _loggerFactory.CreateLogger<BasicBot>();

              logger.LogInformation("THAT IS A TEST MESSAGE");
        }
}

它可以很好地登录到控制台但我在 app-insights 中什么也没看到!

提示:我正在使用 dotnet core 2.1 并在 Visual Studio 的开发中进行调试。

提示:app-insights 工作正常并使用ITelemetry. 但我ILogger也需要记录来自代码中许多位置的不同消息!

标签: c#azurelogging.net-coreazure-application-insights

解决方案


该方法AddApplicationInsights 包含在此包Microsoft.Extensions.Logging.ApplicationInsights中。

我设置了一个 .net core 2.1 Web 应用程序,并配置应用程序洞察力以及安装此包Microsoft.Extensions.Logging.ApplicationInsights版本 2.9.1。日志可以在控制台和门户中显示。

在代码中:

在此处输入图像描述

测试结果 - 登录 azure 门户:

在此处输入图像描述


推荐阅读