Tôi đang chèn lấp các nhật ký của mình vào Elasticsearch. Vì vậy, để tạo một chỉ số theo ngày ghi trong đó là dấu thời gian, tôi sử dụng date
lọc như thế này:Dấu thời gian Syslog không có năm?
date {
"locale" => "en"
match => ["timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss", "ISO8601"]
target => "@timestamp"
}
Tôi đang sử dụng các bản ghi từ syslog, và định dạng syslog timestamp doest không có năm:
# Syslog Dates: Month Day HH:MM:SS
SYSLOGTIMESTAMP %{MONTH} +%{MONTHDAY} %{TIME}
Vì vậy, sau khi sử dụng bộ lọc ngày, chỉ mục được tạo giống như logstash-2015.12.26
nếu tôi đọc nhật ký ngày 26 tháng 12 năm 2014. Vì dấu thời gian không có sẵn trong nhật ký, nên hãy chọn năm hiện tại theo mặc định.
Bất kỳ ý tưởng nào về cách tạo chỉ mục chính xác?
Vì vậy, ngoại trừ mã cứng tạm thời, có không phải là cách giải quyết nào? –
Tôi không tin là có, không. Vâng, ngoại trừ việc đặt lại thời gian trên máy nơi bạn chạy Logstash nhưng đó sẽ là một ý tưởng thực sự tồi tệ. –