我有一个使用nLog的asp.net mvc应用程序,它部署在3台服务器上,我们称之为webserver1,webserver2和webserver3。目前,每个都将日志文件写入基本目录/ app date /目录。我想在特定服务器(而不是Web服务器)上只有一个日志。有没有办法做到这一点?
答案 0 :(得分:2)
您有几个选择:
您可以将文件目标配置为记录到URL指定的文件。不确定这会有两个原因:首先,不确定您是否可以通过URL指定文件名。其次,不确定将多个进程记录到同一个日志记录到同一个文件是个好主意。
更好的选择...使用DatabaseTarget将日志消息发送到数据库。
更好的选项(??)...使用NLogReceiverServiceTarget登录NLogReceiverService(WCF服务)。 NLogReceiverService WCF服务实际上只是另一个使用NLog“记录”的“应用程序”,因此可以根据需要配置其日志目标(Target)(登录到文件,数据库等)。