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

.NET Core6 Azure应用:如何在appsettings.json配置Serilog禁用HttpRequest日志

禁用Azure Application Insights自动收集HttpRequest日志的正确配置方式

你当前的问题在于将EnableRequestTrackingTelemetryModule配置在了Serilog Sink的参数中,而这个配置项属于Azure Application Insights原生SDK的设置,并非Serilog Sink的参数,因此不会生效。以下是两种正确的配置方式:

方式1:通过appsettings.json配置

在appsettings.json的根节点下添加ApplicationInsights配置块,而非嵌套在Serilog的WriteTo参数里:

{
  "Serilog": {
    // 保留你原有的Serilog配置
    "Using": [ "Serilog.Sinks.ApplicationInsights" ],
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        "Microsoft.AspNetCore.Hosting.Diagnostics": "Warning",
        "Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware": "Warning",
        "Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker": "Warning",
        "Microsoft.EntityFrameworkCore.Database.Command": "Warning",
        "Microsoft.AspNetCore.Routing.EndpointMiddleware": "Warning",
        "Microsoft.Extensions.Http.DefaultHttpClientFactory": "Warning",
        "Microsoft.AspNetCore.Server.Kestrel": "Warning",
        "Microsoft.AspNetCore.Mvc.ModelBinding": "Warning",
        "Microsoft.AspNetCore.Routing": "Warning"          
      }
    },
    "WriteTo": [
      {
        "Name": "ApplicationInsights",
        "Args": {
          "connectionString" : "InstrumentationKey=ff394818-38fa-4239-8cb4-3380d6812e4d;IngestionEndpoint=https://westeurope-1.in.applicationinsights.azure.com/;LiveEndpoint=https://westeurope.livediagnostics.monitor.azure.com/", 
          "restrictedToMinimumLevel": "Information",
          "telemetryConverter": "Serilog.Sinks.ApplicationInsights.TelemetryConverters.TraceTelemetryConverter, Serilog.Sinks.ApplicationInsights"
          // 移除这里的EnableRequestTrackingTelemetryModule配置
        }
      }
    ],
    "Enrich": [ "FromLogContext" ]
  },
  "ApplicationInsights": {
    "ConnectionString": "InstrumentationKey=ff394818-38fa-4239-8cb4-3380d6812e4d;IngestionEndpoint=https://westeurope-1.in.applicationinsights.azure.com/;LiveEndpoint=https://westeurope.livediagnostics.monitor.azure.com/",
    "EnableRequestTrackingTelemetryModule": false
  }
}

方式2:通过Program.cs代码配置

如果更倾向于代码层面控制,可在配置Web主机时直接配置Application Insights服务选项:

public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureAppConfiguration((hostingContext, config) =>
        {
            config.AddJsonFile("appsettings.json", optional: false, reloadOnChange: false);
            config.AddJsonFile($"appsettings.{hostingContext.HostingEnvironment.EnvironmentName}.json", optional: true, reloadOnChange: true);
            var configuration = config.Build();
        })
        .ConfigureWebHostDefaults(webBuilder => 
        {
            webBuilder.UseKestrel()
                      .UseStartup<Startup>()
                      .ConfigureServices(services => 
                      {
                          // 配置Application Insights并禁用请求追踪模块
                          services.AddApplicationInsightsTelemetry(options =>
                          {
                              options.ConnectionString = "InstrumentationKey=ff394818-38fa-4239-8cb4-3380d6812e4d;IngestionEndpoint=https://westeurope-1.in.applicationinsights.azure.com/;LiveEndpoint=https://westeurope.livediagnostics.monitor.azure.com/";
                              options.EnableRequestTrackingTelemetryModule = false;
                          });
                      });
        })
        .UseSerilog((hostingContext, loggerConfiguration) => 
            loggerConfiguration.ReadFrom.Configuration(hostingContext.Configuration)
        );

补充说明

  • 你当前Serilog配置中的Override节点是过滤日志输出,避免Serilog记录Microsoft.AspNetCore相关的日志,但这和Application Insights原生模块自动收集的RequestTelemetry(即HttpRequest日志)是两个独立的机制,因此必须通过禁用RequestTrackingTelemetryModule来停止自动收集请求日志。
  • 确保你的项目已安装Microsoft.ApplicationInsights.AspNetCore NuGet包,Serilog Sink依赖该包实现与Application Insights的集成。

内容的提问来源于stack exchange,提问作者Yehia A.Salam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 12:03:29