grok模式-查找逗号分隔的数据

dy2hfwbg  于 2021-06-15  发布在  ElasticSearch
关注(0)|答案(1)|浏览(582)

我试图捕捉以下数据记录的grok模式:
--一排--
02018-12-17 22:40:30.00025980000,92,真,0400,33,02018-12-16 22:40:30.0002018-12-17 05:53:30.000433,17,32,1,1,182018-12-17,非常清醒
--第二排--
12018-12-17 22:41:30.00025980000,92,真,0400,33,02018-12-16 22:40:30.0002018-12-17 05:53:30.000433,17,32,1,1,182018-12-17,清醒
这是我的格洛克模式:

  1. %{NUMBER:ID}%{NOTSPACE}%{TIMESTAMP_ISO8601:RecordedDateTimeStamp}*%{NOTSPACE}%{NUMBER:Efficiency}%{NOTSPACE}%{DATA:IsMainSleep}%{NOTSPACE}%{NUMBER:MinutesAfterWakeup}%{NOTSPACE}%{NUMBER:MinutesAsleep}%{NOTSPACE}%{NUMBER:MinutesAwake}%{NOTSPACE}%{NUMBER:MinutesToFallAsleep}%{NOTSPACE}%{NUMBER:SleepStartTime}%{NOTSPACE}%{NUMBER:SleepEndTime}%{NOTSPACE}%{NUMBER:TimeInBed"}%{NOTSPACE}%{NUMBER:RestlessCount}%{NOTSPACE}%{NUMBER:RestlessDuration}%{NOTSPACE}%{NUMBER:AwakeCount}%{NOTSPACE}%{NUMBER:AwakeDuration}%{NOTSPACE}%{NUMBER:AwakeningsCount}%{NOTSPACE}%{TIMESTAMP_ISO8601:DateOfSleep}%{NOTSPACE}%{DATA:SleepState}

我不知道为什么,但是它在kibana的grok调试器工具中不起作用。
有人能帮我找出我的格洛克模式有什么问题吗?
先谢谢你

cbeh67ev

cbeh67ev1#

grok模式有18个字段,但数据记录有19个字段,第三个字段在两个记录上的值相同(25980000,这是作业id吗?),在您的模式中没有考虑。
另外,还有两个时间戳没有被解析为时间戳,您需要使用$锚定最后一个字段,以告知每条消息的结束位置(grok将在其中尝试匹配任何内容)
试试这种怪癖模式:

  1. %{NUMBER:ID},%{TIMESTAMP_ISO8601:RecordedDateTimeStamp},%{NUMBER:jobId},%{NUMBER:Efficiency},%{DATA:IsMainSleep},%{NUMBER:MinutesAfterWakeup},%{NUMBER:MinutesAsleep},%{NUMBER:MinutesAwake},%{NUMBER:MinutesToFallAsleep},%{TIMESTAMP_ISO8601:SleepStartTime},%{TIMESTAMP_ISO8601:SleepEndTime},%{NUMBER:TimeInBed},%{NUMBER:RestlessCount},%{NUMBER:RestlessDuration},%{NUMBER:AwakeCount},%{NUMBER:AwakeDuration},%{NUMBER:AwakeningsCount},%{DATA:DateOfSleep},%{DATA:SleepState}$

刚刚在我的实验室测试了一下结果:

  1. {
  2. "MinutesToFallAsleep": "0",
  3. "MinutesAsleep": "400",
  4. "AwakeningsCount": "18",
  5. "TimeInBed": "433",
  6. "AwakeDuration": "1",
  7. "SleepEndTime": "2018-12-17 05:53:30.000",
  8. "MinutesAfterWakeup": "0",
  9. "RestlessDuration": "32",
  10. "jobId": "25980000",
  11. "MinutesAwake": "33",
  12. "SleepStartTime": "2018-12-16 22:40:30.000",
  13. "Efficiency": "92",
  14. "AwakeCount": "1",
  15. "IsMainSleep": "True",
  16. "RestlessCount": "17",
  17. "RecordedDateTimeStamp": "2018-12-17 22:41:30.000",
  18. "DateOfSleep": "2018-12-17",
  19. "ID": "1",
  20. "SleepState": "Awake"
  21. }
展开查看全部

相关问题