Public | Automated Build

Last pushed: 10 days ago
Short Description
OK Log - a distributed and coördination-free log management system.
Full Description

OK Log

OK Log is a distributed and coördination-free log management system for big ol' clusters. It's an on-prem solution that's designed to be a sort of building block: easy to understand, easy to operate, and easy to extend.

Dockerfiles

Tag, version, base image, Dockerfile link:

(Note that the latest denotes the most recent stable release, not necessarily the most recent release of OK Log.)

(Original Dockerfile modified from lendico/oklog. All credits to lendico-seong. See notes for change requests.)

Docker

Quickly create an ingeststore:

docker run -d \
    -p 7650:7650 \
    -p 7651:7651 \
    -p 7653:7653 \
    -p 7659:7659 \
    --name oklog_ingest_store \
    oklog/oklog:latest ingeststore -store.segment-replication-factor 1

(To mount the data directory please use -v /path/to/dir:/data).

Please see the OK Log README.md for more advanced and useful deployments.

Forward logs

Quickly forward logs (requires a binary exectuable from the releases):

tail -f /var/log/*.log | oklog forward tcp://<store/ingeststore>:7651

(Since v0.1.3 (latest) you can use the -prefix <tag> -prefix <label> repeatable flag to prepend annotations to logs.)

Integrations

Quickly forward docker daemon logs:

docker run -d \
    --volume=/var/run/docker.sock:/var/run/docker.sock \
    --name logspout \
    gliderlabs/logspout syslog+tcp://<store/ingeststore>:7651

Please see Integrations within the OK Log wiki.

Query

Quick query:

docker exec -it oklog /bin/ash
./oklog query -stats
./oklog query -from 2h -q "e"

Or you can query a store or ingeststore with binary from releases:

oklog query -store tcp://<store/ingeststore>:7650 -from 1h -q "e"

Stream

Since v0.2.0 you can register a steamed query via a long-lived HTTP/1.1 connection to a OK Log process running in store or ingeststore modes:

curl -iv <store/ingeststore>:7650/store/stream?q=e

Or you can stream with binary executable from releases:

oklog stream -store <store/ingeststore>:7650 -from 1h -q "e"

(A note on running an OK Log container in stream mode: Be careful of log looping when pumping logs from the Docker daemon on the same host, as this will burn through storage!)

Please see PR #34 for more information.

UI

Since v0.2.1 you can view a prototype web UI at http://<store/ingeststore>:7650/ui/.

Notes

This represents a set of unofficial Dockerfiles and images containing the OK Log binary. All credits for OK Log should go to peterbourgon and the OK Log contributors / maintainers.

If you have any problems with OK Log, then please raise an issue here. Any suggestions or enhancements to do with the Dockerfiles or images, then please raise a new issue here. Alternatively, alterations or additions can be included in a new PR here. All feedback is welcome.

Docker Pull Command
Owner
oklog
Source Repository