用于解析逗号分隔日志文件的 logstash 过滤器

logstash filters to parse comma separated log file

我有一个如下所示的日志文件:

2019-04-19 08:30:06,477 DEBUG [org.mobicents.smsc.library.CdrGenerator] 2019-04-19 08:30:01.960,466,2,1,01706488575,1,1,success,SMPP,message,3rdPartyName,10614279,null,null,01702993001,412012102179043,null,null,0170260020,0,0,null,0,0,,,,2393,"*466#
nxxxxxxxxxxxxxxx","",,,

我想在 logstash 上过滤此日志,并且只获取和存储少数列。 如您所见,日志列以逗号分隔,我想忽略所有列,除了:

Logstash 有一个 CSV filter 可以为您提供字段中的每一列。好处是它会被正确解析。缺点是您必须从事件中删除不需要的列。

您也可以为 grok 过滤器编写自己的模式。网上有很多关于这个的例子和教程。