Log4Net默认行为记录参数

时间:2019-02-04 16:14:07

标签: log4net asp.net-core-webapi-2.1

我有一些方法将Json(Jarray)作为有效负载中的参数。因此方法签名可能看起来像这样:

[HttpPut("{id:int}/data")]
public async Task<IActionResult> Put([FromBody] JArray jsonData, int id)

Log4Net将有效负载记录在日志文件中。我正在尝试关闭这种行为,我想知道是否有一种方法可以做到这一点?

我已经为最小的日志记录进行了一些配置,但这似乎无关紧要。

1 个答案:

答案 0 :(得分:0)

也许您可以通过使用ASP.NET Core日志记录筛选来实现所需的行为。

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

    public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .ConfigureLogging((hostingContext, logging) =>
            {
                // Next line filters every "Microsoft" related message to be logged on any implementation of Microsoft Logging Providers.
                logging.AddFilter("Microsoft", LogLevel.None);
            })
            .UseStartup<Startup>();
}

只需更改Microsoft文本即可过滤最细粒度的元素,以实现所需的行为。