zoukankan      html  css  js  c++  java
  • 第31章 日志

    IdentityServer使用ASP.NET Core提供的标准日志记录工具。Microsoft文档有一个很好的介绍和内置日志记录提供程序的描述。

    我们大致遵循Microsoft使用日志级别的指导原则:

    • Trace仅供开发人员解决问题的信息。这些消息可能包含敏感的应用程序数据(如令牌),不应在生产环境中启用。
    • Debug遵循内部流程并理解为何做出某些决定。在开发和调试过程中具有短期实用性。
    • Information用于跟踪应用程序的一般流程。这些日志通常具有一些长期价值。
    • Warning对于应用程序流中的异常或意外事件。这些可能包括错误或其他不会导致应用程序停止但可能需要调查的条件。
    • Error对于无法处理的错误和异常。示例:协议请求的验证失败。
    • Critical对于需要立即关注的故障。示例:缺少商店实施,无效的密钥材料......

    31.1 Serilog的设置

    我们个人非常喜欢Serilog。试试看。

    31.2 ASP.NET Core2.0+

    对于以下配置,您需要Serilog.AspNetCoreSerilog.Sinks.Console包:

    public class Program
    {
        public static void Main(string[] args)
        {
            Console.Title = "IdentityServer4";
    
            Log.Logger = new LoggerConfiguration()
                .MinimumLevel.Debug()
                .MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
                .MinimumLevel.Override("System", LogEventLevel.Warning)
                .MinimumLevel.Override("Microsoft.AspNetCore.Authentication", LogEventLevel.Information)
                .Enrich.FromLogContext()
                .WriteTo.Console(outputTemplate: "[{Timestamp:HH:mm:ss} {Level}] {SourceContext}{NewLine}{Message:lj}{NewLine}{Exception}{NewLine}", theme: AnsiConsoleTheme.Literate)
                .CreateLogger();
    
            BuildWebHost(args).Run();
        }
    
        public static IWebHost BuildWebHost(string[] args)
        {
            return WebHost.CreateDefaultBuilder(args)
                    .UseStartup<Startup>()
                    .UseSerilog()
                    .Build();
        }
    }
    

    github地址

  • 相关阅读:
    java复习计划
    超过16位的字符串装16进制
    《将博客搬至CSDN》
    android设置中文字体样式
    布局文件View和ViewGroup
    创建线程的两种方法,继承Thread,继承Runnable
    本地文件的copy复制
    字节流和字符流完成URL下载,并存入本地
    文本过滤器的用法,FileFilter()和FilenameFilter()
    JavaSE笔记
  • 原文地址:https://www.cnblogs.com/thinksjay/p/10780451.html
Copyright © 2011-2022 走看看