Я бы хотел реализовать инфраструктуру ведения журналов, в которой ядро ведения журнала. net расширено еще несколькими опциями. Есть ли способ украсить встроенный ILogger
чем-то вроде
logger.Audit("message.....") -> logs to DB
logger.Log("message.....") -> calls the default implementation
logger.Trace("message....") -> logs to file, or something
Потому что в настоящее время моей лучшей идеей было бы создать отдельных поставщиков регистраторов для каждого и зарегистрировать их в DI, но так нужно вызвать три разных регистратора:
auditLogger.Log("message.....") -> logs to DB
defaultLogger.Log("message.....") -> calls the default implementation
traceLogger.Log("message....") -> logs to file, or something
Или написать класс декоратора, чтобы скрыть отдельные функции от пользователей.