91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C# NLog體驗

發布時間:2020-06-24 21:56:02 來源:網絡 閱讀:1268 作者:Aonaufly 欄目:編程語言

本人直接在Nuget中獲得Nlog日志類庫支持,再次整下Nuget知識(需要在聯網的前景下進行)

①:在項目上右擊-》管理NuGet程序包(如下圖所示)

C# NLog體驗

②:出現管理器面板單擊左側“聯網”也簽 -》在右側的搜索欄中輸入“NLog”回車-》在中間選擇“NLog”欄目點擊安裝(如下圖所示)

C# NLog體驗

等待下載(所以說需要聯網)

C# NLog體驗

C# NLog體驗

在這有個小插曲 , 因為我的控制臺程序沒有配置文件(app.config),一般新建的控制臺程序都有的。不說了 , 動手添加,但是必須注意:只能添加一個配置文件(操作如下圖)

C# NLog體驗

個人覺得比較難找 , 建議使用搜索

C# NLog體驗

附上整個App.config的配置

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog"/>
  </configSections>
  <nlog autoReload="true" internalLogLevel="Trace" internalLogFile="logs/internalLog.txt">
    <targets>
      <target name="T1" type="File" fileName="${basedir}/logs/${shortdate}.log"
              layout="${longdate} ${callsite} ${level}: 
              ${message} ${event-context:item=exception} ${stacktrace} ${event-context:item=stacktrace}"/>
      <target name="T2" type="Console" layout="${date:format=yyyyMMddHHmmss} ${callsite} ${level} ${message}"/>
    </targets>
    <rules>
      <logger name="file" minlevel="Debug" maxlevel="Off" writeTo="T1"/>
      <logger name="console" minlevel="Trace" maxlevel="Off" writeTo="T2"/>
    </rules>
  </nlog>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
</configuration>

注解:

① , autoReload="true"表示在不重新啟動應用程序的情況下,修改配置文件,NLog會自動加載應用;

internalLogLevel="Trace"internalLogFile="logs/internalLog.txt"這個設置可以將NLog內部的日志消息寫到應用程序目錄下的logs文件夾里的internalLog.txt文件中;(這個配置常用于調試Nlog的配置是否正確,調試完成后,最好關閉以提高性能)
<target>的配置:type="File|Console" 屬性是設置日志輸出目標是"File"(文件)或者"Console"(控制臺);


②,type="File"的時候要指定fileName屬性, fileName="${basedir}/logs/${shortdate}.log" 設置日記記錄文件的路徑和名稱,即應用程序下的log目錄里格式為yyyy-MM-DD.log;

layout="${date:format=yyyyMMddHHmmss} ${callsite} ${level} ${message}" 設置日志輸出格式(可查閱官網說明).


③,name="file"表示配置的規則適用于Logger名稱為“file”,如果填*,則表示所有的Logger都運用這個規則。
minlevel="Debug"maxlevel="Off"用來配置記錄的級別為最小是"Debug"最大為"Off"(備注:此處也可以用levels="Debug,Off"來設置,說明只輸出Debug級別以及Off級別的日志,官網此處解說有誤:)
writeTo="T1"其中T1,T2分別代表上面設置的targets名稱為T1以及T2的目標輸出,此處表示將分別將日志信息輸出到文件/控制臺。


有必要說一下消息級別

解壓下載的壓縮包:http://nlog-project.org/ 請從官網下載

解壓后 在src/NLog中有個LogLevel.cs文件,里面有消息等級的相關信息(可以打開看看,總共分6級,從低到高)

C# NLog體驗


好了,代碼測試:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NLog;
namespace MyNLog
{
    public class Program
    {
        private static Logger @loggerFile = LogManager.GetLogger("file");
        private static Logger @loggerConsole = LogManager.GetLogger("console");
        static void Main(string[] args)
        {
            loggerFile.Debug("A File test Message = Debug");
            loggerFile.Warn("A File test Message = Warn");
            loggerFile.Trace("A File test Message = Trace");
            loggerConsole.Debug("A Console test Message = Debug");
            Console.Read();
        }
    }
}

解析:

① ,@loggerFile類是往文件當中寫日志的

② ,@loggerConsole類是往控制臺寫消息的

C# NLog體驗

至于日志在Debug/logs中

C# NLog體驗

因為配置問題,參見App.config , 2017-03-09.log中沒有A File test Message = Trace

C# NLog體驗


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

定远县| 繁昌县| 杨浦区| 遂川县| 扬州市| 榆林市| 安丘市| 河北区| 云林县| 黎城县| 沂南县| 内江市| 敦煌市| 都匀市| 库尔勒市| 思茅市| 武平县| 商城县| 大荔县| 康乐县| 高州市| 容城县| 基隆市| 桐柏县| 高尔夫| 凤翔县| 永城市| 斗六市| 芦溪县| 图木舒克市| 石棉县| 盐山县| 八宿县| 呼图壁县| 东山县| 墨竹工卡县| 永寿县| 陈巴尔虎旗| 合江县| 泾川县| 西峡县|