编辑
程序反恐精英
using NLog; using System; namespace FacilitationPortal.WebJob { class Program { static Logger logger = LogManager.GetCurrentClassLogger(); static void Main(string[] args) { string nlogServicePath = AppDomain.CurrentDomain.BaseDirectory + "NLog-WebSchedulerService.config"; NLog.LogManager.Configuration = new NLog.Config.XmlLoggingConfiguration(nlogServicePath, true); logger.Debug("Initializing the Web Scheduler Service"); Console.WriteLine("Initializing the Web Scheduler Service"); StartServices(); } private static void StartServices() { logger.Debug("INSIDE - START SERVICES"); } } }
<?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" autoReload="true"> <targets > <target xsi:type="File" name="logfile" fileName="${basedir}/logs/WebScheduler.log" layout="${longdate} ${level:uppercase=true:padding=5} ${gdc:item=hostname} ${gdc:item=useremail} (${logger} - ${mdc:item=actionname}) ${message} ${exception:format=tostring}" archiveEvery="Day" archiveFileName ="${basedir}/logs/WebScheduler.${date:format=yyyy-MM-dd HH.mm}.{#}.zip" archiveNumbering ="Sequence" maxArchiveFiles="30" fileAttributes="Compressed" enableArchiveFileCompression = "true"> </target> </targets> <rules> <logger name="*" minlevel="Debug" writeTo="logfile"> </logger> </rules> </nlog>
安慰WriteLine()正在azure控制台中打印日志。但是伐木工。Debug()未在exe所在的位置创建日志文件。如果我在本地系统中运行相同的应用程序,则会创建日志文件。
谢谢
首先,使用 NLog-WebSchedulerService.config D:\local\Temp\jobs\continuous\WebJob1\1hxylleo.lzh\logs D:\local\Temp\jobs\triggered 文件夹
NLog-WebSchedulerService.config
D:\local\Temp\jobs\continuous\WebJob1\1hxylleo.lzh\logs
D:\local\Temp\jobs\triggered
fileName="D:\home\data\logs\WebScheduler.log" ,而不是将日志存储在 D:\local\Temp
fileName="D:\home\data\logs\WebScheduler.log"
D:\local\Temp