A proof of concept log analysis tool using Java EE(Wildfly AS, Servlets, JSP, JAXRS), JMS (ActiveMQ Artemis), JPA/Hibernate (MySQL) and Docker.
This application has a management console to configure new applications to upload logs from, add new metrics to collect data on, and a dashboard UI to view collected data. It also has a Restful API to publish either log files or single log lines.
Install Maven and Docker, then run the following shell script:
.github/workflows/build.sh
To start the application, simply run:
docker compose up
- Load up the management console UI.
- Create a new application titled
default
with any description. - Create a new metric for the application with the log-level set to WARN and regex empty.
- Wait 60seconds for metric to get picked up by the log service (or watch logs).
- Use CURL to post logs using your application ID (should be 1). This file loads 2,000 lines of HDFS logs into the service.
curl --silent https://raw.githubusercontent.com/logpai/loghub/master/HDFS/HDFS_2k.log | curl --silent --data-binary "@-" http://127.0.0.1:8080/log-collector/api/application/1/upload/file
- View logs on dashboard (may take up to 15seconds to post).