Smotra Logo

Smotra

High-Performance Distributed Monitoring

Built with Rust, Go, and TypeScript for reliability and performance

Project Under Active Development

Smotra is currently being built by a passionate team focused on creating the best open-source monitoring solution. We're actively seeking contributors and early adopters to help shape the future of distributed monitoring!

What is Smotra?

A modern, distributed monitoring solution designed for performance and reliability

Smotra is an open-source distributed monitoring system that tracks reachability and performance of networked hosts. It consists of lightweight agents deployed across your infrastructure and a central server for data aggregation and visualization.

Built with modern technologies and performance in mind, Smotra leverages:

  • Rust for the monitoring agent - ensuring low resource usage and blazing fast performance
  • Go for the central server - providing excellent concurrency and reliability
  • TypeScript for extensibility and tooling - enabling powerful plugin systems



Architecture Diagram
Coming Soon

Why Smotra is Different

True distributed monitoring, not just centralized polling

Traditional Monitoring

Single Point of Failure

  • Central server actively monitors all hosts
  • If central server is isolated or down, monitoring stops completely
  • Network issues at the server break visibility
  • Agents are passive data collectors only
  • Limited perspective from single vantage point

Smotra Approach

Truly Distributed

  • Each agent performs independent monitoring
  • Agents continue monitoring even if central server is unreachable
  • Agents can form mesh networks between each other
  • Multiple agents collectively measure network parameters to remote targets (8.8.8.8, google.com)
  • Multi-perspective visibility from every location

Result: No single point of failure. Agents independently monitor targets and each other, providing resilient monitoring that continues working even during network partitions or server outages.

Architecture

Agent-Server distributed design for scalability

Monitoring Agent (Rust)

Lightweight, efficient agents deployed on monitored hosts

  • ICMP ping monitoring
  • Concurrent health checks
  • Offline operation with local caching
  • Plugin system for extensibility
  • Interactive TUI for monitoring
  • Ultra-low resource usage

Central Server (Go)

Scalable server for data aggregation and management

  • RESTful API with OpenAPI spec
  • PostgreSQL or SQLite support
  • Secure agent claiming workflow
  • Multi-tenant architecture
  • Health checks and metrics
  • JWT authentication

Key Features

High Performance

Rust and Go deliver exceptional performance with minimal resource usage. Built with async/await for maximum efficiency.

Reliable & Secure

Memory-safe Rust agent, secure agent claiming workflow, API key authentication, and offline operation with local caching.

Extensible

Plugin system allows custom monitoring checks. Extend functionality to fit your specific monitoring needs.

Open Source

Fully open source and transparent. Self-host on your infrastructure with complete control over your monitoring data.

Distributed

Deploy agents across your infrastructure. Central server aggregates and manages data from multiple locations.

Modern Tooling

Interactive TUI, OpenAPI specification, structured logging, and comprehensive configuration options.

Technology Stack

Rust

Agent

Go

Server

TypeScript

Tooling

Join the Project

Smotra is under active development and we're looking for contributors and early adopters!

How to Contribute

  • Developers: Help build features, fix bugs, and improve performance
  • DevOps Engineers: Test deployment scenarios and provide feedback
  • Documentation Writers: Improve documentation and create tutorials
  • Testers: Try out the system and report issues

Early Adopters Welcome

  • Influence the direction of the project
  • Get support from the development team
  • Access to the latest features first
  • Help shape a modern monitoring solution

Repositories

Agent

Rust-based monitoring agent with ICMP ping, plugin system, and TUI

View Repository

Server

Go-based central server with RESTful API and database support

View Repository

OpenAPI

OpenAPI specification for the Smotra API

View Repository

Organization

Browse all Smotra repositories and organization info

View Organization