Case study · 2026

Monittore

Monitoring and operations software for personal projects and infrastructure, spanning a web application, independent worker, CLI and remote server agent.

Contribution
Product, engineering and operation
Status
In use
Scope
Projects and servers · Worker and remote agent · PostgreSQL · Web application and CLI · Alerts and external watchdog
Source
Private

Context

Personal projects were running across different environments, but understanding their state required checking each one separately. Monittore started as a way to make that operational picture legible from one place.

What I built

I defined the product scope and implemented the web application, independent checking worker, command-line interface, remote server agent, persistence and deployment workflow. The case study focuses on the boundaries between those parts rather than on private source code.

Evidence and limits

The diagrams on this page are recreated from confirmed behaviour. They intentionally omit production identifiers and exact topology. The system is in active use, while automated integration coverage and several hardening tasks remain incomplete.

System overview

  1. Projects and servers
  2. Worker and remote agent
  3. PostgreSQL
  4. Web application and CLI
  5. Alerts and external watchdog

Three decisions worth discussing

Independent monitoring

The worker is not coupled to web availability.

Time-based rollups

Recent detail and long-range history coexist without retaining every raw point forever.

External watchdog

The monitor itself has a check outside its own failure boundary.

From problem to evidence

  1. 1
    Problem

    Understanding the state of several projects required checking each environment separately.

  2. 2
    Constraint

    Monitoring could not depend on the same web surface and failure boundary it was meant to observe.

  3. 3
    Decision

    Separate the worker, web application and external watchdog, then retain history through time-based rollups.

  4. 4
    Evidence

    The web application, worker, CLI and remote agent operate together in active use.

Technical notes

Scheduler, jitter and alert transitions

Checks are distributed in time and alerts are emitted on state transitions to reduce synchronized load and notification noise.

Heartbeat and rollup model

Raw heartbeats support recent diagnosis while minute, hourly and daily aggregates preserve longer-range trends.

Failure boundaries and current limits

The worker, web surface and watchdog are separated, but integration coverage and operational hardening remain active work.

Current limitations