[英]Logging With NLog In Azure WebJobs
我有一個NLog配置,該配置對我的Web應用程序(ASP.NET Core)很好用。 現在,我試圖將NLog添加到我的webjobs中,但是我不知道該怎么做。
在webjob項目內的Program.cs中,我需要以某種方式注入IHostingEnvironment和ILoggerFactory(將二者都注入到Web應用程序的StartUp構造函數中)。 一旦我知道該怎么做,就應該可以完成配置。
如果那不可能,我有什么選擇?
我不希望使用傳遞到webjob方法中的TextWriter類,因為我想提取日志並將其路由到我最終希望的位置很困難。
以下是在WebJob中使用NLog的步驟。
步驟1,為您的WebJob安裝NLog.Config軟件包。
Install-Package NLog.Config
步驟2,將規則和目標添加到NLog.config文件。 以下是將日志寫入文件的示例。
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<targets>
<target name="logfile" xsi:type="File" fileName="file.txt" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="logfile" />
</rules>
</nlog>
步驟3,使用LogManager類獲取記錄器實例。
private static Logger logger = LogManager.GetLogger("MyLog");
步驟4,獲得記錄器實例后,可以使用以下代碼編寫日志。
logger.Trace("Sample trace message");
logger.Debug("Sample debug message");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.