我正在开发使用NLog的应用程序,以便我们跟踪工作流程的执行情况。每次执行都被指定为跟踪ID' (GUID)保留通过将组成和发送的消息绑定在一起。理想情况下,我们希望使用名称中的跟踪ID将每个执行记录到它自己的日志文件中。 e.g。
日志\ MyExecution_97301078-2119-48e9-876d-64002257b399.txt
日志\ MyExecution_1e5b60d5-95b5-4fdc-94cc-886d379e2b13.txt
日志\ MyExecution_07b427a9-106d-4865-a288-625e1cd56dd1.txt
这是否可以使用NLog目标实现?
答案 0 :(得分:1)
您不限于在配置文件中注册多个记录器;你可以使用Configuration API。例如(从链接中获取,您可能需要根据您的情况进行编辑)
// create configuration object
var config = new LoggingConfiguration();
// create a target
var fileTarget = new FileTarget();
config.AddTarget("SomeName", fileTarget);
// set properties
fileTarget.FileName = "something/guid.txt";
// activate the configuration
LogManager.Configuration = config;