Skip to content

koloiyolo/engineering_thesis_django

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Device Management and Log Analysis System

Simple system designed for log analysis and network devices monitoring.
Jakub Kołodziej's engineering thesis project.

Table of contents:

Features

  • Log collection(using Syslog-ng).
  • Log classification using unsupervised learning algorithms like:
    • K-Means,
    • AHC Clustering,
    • SOM (Self-organizing Map),
    • DBSCAN #6,
    • HDBSCAN #6.
  • System discovery (based on IP Ranges). #4
  • Managed system automatic health checks (Using ICMP Ping).
  • Notifications on incidents.
  • Basic CRUD operations regarding system, location and incident management.
  • Audit Log. #5
  • Log records CSV export. #8
  • Report generation. #10

To Do:

  • Report generation
  • Mail notifications

Requirements

Dependencies:

  • any system supporting Docker
  • git
  • Docker

Open firewall ports:

  • 80/tcp - Main application
  • 5014/udp - Syslog-ng log collection
  • 8081/tcp - (Optional) phpMyAdmin

Installation

  1. Clone this repository
 git clone https://github.com/koloiyolo/engineering_thesis_django.git
  1. Enter project directory
 cd engineering_thesis_django
  1. Elevate permissions
 sudo -s
  1. Start system using docker compose
 docker compose up
  1. Access the application through your browser at the following address:
http://{{server_ip_address}}

Stack:

Frontend:

  • HTML5
  • Bootstrap

Backend:

  • Docker
  • Python
    • Django
    • scikit-learn
    • minisom
    • pandas
    • plotly
    • celery
  • MySQL (Planned PostgreSQL)
  • Redis
  • Syslog-ng

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages