Мы работаем над регистрацией в наших приложениях, используя log4net. Мы хотели бы получать определенную информацию автоматически при каждом вызове. Код, вызывающий log.Info или log.Warn, должен вызывать их как обычно, без указания этой информации.
Я ищу способ создать что-то, что мы можем подключить к log4net. Что-то между приложениями ILog, используемыми для регистрации, и приложениями, так что мы можем как-то поместить эту информацию в сообщение журнала. Либо в ThreadContext, либо в LogEventInfo.
Информация, которую мы ищем, относится к asp.net; URL-адрес запроса, пользовательский агент и т. д. Также есть некоторая информация из файла .config приложений, которую мы хотим включить (идентификатор приложения).
Я хочу попасть между обычным ILog.Info и appender, чтобы эта информация также автоматически включалась для сторонних библиотек, которые также используют log4net (Nhibernate, NServiceBus и т. Д.).
Какие-либо предложения о том, где должна быть расширяемость?
Спасибо