Aterve (Intern Product)

Horux

Een uitgebreid SAAS observability platform voor service monitoring, alerting, log aggregatie en metrics verzameling.

Klant Aterve (Intern Product)
Datum 2025-01
Horux

Over dit project

Horux is ons intern ontwikkelde observability platform, vernoemd naar de Egyptische god van observatie. Het biedt volledig inzicht in gedistribueerde applicaties en services, waardoor development teams hun systemen effectief kunnen monitoren, troubleshooten en optimaliseren.

Gebouwd op ons Nexus Framework, combineert Horux enterprise-grade monitoring mogelijkheden met een intuïtieve developer experience. Het platform ondersteunt multi-tenant architectuur, waardoor organisaties meerdere projecten en services kunnen beheren binnen geïsoleerde omgevingen.

Belangrijkste mogelijkheden:

  • Real-time service health monitoring
  • Gecentraliseerde log aggregatie met full-text search
  • Custom metrics verzameling en visualisatie
  • Intelligente alerting met meerdere notificatiekanalen
  • Custom dashboards en data exploratie

De Uitdaging

Moderne software teams worden geconfronteerd met aanzienlijke uitdagingen bij het behouden van zichtbaarheid in hun gedistribueerde systemen:

  • Gefragmenteerde tooling: Teams jongleren vaak met meerdere monitoring oplossingen, wat leidt tot context switching en gemiste correlaties tussen problemen
  • Complexe setup: Traditionele observability platforms zoals Prometheus, Grafana en Elasticsearch vereisen aanzienlijke infrastructuur expertise
  • Kosten op schaal: Enterprise observability oplossingen worden onbetaalbaar naarmate datavolumes groeien
  • Alert fatigue: Zonder intelligente alerting verdrinken teams in notificaties die geen actie vereisen

We hadden een oplossing nodig die uitgebreide observability zou bieden zonder de operationele complexiteit en kosten van traditionele stacks.

De Oplossing

We hebben Horux ontworpen en gebouwd als een unified observability platform met drie kerncomponenten:

1. Nexus Backend (Node.js/TypeScript)

Een enkele codebase met meerdere deployment modes:

  • API Server: RESTful endpoints voor alle platform operaties
  • Monitor Workers: Voeren health checks uit (HTTP, TCP, SSL, Cron)
  • Alert Workers: Evalueren condities en beheren alert state
  • Notification Workers: Leveren alerts via Email, SMS, Discord en webhooks

2. Data Ingestor (Go)

Een high-performance service voor telemetrie ingestie:

  • Verwerkt 10.000+ events per seconde
  • Ondersteunt Prometheus-style metrics (Counter, Gauge, Histogram, Summary)
  • Multi-format log parsing (JSON, plaintext, syslog)
  • In-memory buffering met batched writes naar TimescaleDB

3. Angular Frontend

Een moderne, responsive web console met:

  • Real-time dashboards met aanpasbare widgets
  • Log explorer met full-text search en filtering
  • Metrics visualisatie met time-series charts
  • Monitor configuratie en alert management

Architectuur highlights:

  • TimescaleDB voor time-series data met automatische downsampling en compressie
  • HQL (Horux Query Language) voor unified querying over metrics, logs en monitors
  • Multi-tenant isolatie met automatische tenant filtering op alle operaties
  • Client SDKs in Go, TypeScript, Python en Java voor eenvoudige integratie

De Resultaten

Horux levert significante verbeteringen voor development teams:

  • Eén platform dat 3-4 aparte monitoring tools vervangt
  • 10x reductie in observability infrastructuurkosten vergeleken met enterprise alternatieven
  • < 200ms API response tijd (p95) voor alle operaties
  • < 1 seconde log search over miljoenen records
  • 30 dagen raw data retentie met 1 jaar historische aggregates
  • 10x opslag besparing door automatische compressie

Platform mogelijkheden:

  • 4 monitor types (HTTP, TCP, SSL, Cron Job)
  • 5 notificatiekanalen (Email, SMS, Discord, Webhook, In-app)
  • Full-text log search met trace correlatie
  • Custom dashboards met meerdere widget types
  • Role-based access control met 40+ permissies
  • Publieke statuspagina's voor externe communicatie

Project Afbeeldingen

Horux - Image 1
Horux - Image 2

Gebruikte Technologieën

Angular Node.js TypeScript Go PostgreSQL Redis Docker TailwindCSS RabbitMQ
Klaar om te starten?

Klaar om jouw project te starten?

Neem contact op voor een vrijblijvend gesprek over jouw ideeën