電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>Plog處理日志流的框架

Plog處理日志流的框架

2022-04-27 | zip | 0.02 MB | 次下載 | 2積分

資料介紹

授權(quán)協(xié)議 未知
開發(fā)語言 Python
操作系統(tǒng) 跨平臺(tái)
軟件類型 開源軟件

軟件簡介

Plog 是 "Parse Log" 的縮寫,是一套處理日志流的框架,日志流格式可以是Apache,nginx等常規(guī)意義的日志格式,也可以是自定義格式

FlumeNG的啟發(fā),我把整個(gè)工程分成了三個(gè)部分:source,channel ,sink,已經(jīng)完成了主體的共有的可以抽象出來的功能,比如線程的同步互斥,消息的生產(chǎn)消費(fèi),處理時(shí)間間隔的控制,還有一些簡單的source,channel and sink函數(shù)

下面是一個(gè)簡單的配置文件:

[source]
#定義讀取數(shù)據(jù)的模塊名
source_module=file_source
#定義源文件
source_file=./test/plog_demo.log
#定義讀取文件的時(shí)間間隔,單位s
source_interval=5

[channel]
#定義解析數(shù)據(jù)的模塊名
channel_module=regrex_channel
#如是正則,定義正則規(guī)則
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]
#定義發(fā)送數(shù)據(jù)的時(shí)間間隔
interval=60
#定義計(jì)算與發(fā)送的模塊名
sink_module=zabbix_sink
sink_service=cacheL2
#定義需要的key
sink_zabbix_monitor_keys=200,300,400,500
#定義發(fā)送給zabbix寫數(shù)據(jù)的文件
sink_zabbix_send_file=/tmp/zabbix_send_info
#定義發(fā)送zabbix?sender路徑
sink_zabbix_sender=/usr/bin/zabbix_sender
#定義zabbix的配置文件
sink_zabbix_conf=/etc/zabbix/zabbix_agentd.conf

[log_config]
#定義輸出log的格式,級別,路徑等,方便調(diào)試程序。
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部分的設(shè)計(jì)思路

在這一部分,我們需要處理的是數(shù)據(jù)流的來源,他可能是file,可能是socket,可能是管道,但是我不關(guān)注你的數(shù)據(jù)來源格式是什么樣的,因?yàn)槲覠o法滿足這些需要各式各樣的數(shù)據(jù)來源需求,而你的需要是什么樣的,你最清楚,那么你只要寫一個(gè)source的插件就可以了,名字隨意你定,你需要的是把你寫的那個(gè)插件的名字,寫到plog.conf里面,默認(rèn)有讀取文件的file_source模塊,讀取管道的read_from_pipeline模塊,可以直接使用。

具體實(shí)例如下:

source_module=self-define-script-name

自定義source的具體實(shí)現(xiàn),參看source module下的plog/source/youself_define_source.py

channel部分

在這個(gè)部分,主要是對數(shù)據(jù)流的處理,你同樣需要寫一個(gè) Python的腳本,名字隨意你定,但是你需要寫到 plog.conf 中,默認(rèn)有解析python正則的模塊可以直接使用,類似下方:

channel_module=filter_log

同樣的你需要實(shí)現(xiàn)的channel可以參見 plog/channel/youself_define_channel.py

sink 部分

在這個(gè)部分,你同樣需要寫一個(gè)Python腳本,他的名字同樣取決于你的個(gè)人喜好,你需要的是把你寫的那個(gè)插件的名字寫到plog.conf,例如下方:

sink_module=cacheL2get_monitor

同樣的你需要完成的腳本可以參見plog/sink/youself_define_sink.py

如何跑一個(gè)測試

下面的測試是讀取一個(gè)本地本件,解析,計(jì)算自己要想的結(jié)果發(fā)送到zabbix監(jiān)控系統(tǒng)。

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
?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)