Logstash:嘗試從路徑中提取子字串

Logstash:嘗試從路徑中提取子字串

我正在嘗試從 Logstash 配置中的路徑欄位中提取子字串。

「路徑」欄位如下所示:

/storage/logs/deployment/servers/hostname.example.com/server.log

在過濾器部分內我有這個:

ruby {
     code => "event.set('log_filename', 
     event.get('path').split('/').last)"
}

這很好用。我得到一個名為“log_filename”的新字段

不過我也對伺服器名稱有興趣(hostname.example.com)

所以我嘗試了這個:

ruby {
      code => "event.set('log_filename', event.get('path').split('/').[-1]) event.set('server_name', event.get('path').split('/').[-2])"
}

這根本不起作用。我的logstash 日誌中沒有收到任何錯誤,但沒有看到logstash 資料。

我在檔案名稱及其前面的欄位之後,該欄位代表它來自的主機。

我的文法有問題嗎?

相關內容