glog

Logging solution built with simplicity in mind! Setup your own central logging server easily! Written solenly in Go with two external packages: viper and fsnotify.

Supported architectures: x86_64, i136, i686, aarch64 and arm*.

Supported Linux distributions: ubuntu, debian, linuxmint, fedora, centos, rhel, rocky, almalinux, arch and manjaroo.

Why use glog?

  1. Simple configuration - no need to dive deep into vast documentation. 4-5 config variables is all you need!
  2. Deploy in seconds - install logging server and client, specify desired files and watch your logs fly!
  3. If you just need to stream your log files as they are (without any complex proccessing) then there is no easier way than glog!

How to install glog?

  1. Easiest way is to download the installation script and run it (sudo privileges required):
bash <(curl -sSLf https://glog.proxilius.eu/download/install.sh)

It contains the service file aside from glog itself and installs it on your system.

  1. Edit configuration file in /etc/glog/config.toml to fit your case

  2. Run glog service:

systemctl start glog

For more info about configuration see Configuration section.

Download links:

How it works?

When installed and started glog server starts listening on address specified in configuration variable addr.

Each glog client watches files that you specified in configuration in logfiles section, then sends them to glog logging server specified in addr.

Server stores logs from clients in separate directories in /var/log/glog/[CLIENT_NAME]. Log files are stored in files named as configured by client

Plans

Configuration

There are only 4 main variables:

name="MyServer"
mode="server"
addr="0.0.0.0:12345"
debug=false

Client only variable:

[logfiles]
"syslog"="/var/log/syslog"

Here’s an example of server configuration:

name="MyServer"
mode="server"
addr="0.0.0.0:12345"
debug=false

Client configuration example:

name="MyClient"
mode="client"
addr="123.123.123.123:12345"
debug=false
[logfiles]
"syslog"="/var/log/syslog"
"auth.log"="/var/log/auth.log"
"kern.log"="/var/log/kern.log"