簡體   English   中英

Logstash 不替換 http output 插件中的變量

[英]Logstash doesn't replace variables in http output plugin

我正在嘗試設置一個 logstash 管道,該管道根據我日志中的字段[logstash_url]將日志輸出到不同的其他 logstash 實例:

http {
    url => "http://%{[logstash_url]}:5044"
    retry_failed => 'false'
    http_method => 'post'
    retry_non_idempotent => 'true'
    format => 'json_batch'
    http_compression => 'true'
}

問題是 logstash 沒有替換[logstash_url]並且我得到以下跟蹤:

[ERROR] 2022-11-16 14:20:04.014 [[main]>worker0] http - Could not fetch URL {:url=>"http://%{[logstash_url]}:5044", :method=>:post, :message=>"Malformed escape pair at index 16: http://%{[logstash_url]}:5044", :class=>"Java::JavaNet::URISyntaxException", :will_retry=>false}

[logstash_url]字段確實存在,我什至可以在過濾器或其他 output 類型中使用它。

我使用的圖像是docker.elastic.co/logstash/logstash:8.1.0

原來是format => 'json_batch'選項導致了這個問題。 我刪除了它, [logstash_url]現在被正確替換,日志被轉發到適當的 logstash 實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM