dead letter queueの中身をElasticsearchにて可視化したいです。
エラー理由も可視化したいので、以下のconfファイルにて試したのですが、エラーが出力されます。
input {
dead_letter_queue {
commit_offsets => true
path => "/var/lib/logstash/dead_letter_queue"
pipeline_id => "test"
}
}
filter {
ruby {
code => "event.set('timestamp', event.get('[@metadata][dead_letter_queue][entry_time]').toString())"
}
date {
match => [ "timestamp", "ISO8601" ]
}
ruby {
code => "event.set('[@metadata][local_time]',event.get('[@timestamp]').time.localtime.strftime('%Y-%m-%d'))"
}
mutate {
add_field => {
"reason" => "%{[@metadata][dead_letter_queue][reason]}"
"plugin_id" => "%{[@metadata][dead_letter_queue][plugin_id]}"
"plugin_type" => "%{[@metadata][dead_letter_queue][plugin_type]}"
}
}
}
output
(以下省略)
エラーメッセージ
[2021-06-10T16:10:13,951][ERROR][logstash.filters.ruby ][dead_letter_queue][02110b256d212b0326e6a29e41d6bad43a326ac270f1db8816335c7ea9ad325b] Ruby exception occurred: undefined method
toString' for 2021-06-10T07:10:08.301Z:LogStash::Timestamp`
原因と対処法をご教示頂けないでしょうか。以下のサイトを参考にしております。