第一次很長時間。
我有這個日志訊息:
2022/05/04 09:24:08 INTERESTING UpdateStatus: active: 45 waiting: 0 connections: 91 max dbcmd queue length: 3 max dbcmd response time: 19ms cmds processed: 6 nacks: 0 nresent: 0
我有這個 grok 模式來決議它:
%{DATE} %{TIME} %{WORD:log_level} %{WORD:update_status}: active: %{INT:active} waiting: %{INT:waiting} connections: %{INT:connections} max dbcmd queue length: %{NUMBER:max_dbcmd_queue_length} max dbcmd response time: %{WORD:max_dbcmd_response_time} cmds processed: %{NUMBER:cmds_processed} nacks: %{NUMBER:nacks} nresent: %{NUMBER:nresent}
一切都很好,除了一件事,
這個值我想提取回應時間并繪制 int (19)。
max dbcmd response time: 19ms
但是讓我感到高興的唯一方法是因為“ms”而將其設為 WORD。
max dbcmd response time: %{WORD:max_dbcmd_response_time}
我真的希望 19 成為一個 INT,但我不知道如何洗掉或忽略標記在數字“19ms”末尾的“ms”。
uj5u.com熱心網友回復:
您可以使用INT,但您需要在模式部分之后添加ms或:\w*
%{INT:max_dbcmd_response_time}ms
%{INT:max_dbcmd_response_time}\w*
完整模式:
%{DATE} %{TIME} %{WORD:log_level} %{WORD:update_status}: active: %{INT:active} waiting: %{INT:waiting} connections: %{INT:connections} max dbcmd queue length: %{NUMBER:max_dbcmd_queue_length} max dbcmd response time: %{INT:max_dbcmd_response_time}ms cmds processed: %{NUMBER:cmds_processed} nacks: %{NUMBER:nacks} nresent: %{NUMBER:nresent}
或者
%{DATE} %{TIME} %{WORD:log_level} %{WORD:update_status}: active: %{INT:active} waiting: %{INT:waiting} connections: %{INT:connections} max dbcmd queue length: %{NUMBER:max_dbcmd_queue_length} max dbcmd response time: %{INT:max_dbcmd_response_time}\w* cmds processed: %{NUMBER:cmds_processed} nacks: %{NUMBER:nacks} nresent: %{NUMBER:nresent}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/473573.html
上一篇:價格不會出現在html決議中
