Tomcat günlük dosyalarına genel bakış için Logstash + Elasticsearch + Kibana kullanıyorum.Logstash: dosya adı bir alan olarak nasıl eklenir?
Her günlük girdisi için, geldiği dosyanın adını bilmem gerekiyor. Bunu bir alan olarak eklemek isterim. Bunu yapmanın bir yolu var mı? Ben biraz googled ettik ve sadece this SO question bulduk, ama cevap artık güncel değil. Ben logstash her seferinde yeniden yapılandırmak gerek sonra
input {
file {
type => "catalinalog"
path => [ "/path/to/my/files/catalina**" ]
add_field => { "server" => "prod1" }
}
}
Ama yeni bir olası vardır:
Şimdiye kadar gördüğüm tek çözüm bu kadar gibi farklı "add_field" ile olası her dosya adı için ayrı yapılandırma belirtmektir dosya adı. Daha iyi bir fikir?
Cevabınız için teşekkürler :) Bu dosya adı INSIDE log dosyası içeriğine bakmıyor mu? – machinery
Genellikle mesaj alanında grok ile çalışmazsınız, ancak logstash tarafından otomatik olarak eklenen özel bir alan olan yol alanını kullanırım. –
Çok teşekkürler :) Çözümünüz çalışıyor - "{GREEDYDATA: dosyaadı}" önce yüzde işaretini ekledikten sonra. Lütfen cevabınızı güncelleyin ve çözüm olarak kabul ediyorum. Sadece "yol" alanının varlığından haberdar değildim. – machinery