Клиентская библиотека Java для Grafana Loki
В настоящее время мы используем java-клиент statsd для передачи определенных данных приложения в графит. На основе этих данных мы строим дашборды в Grafana.
Планирую перейти на Grafana Loki. Мне было интересно, можно ли передать определенные данные непосредственно в Grafana Loki с помощью такого демона, как statsd. Есть ли для этого какие-нибудь клиентские библиотеки java. Если да, дайте мне ссылку на репозиторий maven.
4 ответа
Вы можете попробовать приложение Loki4j Logback https://github.com/loki4j/loki-logback-appender (раскрытие: я его автор).
Loki4j - это чистый Java-клиент для Loki с гибкими параметрами форматирования меток и сообщений журнала. Он поддерживает как JSON, так и Protobuf разновидности Loki push API. Вы должны иметь возможность отправлять любые данные напрямую в Loki с помощью Loki4j.
TinyLoki - чистая библиотека Java 1.8 с нулевой зависимостью для настольных компьютеров и Android. Не очень оптимизирован, но очень прост в использовании в качестве независимого отправителя журнала с настраиваемыми метками.
https://github.com/mjfryc/mjaron-tinyloki-java
dependencies {
implementation 'io.github.mjfryc:mjaron-tinyloki-java:0.1.22'
}
Я создал Java-клиент для отправки журналов в Loki. На его основе построено приложение log4j (у моих работодателей он используется на производстве для ежедневной загрузки 10 ГБ журналов).
Он разработан, чтобы быть свободным от блокировок и свободного места на пути ведения журнала. Использует Netty, поэтому отправка пакетов в Loki выделяет, но это очень эффективно.