Я разрабатываю веб-приложение ASP.NET Core (.NET 8), в котором использую NLog в качестве библиотеки журналирования.
В моем приложении есть служба, в которой я хочу, чтобы средство ведения журнала выводило данные в определенный файл вместо основного файла журнала, в зависимости от свойства в моем экземпляре службы.
Я настроил свою конфигурацию ведения журнала с целью, которая имеет динамический путь вывода на основе переменной, например:
Однако я не знаю, как установить значение свойства runid для конкретного экземпляра регистратора. В идеале я бы хотел сделать что -то вроде этого: < /p>
Код: Выделить всё
public MyService(ILogger logger, MyContext ctx)
{
logger.SetProperty("RunId", ctx.RunId);
}
но я не могу найти что-то подобное с помощью NLog, все, что я нахожу в Интернете и здесь по другим вопросам, - это как установить свойство глобально, вызвав NLog.MappedDiagnosticsLogicalContext.Set но для меня это нехорошо, потому что если я создам несколько экземпляров MyService, они перезапишут друг друга, верно? Или я что-то упускаю?
Подробнее здесь:
https://stackoverflow.com/questions/793 ... c-property