Как ТАКЖЕ отправлять логи kotlin-logging (sl4j-simple?) На свой сервер
У меня есть рабочее решение с использованием kotlin-logging и slf4j-simple. Он счастливо печатает на консоль.
Вопрос: Я также хотел бы отправить строки журнала в свою собственную функцию, чтобы я мог сохранить их в своем альтернативном месте назначения (это не один из встроенных, как файл).
Есть ли простой интерфейс, который я переопределяю? С четырьмя слоями (kotlin-logging, slf4j, slf4j-simple, Logger) я не уверен, с чего начать. Я думал, что это будет так же просто, как
someLoggingThing.addDestinationForSufficientlySevere(object:Logger { str->
myAltLoggingThing.log(str)
})
Отказ от ответственности: я не знаю подробных методов ведения журналов и фасадов, поэтому мне так понравилась простота регистрации kotlin (лямбда решает проблему "не думай, если отладка отключена")
private val logger = KotlinLogging.logger {}
logger.debug { "I'm a debug lumberjack and I'm ok $withComplicatedStuff" }
1 ответ
Это можно сделать, внедрив собственный регистратор и привязав его к slf4j. Таким образом, он заменит "простое ведение журнала". Если вы хотите оба в этом регистраторе, вы можете вызвать простой регистратор. Смотрите подробности здесь: Реализация Custom Logger с slf4j