资料介绍
软件简介
Plog 是 "Parse Log" 的缩写,是一套处理日志流的框架,日志流格式可以是Apache,nginx等常规意义的日志格式,也可以是自定义格式
受FlumeNG的启发,我把整个工程分成了三个部分:source,channel ,sink,已经完成了主体的共有的可以抽象出来的功能,比如线程的同步互斥,消息的生产消费,处理时间间隔的控制,还有一些简单的source,channel and sink函数
下面是一个简单的配置文件:
[source] #定义读取数据的模块名 source_module=file_source #定义源文件 source_file=./test/plog_demo.log #定义读取文件的时间间隔,单位s source_interval=5 [channel] #定义解析数据的模块名 channel_module=regrex_channel #如是正则,定义正则规则 channel_filter_regex=([\w\d.\s,]{0,})\s([0-9.]+)\s(?P\d+|-)\s(\w+)\s\[([^\[\]]+)\s\+\d+\]\s"((?:[^"]|")+)"\s(?P\d{3})\s(\d+|-)\s"((?:[^"]|")+|-)"\s"(.+|-)"\s"((?:[^"]|")+)"\s"(.+|-)"$ [sink] #定义发送数据的时间间隔 interval=60 #定义计算与发送的模块名 sink_module=zabbix_sink sink_service=cacheL2 #定义需要的key sink_zabbix_monitor_keys=200,300,400,500 #定义发送给zabbix写数据的文件 sink_zabbix_send_file=/tmp/zabbix_send_info #定义发送zabbix sender路径 sink_zabbix_sender=/usr/bin/zabbix_sender #定义zabbix的配置文件 sink_zabbix_conf=/etc/zabbix/zabbix_agentd.conf [log_config] #定义输出log的格式,级别,路径等,方便调试程序。 logging_format=%(asctime)s %(filename)s [funcname:%(funcName)s] [line:%(lineno)d] %(levelname)s %(message)s logging_level=20 logging_filename=/tmp/plog.log
使用了ConfigParse来解析配置文件
source部分的设计思路
在这一部分,我们需要处理的是数据流的来源,他可能是file,可能是socket,可能是管道,但是我不关注你的数据来源格式是什么样的,因为我无法满足这些需要各式各样的数据来源需求,而你的需要是什么样的,你最清楚,那么你只要写一个source的插件就可以了,名字随意你定,你需要的是把你写的那个插件的名字,写到plog.conf里面,默认有读取文件的file_source模块,读取管道的read_from_pipeline模块,可以直接使用。
具体实例如下:
source_module=self-define-script-name
自定义source的具体实现,参看source module下的plog/source/youself_define_source.py
channel部分
在这个部分,主要是对数据流的处理,你同样需要写一个 Python的脚本,名字随意你定,但是你需要写到 plog.conf 中,默认有解析python正则的模块可以直接使用,类似下方:
channel_module=filter_log
同样的你需要实现的channel可以参见 plog/channel/youself_define_channel.py
sink 部分
在这个部分,你同样需要写一个Python脚本,他的名字同样取决于你的个人喜好,你需要的是把你写的那个插件的名字写到plog.conf,例如下方:
sink_module=cacheL2get_monitor
同样的你需要完成的脚本可以参见plog/sink/youself_define_sink.py
如何跑一个测试
下面的测试是读取一个本地本件,解析,计算自己要想的结果发送到zabbix监控系统。
1.git clone https://github.com/SinaMSRE/Plog.git 2.cd ./Plog/test 3.sh gen_log.sh & 4.cd .. && python plog.py -c conf/plog.conf 5.you will see a file**/tmp/zabbix_send_info_test123**,its contents like followings: [xxxx@test Plog]$ cat /tmp/zabbix_send_info_test123 xxxx test123_300 0.000000 xxxx test123_200 59.000000 xxxx test123_500 0.000000 xxxx test123_400 0.000000
- ChatGPT:AI模型框架研究 0次下载
- 日志行筛选工具 0次下载
- NUMA架构下的内存数据库命令日志故障恢复 26次下载
- 基于日志信息和CNN-text的软件系统异常检测 6次下载
- AN-304:单芯片“滑尺”可处理日志、反日志进行实时处理 9次下载
- 一种基于区块链的日志安全存储方法 6次下载
- 尽可能限制NVM写操作的数据库日志方案NVRC 14次下载
- 一个高效自动化分析日志的两阶段检测方法 16次下载
- 基于时间卷积网络的通用日志序列异常检测框架 8次下载
- 一种基于框架特征的共指消解方法 7次下载
- 单片机的按键处理框架资料和函数详细说明 1次下载
- C++开源库的详细资料合集免费下载 2次下载
- C++的框架、库和资源资料汇总大全 6次下载
- 一套异步、分布、并行处理的日志记录系统 0次下载
- 改进的事件日志分簇算法研究 9次下载
- 请问Spring Boot是如何快速过滤出一次请求所有日志的? 165次阅读
- 什么是Apache日志?Apache日志分析工具介绍 189次阅读
- 西门子博途数据日志的使用 1089次阅读
- 基于Rust的Log日志库介绍 1804次阅读
- MySQL三种日志讲解 421次阅读
- 如何设计一个高效的分布式日志服务平台 272次阅读
- Spring Boot如何实现日志链路追踪 1991次阅读
- 如何设计嵌入式C语言日志分级? 428次阅读
- log4j日志框架分析 600次阅读
- 10分钟学会使用Loki日志聚合系统 858次阅读
- SpringBoot如何快速过滤出一次请求的所有日志? 505次阅读
- java日志框架 java日志配置等需要注意的几个方面 696次阅读
- 详解MySQL三大日志的作用 938次阅读
- 单片机对日志系统的设计 5025次阅读
- 轻松搭建ELK日志分析系统 1w次阅读
下载排行
本周
- 1储能电源市场分析
- 7.99 MB | 8次下载 | 免费
- 2储能电源市场分析报告
- 2.61 MB | 6次下载 | 免费
- 3磁环电感定制时应该注意什么
- 0.32 MB | 2次下载 | 免费
- 4labview文档教程资料(一)
- 24.29 MB | 2次下载 | 免费
- 5轻触三功能+常按 SOS 功能手筒LED驱动ICSD3302数据手册
- 0.60 MB | 1次下载 | 2 积分
- 6英集芯IP5353 QFN32 规格书pdf
- 2.70 MB | 1次下载 | 免费
- 7NCV78763R1DAGEVB子板数据手册
- 533.41 KB | 次下载 | 免费
- 8500mA,高效 MicroSiP™ 降压转换器TPS8269xSIP数据表
- 918.92KB | 次下载 | 免费
本月
- 1ES9038PRO解码芯片的电路原理图介绍
- 0.25 MB | 35次下载 | 5 积分
- 2STM32国内外发展现状
- 1.15 MB | 13次下载 | 免费
- 3传感芯片选型指南
- 3.60 MB | 11次下载 | 免费
- 4ATmega8芯片中文手册
- 2.45 MB | 8次下载 | 1 积分
- 5储能电源市场分析
- 7.99 MB | 8次下载 | 免费
- 6TDK电容器产品指南
- 11.88 MB | 7次下载 | 1 积分
- 72A多电池高效开关充电器AN_SY6912A中文资料规格书
- 1.43 MB | 7次下载 | 免费
- 8储能电源市场分析报告
- 2.61 MB | 6次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935086次下载 | 免费
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420050次下载 | 免费
- 3Altium DXP2002下载入口
- 未知 | 233068次下载 | 免费
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191317次下载 | 免费
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183316次下载 | 免费
- 6labview8.5下载
- 未知 | 81567次下载 | 免费
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73788次下载 | 免费
- 8NI LabVIEW中实现3D视觉的工具和技术
- 未知 | 70088次下载 | 免费
评论
查看更多