wLogger:这个开源项目了不得
【公众号回复 “1024”,免费领取程序员赚钱实操经验】
大家好,我是章鱼猫。
今天给大家推荐的这个开源项目,非常好。
这个开源项目就是:wLogger 。
它是一款集合日志采集,日志解析持久化存储,web 流量实时监控的开源项目。
wLogger 是一款集合 日志采集,日志解析持久化存储,web 流量实时监控 。三位一体的 web 服务流量监控应用。三大功能模块均可独立部署启用互不干扰。目前已内置 nginx 和 apache 的日志解析存储器,简单配置一下,开箱即用。虽然市面上已经很多类似的开源日志采集监控服务比如 goaccess,用了一圈之后始终没有一款用的特别舒心。
它可以在日志采集的时候可以按照日志文件的大小,或者在指定时间内自动对日志进行切割日志,存储到指定的目录 (已测 2W 并发切割日志不丢数据)
它可以不用像 goaccess 那样必须配置指定格式才能解析到数据,只用指定当前使用的 nginx/apache 日志格式名称 即可解析数据
它可以指定不同的项目走不同的队列服务,分别解析存储到不同的数据库,完全可以自己按需灵活配置
它天然支持分布式,日志采集服务队列已内置 redis LIST 结构,可执行拓展 kafka ,mq 等其它队列服务
它支持自定义持久化存储引擎,日志解析持久化存储服务已内置 mongodb 和 mysql , 可执行拓展其它数据库
简单配置,开箱即用,无入侵,高拓展,灵活配置,按需应用
运行环境:python3+ linux 平台
功能说明
采集器 inputer
实时日志采集,同时支持多个web日志同时采集
可指定按照日志文件大小或指定时间,自动切割文件到指定目录, (日志切割不丢数据.)
可自定义队列服务软件,接受采集的日志信息. 已内置redis 如需kafka 等其它mq队列可自行拓展
极低的cpu内存占用 ,低配小主机也能愉快的玩耍
解析存储器 outputer
实时解析日志并存储到指定的数据库, 已内置 mysql 和 mongodb 如需使用elastic全家桶或其它存储引擎 可自行拓展
采集器,解析器,web服务均可 独立分布到不同的服务器节点上运行
目前已内置 nginx,apache 解析器, 可随意指定日志格式, 只需在配置文件里面指定格式名称即可正确解析并存储
支持按日期天,周,月,年. 自动分表或集合存储日志
支持指定工作进程来快速消费队列数据,大流量也能实时解析并存储日志, 虚拟机中ab 实测2W并发延迟小于1秒
注: 当海量流量来的时候发现解析存储延迟过高的情况,可将解析器部署到集群中其它多个节点同时消费队列数据,提升解析存储效率
web服务 web
已内置大屏监控web面板,流量情况一目了然
同时支持 mysql 或者 mongodb 作为 数据源
您也可以从数据库中取数据自己定义流量监控的 UI 界面和数据展现方式;
大屏实时监控效果图 本人显示器太小,截图略显拥挤;
如果该项目有帮助到您,请不要吝啬随手给个 star,欢迎大家去 GitHub 上支持一波作者。
开源项目地址:https://github.com/jyolo/wLogger
开源项目作者:jyolo
---特别推荐---
特别推荐:一个新的优质的推荐高效工具,软件,插件的公众号,每天给大家分享优秀的效率工具,「程序员掘金」,专门为程序员挖掘好东西的一个公众号,非常值得大家关注。