相关疑难解决方法(0)

这是什么 ASP.NET Core 日志消息:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager

我在每个应用程序启动时都有这个。

有谁知道这是从哪里来的?

信息:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[0] 用户配置文件可用。使用“/Users/thomas/.aspnet/DataProtection-Keys”作为密钥库;密钥不会被静态加密。

// run the web host
var PathToContentRoot = Directory.GetCurrentDirectory();
var Host = WebHost.CreateDefaultBuilder()
    .UseKestrel()
    .UseContentRoot(PathToContentRoot)
    .UseStartup<WebStartup>()
    .UseNLog()
    .Build();
Run Code Online (Sandbox Code Playgroud)

我对“数据保护”、“密钥”等一无所知,也不想要任何形式的安全功能。

ConfigureServices 部分的代码是:

        // find all controllers
        var Controllers =
            from a in AppDomain.CurrentDomain.GetAssemblies().AsParallel()
            from t in a.GetTypes()
            let attributes = t.GetCustomAttributes(typeof(ControllerAttribute), true)
            where attributes?.Length > 0
            select new { Type = t };

        var ControllersList = Controllers.ToList();
        Logging.Info($"Found {ControllersList.Count} controllers");

        // register them
        foreach (var Controller in ControllersList)
        {
            Logging.Info($"[Controller] Registering {Controller.Type.Name}");
            Services
                .AddMvc()
                .AddJsonOptions(Options => Options.SerializerSettings.ContractResolver …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core

10
推荐指数
1
解决办法
4996
查看次数

使用Serilog的一个记录器的多个过滤器

我正在尝试使用我的ASP.NET Core应用程序设置Serilog.我想为所有控制器提供一个日志文件,一个用于所有服务,一个用于其余服务,理想情况下包含一切.每个控制器都是继承BaseController和每个服务BaseService.我正在调用的控制器和服务正在编写跟踪日志事件.

通过依赖注入检索记录器和服务.该服务看起来像控制器(关于记录器).

public class UsersController: BaseController
{
    private UserService service { get; }

    public UsersController(ILogger<UsersController> logger, UserService userService) : base(logger)
    {
        service = userService;
    }
}

public abstract class BaseController: Controller
{
    protected readonly ILogger<BaseController> Logger;

    public BaseController(ILogger<BaseController> logger)
    {
        Logger = logger;
    }
}
Run Code Online (Sandbox Code Playgroud)

方法1(仅与基础部门合作)

Log.Logger = new LoggerConfiguration()
    .MinimumLevel.Verbose()
    .WriteTo.Logger(l => l
        .MinimumLevel.Verbose()

        .WriteTo.Logger(l2 => l2
            .WriteTo.Logger(l3 => l3
                .Filter.ByIncludingOnly(Matching.FromSource<BaseController>())
                .MinimumLevel.Verbose()
                .WriteTo.RollingFile("d:/logs/recon-api-controller-{Date}.log"))
            .WriteTo.Logger(l3 => l3
                .Filter.ByIncludingOnly(Matching.FromSource<BaseService>())
                .MinimumLevel.Verbose()
                .WriteTo.RollingFile("d:/logs/recon-api-service-{Date}.log"))
            .WriteTo.Logger(l3 => l3
                .Filter.ByExcluding(Matching.FromSource<BaseController>()) …
Run Code Online (Sandbox Code Playgroud)

c# logging serilog

9
推荐指数
1
解决办法
7125
查看次数

标签 统计

c# ×2

asp.net-core ×1

logging ×1

serilog ×1