<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      在.Net Core中記錄日志

      一個完善的系統,必然會有非常完善的日志記錄,用戶的操作、系統的運行狀況等信息被完整的記錄下來,方便我們對系統進行維護和改進。.net core 也為日志記錄提供了內置的支持。

      在控制臺程序中記錄日志

      本段內容摘自《在.NET Core控制臺應用程序中使用日志》,作者非常詳細的介紹了如何在控制臺應用程序中使用內置的日志記錄功能。

      代碼如下:

      var configuration = new ConfigurationBuilder()
          .AddJsonFile("appsettings.json")
          .Build();
      
      var serviceCollection = new ServiceCollection()
          .AddLogging(loggingBuilder =>
          {
              loggingBuilder.AddConfiguration(configuration.GetSection("Logging"));
              loggingBuilder.AddConsole(); // 將日志輸出到控制臺
          })
          .AddSingleton<ICalculationService, CalculationService>();
      
      var serviceProvider = serviceCollection.BuildServiceProvider();
      
      var calcService = serviceProvider.GetService<ICalculationService>();
      Console.WriteLine(calcService.Add(3, 4));
      

      其實,在拿到ServiceProvider對象后,我們就可以獲取日志服務了。例如:

      var logger = serviceProvider.GetService<ILogger<Program>>();
      logger.LogDebug($"系統初始化完成...");
      

      在Asp.Net Core應用中記錄日志

      由于在IWebHostBuilder.CreateDefaultBuilder()方法中,系統已經幫我們初始化了日志組件,因此我們可以直接使用ILogger<T>進行注入。

      代碼如下:

      [Route("api/[controller]")]
      [ApiController]
      public class WelcomeController : ControllerBase
      {
          private readonly ILogger<WelcomeController> logger;
      
          public WelcomeController(ILogger<WelcomeController> logger)
          {
              this.logger = logger;
          }
      
          [HttpGet, HttpPost]
          public string Welcome()
          {
              this.logger.LogInformation($"Welcome...");
      
              return "Welcome... ";
          }
      }
      

      日志類別(LogCategory)

      日志類別是在ILogger創建時就需要指定的一個字符串,它用來區分日志的類別。當我們使用ILogger<T>創建日志對象時,日志類別默認為泛型T的類名。

      我們也可以通過ILoggerFactory.CreateLogger指定日志類別:

      private readonly ILogger logger;
      public WelcomeController(ILoggerFactory factory)
      {
          this.logger = factory.CreateLogger("WelcomeLogger");
      }
      

      日志等級(LogLevel)

      日志等級用來標記日志的重要程度,在.NetCore中,日志等級分為以下幾種:

      • Trace = 0,記錄跟蹤信息
      • Debug = 1,記錄調試信息
      • Information = 2,記錄常規信息
      • Warning = 3,記錄警告信息,通常為404等不影響系統正常運行的信息
      • Error = 4,記錄錯誤信息,通常為異常信息
      • Critical = 5,記錄系統錯誤信息,通常為內存溢出、磁盤寫滿等

      日志事件ID

      每條日志都可以指定一個事件ID,事件 ID 與一組事件相關聯,用來更加準確的追蹤引發日志的事件。例如:

      //定義事件ID類
      public class LoggingEvents
      {
          public const int GenerateItems = 1000;
          public const int ListItems = 1001;
          public const int GetItem = 1002;
          public const int InsertItem = 1003;
          public const int UpdateItem = 1004;
          public const int DeleteItem = 1005;
      
          public const int GetItemNotFound = 4000;
          public const int UpdateItemNotFound = 4001;
      }
      
      //使用事件ID進行日志記錄
      _logger.LogWarning(LoggingEvents.GetItemNotFound, "Item NOT FOUND");
      
      

      日志篩選

      日志篩選器可為日志提供程序指定輸出日志的最低級別,當大于最低級別時才會被輸出或存儲。例如我們將最低級別設置為Error,則只有Error或Critical日志才會被展示。

      配置文件中設置篩選器

      下面的代碼展示了一個日志篩選器的配置,并在備注中進行了說明:

      {
          "Logging": { //日志配置節點
              "LogLevel": { //默認篩選器
                  "Default": "Debug", //默認日志類別
                  "System": "Information" //日志類別為System
              },
              "Console": { //針對日志提供程序Console的配置
                  "LogLevel": { //日志篩選器
                      "Default": "Error", //默認日志類別
                      "LoggingSample.Program": "Debug" //日志類別為LoggingSample.Program的篩選器
                  }
              }
          }
      }
      

      參考文檔

      posted @ 2019-09-18 00:45  拓荒者IT  閱讀(4364)  評論(0)    收藏  舉報
      皮膚配置 參考地址:https://www.yuque.com/awescnb/user
      主站蜘蛛池模板: 午夜三级成人在线观看| 亚洲国产美女精品久久久| 干老熟女干老穴干老女人| 亚洲av区一区二区三区| 亚洲夂夂婷婷色拍ww47| 手机无码人妻一区二区三区免费 | 免费看又黄又无码的网站| 精品乱人伦一区二区三区| 国产精品黄大片在线播放| 欧美亚洲综合成人A∨在线| 国产一区二区三区小说| 免费人成在线视频无码| 精品国产91久久粉嫩懂色| 粉嫩一区二区三区国产精品| 黄梅县| 国产精品日韩av在线播放| av在线播放无码线| 亚洲一区二区三区影院| 河津市| 国产高清精品在线一区二区 | 中文午夜乱理片无码| 熟妇人妻系列aⅴ无码专区友真希| 亚洲成av人最新无码不卡短片| 国内少妇偷人精品免费| 无码人妻丰满熟妇奶水区码| 国产精品毛片一区二区| 亚洲熟妇熟女久久精品综合| 亚洲精品tv久久久久久久| 中文日产幕无线码一区中文| 一级国产在线观看高清| 午夜免费国产体验区免费的| 蓬安县| 青青青爽在线视频观看| 国产精品日韩专区第一页| 国产一区二区三区激情视频| 国产AV影片麻豆精品传媒| 亚洲最大福利视频网| 精品国产久一区二区三区| 激情五月开心综合亚洲| 午夜亚洲www湿好爽| 在线精品自拍亚洲第一区|