首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Logparser计数组件

Logparser计数组件
EN

Stack Overflow用户
提问于 2013-04-17 23:24:15
回答 1查看 141关注 0票数 2

我有一个从PLC转储出来的每日日志文件,示例文本是(它没有标题,只有原始数据):

代码语言:javascript
复制
5/29/2009 3:05:33 PM: PLC Requested Hand Scan
5/29/2009 3:05:40 PM: HH Label Data Retrieved: 078797312
5/29/2009 3:05:40 PM: PLC Requested Scale Weight
5/29/2009 3:05:40 PM: Scale Data Retrieved:    56.0
5/29/2009 3:05:40 PM: ProcessMOSData Loop: 1
5/29/2009 3:05:40 PM: About to read
5/29/2009 3:05:40 PM: Read: False
5/29/2009 3:05:40 PM: ProcessMOSData Loop: 2
5/29/2009 3:05:40 PM: About to read
5/29/2009 3:05:40 PM: Read: True
5/29/2009 3:05:40 PM: Found Bin02
5/29/2009 3:05:40 PM: ProcessMOSData Loop: 3
5/29/2009 3:05:40 PM: About to read
5/29/2009 3:05:40 PM: Read: False
5/29/2009 3:05:40 PM: ProcessMOSData Loop: 4
5/29/2009 3:05:40 PM: About to read
5/29/2009 3:05:40 PM: Read: False
5/29/2009 3:05:40 PM: ProcessMOSData Loop: 5
5/29/2009 3:05:40 PM: About to read
5/29/2009 3:05:41 PM: Read: False
5/29/2009 3:05:41 PM: ProcessMOSData Loop: 6
5/29/2009 3:05:41 PM: About to read
5/29/2009 3:05:41 PM: Read: False
5/29/2009 3:05:41 PM: ProcessMOSData Loop: 7
5/29/2009 3:05:41 PM: About to read
5/29/2009 3:05:41 PM: Read: False
5/29/2009 3:05:41 PM: ProcessMOSData Loop: 8
5/29/2009 3:05:41 PM: About to read
5/29/2009 3:05:41 PM: Read: False
5/29/2009 3:05:41 PM: ProcessMOSData Loop: 9
5/29/2009 3:05:41 PM: About to read
5/29/2009 3:05:41 PM: Read: False
5/29/2009 3:05:41 PM: Got all data
5/29/2009 3:05:41 PM: Wrote good label ack

我有15个“关键短语”想要数一数。我有1150个文本文件,我可能会将它们合并到一个大的文本文件中,然后在初始读取后将其读取并转储到新的表中。它可以输出到csv或sql,这并不重要。最后一部分将只是监控流程更改的改进如何提高该领域的效率。

例如,关键短语之一是"PLC请求手动扫描“,因此在示例中它将为5/29/2009 1次。我认为顶部的标题将是关键短语,左侧将是不同的日期。这似乎是logparser可以做的事情,但是没有头部,每行只是一个长字符串,我不确定如何开始。

EN

回答 1

Stack Overflow用户

发布于 2013-10-05 11:45:37

是的,你可以使用LogParser来解决这个问题。为了轻松获得正确的查询,安装Logparser蜥蜴,这是一个简单而免费的工具,你可以在LogParser上测试你的查询,然后再编码。

将Logparser输入设置为文本行输入格式。

在FROM子句中,您可以根据需要连接任意多个文件,如'filename‘、'filename2’、'filename3‘等(所有文件必须具有相同的结构)

下面是一个logparser查询,它将帮助您开始

代码语言:javascript
复制
SELECT extract_token(Text,0,' ') AS Date,
       strcat(extract_token(extract_token(Text,1,' '),0,'PM: '),' PM') AS Time,
       extract_token(Text,1,'PM: ') AS MSG
FROM 'F:\test.txt'

您也可以按msg分组,这样做

代码语言:javascript
复制
SELECT extract_token(Text,1,'PM: ') AS MSG
FROM 'F:\test.txt'
GROUP BY MSG
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16064036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档