theia是一个轻量级日志聚合器。
theia的Python项目详细描述
theia
简单轻便的日志聚合器
简介
theia是一个日志聚合器,它通常从多台计算机上的多个日志文件收集日志,并在单个端点上提供日志条目。 每个记录的条目都来自一个源(日志文件),可以用多个标记进行标记。这样,您可以按源(例如/var/log/apache或/var/log/reds)和标记(例如“production1”、“cache server”、“testing”等)查询筛选器,或者只需将模式与条目内容匹配即可。
Theia有三个部分:
- 观察者-这是在您有日志的机器上运行的代理进程。您将有多个观察者,但通常每个节点只有一个观察者
- 收集器-这是主进程,通常在要收集日志的sperate节点上运行。提供用于推送日志事件的接口和用于查询聚合日志的接口。
- 客户端-用于查询和观看实时事件的客户端。它通过websocket和 查询收集的事件或注册实时事件的筛选器。
安装
theia是一个单独的python包(只支持python3)。
使用pip
:
pip install theia
运行收集器
此过程收集并存储事件。内置数据库使用文本文件存储事件。
创建一个保存事件的目录,并运行收集器服务器:
mkdir data python -m theia.cli collect -d ./data
这将在端口6433
上运行服务器侦听。
运行观察程序
确保收集器正在运行。
然后,运行观察程序:
python -m theia.cli watch -c localhost -f /var/log/httpd/access.log -t web-access
这将监视access.log
中的更改并将事件发送到收集器
标记有web-access
运行查询
查询所有带有标记web-access
:
python -m theia.cli query -c localhost -t web-access
运行实时筛选器
用标签web-access
实时观看事件:
python -m theia.cli query -l -c localhost -t web-access
注
此操作仍在进行中,远未达到生产就绪状态