Çalışan bir Redis destekli ELK yığınım var, ancak ara sıra, ElasticSearch bir nedenle veya başka bir nedenle kullanılamıyorsa bir sorun yaşayacağım. Günlük olaylarınLogstash + Elasticsearch failover yerel olarak ya da yeniden deneyin
Akış:
- Sunucular
- Sunucular yerel Redis hizmetine bir Logstash sunucusuna uzaktan
- Logstash-gelen yazar iterek, loglamak, log-kurye çalıştırmak günlükleri oluşturmak
- Redis, işlenecek olan ve arabellek olarak davranan olayları tutuyor
- Redis kuyruğundaki Logstash-giden okları grok ve diğer filtreleri çalıştırır, sonra da Elasticsearch kümesine çıkar.
logstash-incoming.conf
input {
courier {
port => 123
transport => "tcp"
}
}
output {
redis {
host => "127.0.0.1"
data_type => "list"
key => "logstash"
}
}
logstash-outgoing.conf
5. adımda bir başarısızlık varsa, olaylar REDIS dan attı edilirinput {
redis {
host => "127.0.0.1"
data_type => "list"
key => "logstash"
}
}
output {
elasticsearch {
hosts => "elasticsearchcluster.local"
}
}
, Logstash üç çalışacağız zamanlar, daha sonra toplu veri yükünü karartmak, veri koleksiyonumda deliklere neden olmak.
- çok daha cömert bir şeye 3 zamanlardan bekleme x 2 saniye yeniden deneme dışarı uzatın:
için ya bir yolu var mı.
- Hatalı yükleri diske yazarak, sorun giderildiğinde bunları ElasticSearch içine geri göndermemi sağlayın.
- İdeal olarak, her ikisi de. Ben ikisinin de yazma anında düşünüyorum