It is a docker container that can receive Syslog Message (RFC3164), store in database and display via website.
Work in progress
Prerequisites:
- Docker and Docker Compose is installed
- Check the ports specified in docker-compose.yml is not occupied
$ git clone https://github.com/jacky9813/syslog-server
$ cd syslog-server
$ ./build.sh
$ mkdir db
$ sudo docker-compose up -d
- Build the image using
$ sudo docker-compose build
- Export Docker image (
$ sudo docker save syslog-server | pigz -9 -c > syslog-server.tar.gz
will export image as a gzip compressed tarball) - Copy syslog-server.tar.gz file to offline server
- Import Docker image (
$ pigz -d -c syslog-server.tar.gz | sudo docker load
, it feeds docker load with decompressed tarball) - Run
Take a look at docker-compose.yml. Most useful volumes are specified in there.
src/syslog-server/filter.py has basic filter function. Change conf/syslog-server.json can adjust verbosity(severity) and facility filtering parameter.
Optionally src/syslog-server/filter.py can be override using volume.
- Apache HTTP Server (Official Website) under The Apache License, Version 2.0
- Babel compiler (Official Website) under MIT License
- jQuery (Official Website) under MIT License
- MongoDB Community Server (Official Website) under Server Side Public License v1.0
- MongoDB Drivers (Official Website) under The Apache License, Version 2.0
- Python 3.7 and its modules (Official Website) under PSF License Agreement and Other Licenses
- React.js (Official Website) under MIT License
- strftime.min.js (GitHub Page) under MIT License