https://github.com/payneteasy/srvlog
Syslog Collector, Viewer and Searcher
https://github.com/payneteasy/srvlog
Last synced: 11 months ago
JSON representation
Syslog Collector, Viewer and Searcher
- Host: GitHub
- URL: https://github.com/payneteasy/srvlog
- Owner: payneteasy
- Created: 2013-01-03T17:32:57.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2025-03-26T21:07:34.000Z (over 1 year ago)
- Last Synced: 2025-04-02T06:05:45.432Z (over 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 14.1 MB
- Stars: 6
- Watchers: 5
- Forks: 4
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://circleci.com/gh/payneteasy/srvlog)
[](https://sonarcloud.io/dashboard?id=com.payneteasy%3Asrvlog)
srvlog - **Lightweight Logs Collector System.**
===
Supported logs formats and channels:
1) syslog;
2) logback;
3) snort payloads correlated with ossec alerts.
All logs are being collected in MariaDB database
(MySQL supported too) and then indexed and searched
by Sphinx. The middle-layer and front-end is written
in pure Java hence it can be installed on many OS platforms
which supported by Java, MariaDB and Sphinx.
**srvlog** can be used in the projects where centralized
logging solution is required. As an example of such
requirements is PCI DSS requirements 10.1-10.2
Software requirements:
1) JDK 17.0.10 and higher;
2) MariaDB 10.0.x and higher;
3) sphinxsearch 3.6.1 and higher.
Minimum system requirements:
1) 4GB RAM;
2) 100GB Disk space (for up to 200 thousands logs per day )
3) Intell i5, i7, Xeon processors.
### Building and starting embedded srvlog jetty server
Build uber-jar file:
```shell
mvn clean package
```
Set environment variables required for embedded server:
```shell
export JETTY_PORT=8080 # server port
export JETTY_CONTEXT=/srvlog # web application context path
export JETTY_ENV_CONFIG_PATH=/path/to/jetty-env-ui.xml # server env config xml
export WEB_DESCRIPTOR_PATH=/path/to/web.xml # web application config xml
export WEB_SOCKET_ENDPOINT_PATH=/ws-log # web socket endpoint context path
export WEB_SOCKET_MAX_MESSAGE_SIZE=65535 # web socket max message size in bytes
export WEB_SOCKET_IDLE_TIMEOUT_SECONDS=300 # web socket idle timeout in seconds
export SYSLOG_PROTOCOL=tcp # syslog protocol
export SYSLOG_HOST=localhost # syslog host
export SYSLOG_PORT=2514 # syslog port
export JSON_ADAPTER_BIND_ADDRESS=127.0.0.1 # json adapter bind address
export JSON_ADAPTER_PORT=28080 # json adapter port
export JSON_ADAPTER_PATH=/save-logs # json adapter path
export JSON_ADAPTER_TOKEN=token # json adapter token
export SPHINX_HOST=localhost # sphinx host
export SPHINX_PORT=9312 # sphinx port
export SPHINX_CONNECT_TIMEOUT=30000 # sphinx connect timeout
export SPHINX_QUERY_INDEXES=index1,index2 # comma separated query indexes
export LOG_STORAGE_CAPACITY=1000 # log broadcasting service storage capacity (web terminal page)
export LOGBACK_PROGRAM=programName # logback program name
export LOGBACK_TCP_PORT=4713 # port for logback tcp adapter
export LOGBACK_UDP_PORT=4713 # port for logback udp adapter
```
Start server uber-jar:
```shell
java -jar ./srvlog-web/target/srvlog-embed-server.jar
```