nlog core整合專案輸出本地檔案

2021-09-17 07:47:08 字數 2147 閱讀 9487

nlog節點:

autoreload:自動載入修改的配置檔案

internalloglevel:nlog日誌輸出日誌級別

internallogfile:nlog本身日誌生成儲存路徑

extensions節點:新增程式引用集,這裡使用aspnetcore

variable :nlog變數宣告,宣告之後可以在其他地方節點使用,使用方式如下:

--宣告乙個產品名稱

--日誌輸出資料夾c盤下

$:指定檔案輸出到系統部署根目錄下

rules->logger:

name:日誌輸出格式是否過濾,"*":所有,"mircrosoft.*":mircrosoft開頭的過濾輸出;

level:指定檔案輸出日誌級別,"error"只輸出錯誤的日誌

levels:可以指定多個輸出,多個用','分割;

writeto:指定的rules寫入到targets->target幾點下的"name"對應;

很多配置參考資訊:

nlog官網:

完成了nlog.config的配置,程式**就可以在aspnetcore中使用了;

#region nlog配置

logge***ctory.addconsole(configuration.getsection("logging"));

logge***ctory.adddebug();

logge***ctory.addnlog();

env.configurenlog(@"xmlconfig\nlog.config");

#endregion

3.nlog.config配置檔案必須在部署目錄的根節點下面存在,不然會找不到nlog.config配置資訊異常;

4.完成配置工作可以使用了.

--1.使用nlog本身的日誌方法進行輸出:

var _logger = nlog.logmanager.logfactory.getcurrentclasslogger();

_ogger.error("輸出一條錯誤資訊成功!");

--2.使用"microsoft.extensions.logging"方法輸出,nlog本身實現了microsoft.extensions.logging的擴張介面,所以也可以使用"microsoft.extensions.logging"中的方法進行日誌輸出.使用該dll中的方法可以使用依賴注入的方式進行呼叫:

private readonly ilogger_logger;

public democontroller(ilogger)

_logger.logerror("error 錯誤,我是使用microsoft.extensions.logging");

基本上在aspnetcore上使用nlog日誌就是這麼的,也可以寫入db,tcp,nosql等其他的介質中,具體的可以參考

**:,這裡有很多的例項配置方式;

下面的配置是輸出到本地檔案中的完整配置,

在使用中遇到個問題,就是layout配置中的"$"這個異常指定了輸出不輸出詳細的異常資訊,

只輸出我自己的描述message資訊,throw出的異常確獲取不到的.不知道怎麼回事,它本身方法有傳excepiton的.看例1:

例1:2019-04-09 12:35:20.7370 error|demo-yf16pc 0

[logger]:dolphin.web.controllers.democontroller

[callsite]:demo.web.controllers.democontroller.index(e:\src\presentation\demo.web.admin\controllers\democontroller.cs:46)

[stacktrace]:objectmethodexecutor.execute => .lambda_method => democontroller.index

[message]:error 錯誤

**中是這麼寫的:

try

catch (exception ex)

--輸出本地檔案完整配置nlog.config

<?xml version="1.0" encoding="utf-8" ?>

專案整合管理

專案整合管理就是為滿足各方需求而進行協調以達到預期目的的過程。它是一項綜合性 全域性性的工作,主要內容是在相互衝突的目標或可選擇的目標中權衡得失。雖然所有的專案管理過程在某種程度上都可看成是乙個整體,但在整合管理中所描述的這些過程是最基本的管理知識。整合管理主要包括 專案計畫開發 專案計畫實施 專案...

專案整合管理

專案整合管理就是為滿足各方需求而進行協調以達到預期目的的過程。它是一項綜合性 全域性性的工作,主要內容是在相互衝突的目標或可選擇的目標中權衡得失。雖然所有的專案管理過程在某種程度上都可看成是乙個整體,但在整合管理中所描述的這些過程是最基本的管理知識。整合管理主要包括 專案計畫開發 專案計畫實施 專案...

專案整合管理

專案整合管理就是為滿足各方需求而進行協調以達到預期目的的過程。它是一項綜合性 全域性性的工作,主要內容是在相互衝突的目標或可選擇的目標中權衡得失。雖然所有的專案管理過程在某種程度上都可看成是乙個整體,但在整合管理中所描述的這些過程是最基本的管理知識。整合管理主要包括 專案計畫開發 專案計畫實施 專案...