Logstash
Logstash RabbitMQ 輸出外掛
我是 Logstash 的新手,我想將 nginx 消息儲存在 RabbitMQ 隊列中,如下所示:
Nginx 日誌 -(輸入)-> Logstash -(輸出)-> RabbitMQ
日誌儲存配置:
filter { grok { match => { "message" => "%{IPORHOST:remote_ip} - %{DATA:user_name} \[%{HTTPDATE:access_time}\] \"%{WORD:http_method} %{DATA:url} HTTP/%{NUMBER:http_version}\" %{NUMBER:response_code} %{NUMBER:body_sent_bytes} \"%{DATA:referrer}\" \"%{DATA:agent}\"" } } } output { rabbitmq { exchange => "nginx_app" host => "localhost" exchange_type => "topic" persistent => true passive => true heartbeat => 10 arguments => {"x-ha-policy" => "all" } codec => "plain" port => 5672 } }
在 RabbitMQ Web 控制台中調試期間,我看到以下內容:消息對 RabbitMQ 可見,但當我使用簡單的 python 腳本將消息添加到隊列時,它不會同時將它們保存在隊列中(所有內容都已保存), 輸入圖像描述這裡
我的配置有什麼問題?為什麼 RabbitMQ 不保存消息?
先感謝您!
我找到了問題的根本原因,我需要在我的隊列中添加一個綁定,添加綁定後,每條消息都正確記錄。 在此處輸入圖像描述