- 论坛徽章:
- 0
|
本帖最后由 huarte 于 2016-07-04 18:16 编辑
需求是这样的:服务器有周期性生成的一些日志文件,文件名filename,现在我需要用SHELL程序来读取日志文件的内容,并逐条发送;
日志格式:
product_id,vendor_code,event_dt,event_category,featureValue,raw_event
8814,"ICMP_PING_事件","07/01/16 17:54:27 CST","IdsIps","13","Jul 01 17:58:32 10.15.10.1 TIME:20160701181239"
日志读取指令:
cat filename|logger -p user.info
之前采用这种方式,但发现发送是把整个日志文件以一个数据包的形式一次发出了,不满足要求;
如图:
正确情况应该是每行都要做一次logger操作,发送一次。问题是用什么工具,AWK或SED实现每次取一行,做一次判断(当第一列product_id为8814且第二列vendor_code为ICMP_PING_事件时发送本行日志消息),并做一次logger操作把哪行的日志发送出去,一直循环直到把最后一行发出去。
|
-
2.png
(13.88 KB, 下载次数: 103)
|