通过网络广播和接收日志消息。
logsweet的Python项目详细描述
log sweet
=
一套处理日志消息的工具。
logsweet*这个名字是一个单词游戏,它结合了*sweet logging*和
*一套日志工具*
要求
----
-python≥3.4
``朗格洛甘甜``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
提供*logsweet*的公共Docker映像。
…代码::sh
docker run--rm-it mastersign/logsweet[命令][选项][参数]
记住将日志文件作为卷装入容器,当使用
"watch"或"mock"命令时,
usage
----
logsweet支持以下命令:
-`watch``监视文本文件(如日志文件)中的新行,并通过∏mq pub套接字广播和/或通过∏mq push
套接字发送新行。
-`listen``监听新行通过∏mq pub socket和/或
广播从∏mq push socket收集新线,并在
控制台上打印。
-``proxy``可以连接到后端的观察者和前端的侦听器。它支持后端和前端的两种传输模式(pub/sub和
push/pull)。它可以用作单个
知识点或构建日志流组。
-``mock``将随机日志消息写入文本文件以用于测试
。
代码::sh
logsweet watch-b*:9000"/var/log/myservice/*.log"
代码::sh
logsweet listen-c service-1:9000-c service-2:9000
代码::sh
logsweet proxy-bb*:9001-fb*:9002
运行一个或多个侦听器以打印消息:
…代码::sh
logsweet listen-c log proxy:9002
代码::sh
logsweet watch-c log proxy:9001"/var/log/myservice/*.log"
使用两个代理实现高可用性代码::sh
logsweet proxy-bb*:9001-fb*:9002
,然后启动一个或多个侦听器以打印消息:
…代码::sh
logsweet listen-c log-proxy-1:9002-c log-proxy-2:9002
代码::sh
logsweet watch-c log-proxy-1:9002-c log-proxy-2:9002"/var/log/myservice/*.log"
如果代理不可用,则其负载将由其余代理自动执行
。
代码::sh
logsweet mock-i 0.2/var/log/test/1.log/var/log/test/2.log
使用"i"或"interval"选项以秒为单位控制新
日志消息的间隔。
配置控制*过滤*、*着色*输出和
triggering*actions*
对于命令``watch``要打印文本行,必须使用开关`--echo`
。
使用`-cfg<;yaml file>;``选项指定配置文件。
下面是一个示例:
。代码::yaml
version:"0.1"
如果日志消息与任何表达式匹配,则会删除该日志消息。
exclude:"ignore\s+this"
colors语句是着色规则的数组。
er直到有一个匹配。
颜色:
着色规则必须有一个模式,该模式是正则表达式,
可与命名组一起使用。
-模式:'\[错误]'
有多个语法为的颜色语句。
<;前景色>;[在<;background color>;]指定整行的颜色
match:black on lightgrey match指定整行的颜色
-pattern:'^.*??P<;级别>;\[[A-Z]+\])。*p<;user>;admin user)
line:lightgrey
match:white
level:yellow
user:cyan
actions语句是一个操作规则数组。
无论匹配与否,都会尝试所有规则。
从监视或侦听co执行操作mmand,
必须使用switch-x或--exec操作。
操作:
操作规则必须有一个模式,该模式是正则表达式,
可与命名组一起使用。
-模式:'\[错误](?p<;err>;*)$'
如果规则具有url属性,则将其视为http get操作。
该url被视为python字符串模板,
这意味着它可以包含来自命名regex组的变量。
url:'http://127.0.0.1:23456/notify error/${err}'
可以指定以秒为单位的超时,
以限制执行http请求所用的时间。
超时:2.5
**
**
达到1.0.0版本的成熟度后,版本控制
遵循以下规则:
-主版本号为0。
-如果向后兼容被破坏或添加了一组重要功能,则次版本号增加。
-如果向后兼容,则修补程序号增加。IBE功能
已添加或修复了错误。
此项目达到版本号1.0.0后,它将遵循
`语义版本控制<;http://semver.org/>;` `.
…
此文档遵循http://keepachangelog.md中的指导原则。
使用以下更改组:
_`<;这个版本>;`:https://github.com/mastersign/mastersign/logsweet/compare/v<;最新版本>;..v<;这个版本>;
`<;这个版本>;`-<;最新版本>;
;
==============
===
===
====
=
=
=
=
=
=>
=>
=>
=>
=
=>
=
===代理
-绑定和con全方位连接
-docker release
-过滤、着色和http操作的yaml配置
-改进的cli结构
-文本文件观察程序,带有zeromq pub
-zeromq sub,带有打印
-模型日志文件
-基本cli