Logstash: напрямую отправлять логи в Redis Broker

1

Я читал разные статьи о централизованной регистрации. Большинство из них, похоже, используют Redis в качестве брокера и лоцстафа, чтобы написать ему.

Можно ли напрямую написать Redis из веб-приложения Java? Без входа в файл, а затем с помощью logstash чтение файла и отправка события в Redis. Или это считается плохой практикой?

Поскольку logstash написан на Java, возможно, есть даже способ использовать его выход Redis?

  • 1
    Вы можете исправить вопрос? Вы спрашиваете, возможно ли написать в Redis без файла, но затем упоминаете, что logstash читает какой-то файл. Это не имеет смысла.
  • 0
    Вопрос правильный. Он спрашивает, можно ли отправить журнал в Redis, вместо этого используйте logstash, прочитайте файл журнала и затем отправьте Redis.
Теги:
redis
logstash

1 ответ

2
Лучший ответ

Во-первых, плагин logstash записывается в Ruby, а не в Java!

Конечно, вы можете напрямую отправлять журналы на redis!

Например, это моя конфигурация индексатора logstash. Мой redis data_type - это list а ключ - logstash

input {
    redis {
            port => 5566
            data_type => "list"
            key => "logstash"
    }
}

output {
    stdout {
        codec => rubydebug
    }
}

Я запускаю redis-сервер на порт 5566, а затем индексный индекс indexstash читает журналы напрямую из redis.

Когда я использую redis-cli для ввода журнала в список logstash,

redis 127.0.0.1:5566> lpush logstash "abc"

Logstash может читать журналы из redis и создавать событие журнала. Выход из логсташа:

{
   "message" => "abc",
  "@version" => "1",
"@timestamp" => "2014-07-09T01:16:33.566Z"
}

А также вы можете здесь упомянуть о том, как реализовать redis-cli. Например, используйте jredis как ваш клиент в JAVA и отправьте журнал непосредственно в список журналов в redis.

Получайте удовольствие и попробуйте. Если у вас есть какие-либо проблемы, пожалуйста, не стесняйтесь спрашивать! :)

  • 0
    Мой плохой для Java! Спасибо за Ваш ответ :)
  • 0
    Это написано в JRuby, который работает с JVM

Ещё вопросы

Сообщество Overcoder
Наверх
Меню