Skip to content

tomiwaog/Time-Series-Event-Handling-with-Docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

NATS Event Processing System

A Dockerized microservices setup for generating, processing, and querying security events using NATS messaging and InfluxDB.

Services

  1. Daemon Service

    • Generates random security events with:
      • criticality (1-10)
      • timestamp (ISO 8601 format)
      • eventMessage
    • Publishes to NATS subject events
  2. Writer Service

    • Subscribes to events subject
    • Writes events to InfluxDB
  3. Reader Service

    • Handles queries via NATS
    • Retrieves events from InfluxDB
  4. Client Service

    • Queries last 10 critical events (configurable threshold)

Prerequisites

  • Docker 20.10+
  • Docker Compose 2.0+

Quick Start and Testing

  1. Start the system

docker compose up -d --build

Ensure all services are running docker compose ps -a

Testing daemon events: docker compose logs -f daemon

Query events from commandline docker run --rm --network=root_default natsio/nats-box
nats pub -s nats://nats-server:4222 query '{"limit":5, "min_criticality":7}'

Clean Up Services docker compose down -v

Currently pending Services - Incomplete

  • Client
  • Reader

About

Time Series Event Handling and Processing with Docker and NATS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors