Что бы ваш синглтон сделал точно?
Одним из преимуществ библиотек, таких как NLog (и log4j и т. Д.), Является то, что при регистрации он будет регистрироваться с соответствующим регистратором классов, что означает, что вы можете правильно настроить ведение журнала. Если у вас был синглтон с одним экземпляром Logger
, вы сразу же потеряете это преимущество. Я бы рекомендовал использовать технику, показанную в документации, где каждый класс имеет свой собственный регистратор.
Что касается излучающие имя класса и т.д., посмотрите на layout renderers странице Документов, которая имеет много вариантов: {callsite}
и {threadid}
может быть то, что вы после этого.
Вы говорите: создайте экземпляр Nlog в каждом классе, в который хотите войти. Тогда он знает, из какого класса он вызывается? Я, хотя синглтон будет означать, что он только экземпляр один раз .. У меня есть ощущение, что я запутался в том, как его использовать .... – Adam
Создайте экземпляр 'Logger' в каждом классе, в котором вы хотите его использовать, да ... затем просто войдите через этот регистратор. Да, вы в конечном итоге создадите больше экземпляров, но в интересах мелкозернистой конфигурации. Это не похоже на то, что он будет загружать всю сборку отдельно для каждого экземпляра 'Logger', который вы создаете ... –
Jon .. Я нахожу, что ваши ответы очень полезны. Быстрое ускорение быстро расстраивает .. страница рендеринга решила мою проблема ... Но, создав отдельный экземпляр журнала в каждом классе, я запишу ... что такое финишный контроль, который у меня есть? вы говорите в основном, что я могу включить ведение журнала только для определенного класса .. есть ли другие преимущества. ТАКЖЕ .. видя, что вы так полезны. У вас есть один или может быть 3 приложения на ПК. Я хочу войти в систему. Если я не отправлю их в файл журнала .. каким образом вы бы сохранили их .. И какой зритель вы использовали бы, чтобы пробираться через журналы? – Adam