我以json格式從多個服務器創建事件計數器的日誌,然後使用logstash將計數器放入Graphite/Grafana。這有效,但我沒有在Grafana中看到所需的格式。我希望能夠基於服務器一起顯示多個計數器。現在一切顯示在第一個度量(包括服務器)。如果我選擇服務器,則沒有可用於顯示計數器的第二個度量標準。我在想我發送給Graphite的格式不正確。Graphite的logstash數據的格式
這是一個日誌。每一行都是一個服務器(每個日誌中的服務器),一個日期和一個計數器。如果需要,我可以更改日誌格式。
{"Server":"10.254.70.52","@timestamp":"2016-05-13T20:58:24.0920228Z","oneLevelSearchOps":"11.07"}
{"Server":"10.254.70.52","@timestamp":"2016-05-13T20:58:24.0920228Z","searchOps":"12.92"}
{"Server":"10.254.70.52","@timestamp":"2016-05-13T20:58:24.0920228Z","errors":"0"}
這是logstash .conf文件
input {
file {
path => "/home/local/scott/difData-10.254.70.51.txt"
codec => "json"
sincedb_path => "/dev/null"
start_position => "beginning"
}
}
output {
stdout { codec => rubydebug }
graphite{
codec => "plain"
fields_are_metrics => true
host => "127.0.0.1"
port => "2003"
}
}
使用fields_are_metrics需要或沒有被髮送到石墨。 sincebd_path和start_position用於調試。
下面是從標準輸出
{
"Server" => "10.254.70.51",
"@timestamp" => "2016-05-13T21:28:40.918Z",
"modifyEntryOps" => "0.10",
"@version" => "1",
"path" => "/home/local/NV/sfoley/difData-10.254.70.51.txt",
"host" => "lab-graphite"
}
一個行應該石墨能夠正確解讀?由於我將更多數據添加到日誌中,我寧願更改json格式的日誌,而不是將過濾器添加到每個計數器的logstash .conf文件(如果需要的話),但我也可以執行此操作。
感謝您的任何幫助。