raftman
1.0.0
通過JSON API和Web UI進行集成全文搜索的Syslog服務器。
要快速開始,只需運行Raftman的容器化版本:
sudo docker run --rm --name raftman
-v /tmp:/var/lib/raftman
-p 514:514/udp
-p 5514:5514
-p 8181:8181
-p 8282:8282
pierredavidbelanger/raftman
這將帶有所有默認選項的Raftman。它可以在主機上的端口514(UDP)和5514(TCP)上偵聽傳入的RFC5424 syslog數據包,然後將它們存儲在主機上的/tmp/logs.db中的SQLITE數據庫中。它還在http:// localhost:8181/api/和http:// localhost:8282/。
是時候填寫我們的數據庫了。最簡單的方法是啟動logspout並告訴它指向Raftman的Syslog端口:
docker run --rm --name logspout
-v /var/run/docker.sock:/var/run/docker.sock:ro
--link raftman
gliderlabs/logspout
syslog://raftman:514
最後一個容器將抓住其他容器輸出行,並將其作為Syslog數據包發送到配置的Syslog Server(即:我們的鏈接的Raftman容器)。
現在,我們還需要生成一些輸出。這將暫時完成這項工作:
docker run --rm --name test
alpine
echo 'Can you see me'
然後,我們可以可視化我們的日誌:
與Raftman API:
curl http://localhost:8181/api/list
-d '{"Limit": 100, "Message": "see"}'
或在http:// localhost:8282/
所有Raftman配置選項均在命令行中設置為參數。
例如,這是如果我們明確設置所有默認值,則命令行的樣子:
raftman
-backend sqlite:///var/lib/raftman/logs.db?insertQueueSize=512&queryQueueSize=16&timeout=5s&batchSize=32&retention=INF
-frontend syslog+udp://:514?format=RFC5424&queueSize=512&timeout=0s
-frontend syslog+tcp://:5514?format=RFC5424&queueSize=512&timeout=0s
-frontend api+http://:8181/api/
-frontend ui+http://:8282/