Agentli, self-hosted observability platformasi

Docker, server va Kubernetes muhitlari uchun mijoz infratuzilmasida ishlaydigan monitoring.

Docker Alerting dashboardi har bir mijozning o'z serverida ishlaydi. Yengil agentlar esa monitoring qilinadigan server, VM, container yoki Kubernetes klasterlariga o'rnatilib, loglar, metrikalar va status voqealarini shu dashboardga yuboradi.

Self-hosted dashboardMa'lumot mijoz infratuzilmasida qoladi
Lightweight agentsServer, VM, Docker va K8s uchun
Alert-first flowTelegram, notification va routing
Multi-server viewKerakli agent yoki server tanlanadi
Live usage
Platformadan foydalanish statistikasi Oxirgi yangilanish: loading
- registered users
- Google users
- last 7 days
- total logins
customer-infrastructure / docker-alerting-platform
data local
Monitoring agentlari remote nodes
prod-docker-01logs, container status, restart events
billing-vm-02CPU, RAM, top process culprit
k8s-worker-apod events, namespace telemetry
Mijoz dashboardi self-hosted
Log monitoringpagination, realtime stream, filters
Status monitoringstop, crash, restart alertlari
Server monitoringCPU/RAM culprit, file branch, Docker stats
Alert va integratsiya routing
Telegram groupalohida log/status kanallari
Email va webhookpaid tariflar uchun integratsiya
Team accessadmin, user, RBAC va audit
agent token -> secure report -> customer dashboard -> alert routing
Features

Monitoring, log va alertlarni bitta aniq oqimga yig'adi.

Platforma dashboardga kirish sahifasi emas, balki mijoz o'z infratuzilmasida ishga tushiradigan monitoring mahsulotidir.

LG

Log monitoring

Docker va service loglarini kuzatish, sahifalash, real-time oqim va muhim xatolar bo'yicha alert yuborish.

ST

Container status alertlari

Container o'chishi, restart bo'lishi, crash yoki unhealthy holatlari aniqlanganda alohida notification yuboriladi.

AG

Agentli klaster

Har bir server yoki klasterga agent o'rnatiladi. Dashboardda kerakli server tanlanib, shu node ma'lumotlari ko'riladi.

SR

Server monitoring

CPU va RAM bosimini, top processlarni, Docker resource usage ni va aynan qaysi jarayon resurs yeyayotganini ko'rsatadi.

RT

Alert routing

Log alert va status alert sozlamalari alohida yuradi. Chat ID, topic ID, interval va guruh havolasi UI orqali beriladi.

TM

Team management

Admin va oddiy user rollari bilan kirish nazorati, sessiya muddati, xavfsiz cookie va rolga qarab imkoniyatlar.

IN

Integratsiyaga tayyor

Docker Compose, Docker Swarm, GitLab CI/CD va kelgusida Kubernetes muhitlariga mos joylashtirish modeli.

Architecture

Dashboard mijozda, agentlar kuzatiladigan infrada ishlaydi.

Home Page faqat mahsulotni tanishtiradi. Operatsion dashboard har bir mijozning serveri, private cloudi yoki ichki tarmog'ida joylashadi.

1
Ma'lumotlar lokal qoladiAgentlar metrika, log va status voqealarini faqat mijozning o'z dashboardiga yuboradi.
2
Agentlar alohida o'rnatiladiServer, VM, Docker host yoki Kubernetes klaster monitoring qilinadigan joyning o'ziga agent qo'yiladi.
3
Dashboard boshqaruv markaziServer tanlash, alert sozlash, user boshqarish va audit mijoz dashboardida bajariladi.
Customer networkDashboard, database, settings va user access mijoz infratuzilmasida.
->
Agent fleetDocker host, VM, Kubernetes node yoki container atrofida yengil agent.
Secure report APIToken orqali agent identifikatsiyasi, server nomi va monitoring payloadlari.
->
Alert channelsTelegram group, topic, email, webhook yoki enterprise integratsiyalar.
Install

O'rnatish va integratsiya jarayoni sodda.

Avval mijoz o'z dashboardini ko'taradi, keyin monitoring qilinadigan serverlarga agentlar ulanadi.

01

Dashboard deploy

Mijoz serverida Docker Compose yoki Swarm orqali dashboard ishga tushiriladi.

docker stack deploy -c docker-compose.yml dashboard
02

Agent token

Dashboard settings ichidan har bir agent uchun token yaratiladi va server nomi belgilanadi.

AGENT_TOKEN=generated-token
03

Agent install

Monitoring qilinadigan host, VM, container host yoki Kubernetes nodega agent o'rnatiladi.

docker compose up -d agent
04

Alert sozlash

Log va status alertlari uchun alohida chat, topic, interval va notification qoidalari beriladi.

log alerts != status alerts
Demo Image

Clientlarga berish uchun tayyor demo image va compose fayllar.

Dashboard mijoz serverida `dashboard` stack nomi bilan ko'tariladi. Agent esa monitoring qilinadigan alohida serverga o'rnatilib, dashboard endpointiga report yuboradi.

Dashboard stack server

Postgres bazasi, gateway, log dashboard, status dashboard va worker servicelar bir stack ichida yuradi.

docker-compose.dashboard.demo.yml
services:
  postgres:
    image: postgres:16.13-alpine
    environment:
      POSTGRES_DB: docker_alerting
      POSTGRES_USER: docker_alerting
      POSTGRES_PASSWORD_FILE: /run/secrets/postgres_password
    secrets:
      - postgres_password
    volumes:
      - dashboard-postgres-data:/var/lib/postgresql/data

  dashboard:
    image: xondev/docker_alerting:dashboard
    command: ["python3", "-u", "docker_log_alert.py", "gateway"]
    environment:
      DB_HOST: postgres
      DB_NAME: docker_alerting
      DB_USER: docker_alerting
      DB_PASSWORD_FILE: /run/secrets/postgres_password
      FRONTEND_URL: https://xondev.uz
      BACKEND_URL: https://xondev.uz
      CORS_ALLOWED_ORIGINS: https://xondev.uz,https://log.xondev.uz
      COOKIE_SECURE: "true"
    ports:
      - "18082:18082"
    secrets:
      - postgres_password
      - google_client_id
      - google_client_secret

secrets:
  postgres_password:
    external: true
    name: docker_alerting_postgres_password
  google_client_id:
    external: true
    name: docker_alerting_google_client_id
  google_client_secret:
    external: true
    name: docker_alerting_google_client_secret

volumes:
  dashboard-postgres-data:
deploy command
docker stack deploy -c docker-compose.dashboard.demo.yml dashboard

Agent compose remote

Har bir kuzatiladigan server, VM yoki Docker hostga alohida agent qo'yiladi.

docker-compose.agent.demo.yml
services:
  docker-alerting-agent:
    image: xondev/docker_alerting:agent
    restart: unless-stopped
    command:
      - python3
      - -u
      - docker_log_alert.py
      - agent
      - --server-url
      - https://log.xondev.uz
      - --agent-token
      - CHANGE_ME_AGENT_TOKEN
      - --node-name
      - CHANGE_ME_NODE_NAME
      - --interval
      - "60"
    volumes:
      - /var/lib/docker/containers:/var/lib/docker/containers:ro
      - /var/run/docker.sock:/var/run/docker.sock:ro
    network_mode: host
run command
docker compose -f docker-compose.agent.demo.yml up -d
Use Cases

Kimlar uchun foydali?

Mahsulot kichik Docker hostdan enterprise muhitigacha o'sib boradigan monitoring ehtiyojlariga moslanadi.

Startups

Kam resursli jamoalar

Bir nechta serverdagi containerlar, restartlar va xatolarni alohida monitoring steki qurmasdan kuzatish.

Agencies

Bir nechta mijoz infrasi

Har bir mijozga alohida dashboard o'rnatib, agentlarni shu mijozning o'z serverlariga ulash.

SaaS

Production alerting

Billing, API, queue, worker va database atrofidagi service statusini tez ko'rish va jamoaga xabar berish.

DevOps

On-call jarayonlari

Log alert, status alert va interval qoidalari bilan takroriy notification shovqinini boshqarish.

Kubernetes

K8s migratsiya

Docker hostlardan Kubernetes klasterlarga o'tishda agentli monitoring modelini saqlab qolish.

Enterprise

Private infrastructure

SSO, RBAC, multi-tenant va SLA talablari bo'lgan yopiq tarmoqdagi korporativ muhitlar.

Pricing

Tariflar agent limiti va jamoa ehtiyojiga qarab farqlanadi.

Har bir tarifda agent limiti, log retention, alert kanallari va team imkoniyatlari aniq farq qiladi.

Free

Kichik loyihalar va birinchi integratsiya uchun.

$0/ boshlash
  • 1 ta dashboard, 2 tagacha agent
  • 24 soatlik log ko'rinishi
  • Asosiy log va container status monitoring
  • Telegram alert faqat bitta guruhga
  • Standart dashboardlar
  • Community support
Go

Startaplar va kichik biznes uchun.

Go/ startap
  • 10 tagacha agent
  • 7 kunlik log retention
  • Log va status alertlari alohida sozlanadi
  • Telegram chat/topic routing
  • Email notification va email support
  • Basic API access
Pro

Katta korxonalar va Enterprise mijozlar uchun.

Enterprise/ SLA bilan
  • Cheklanmagan yoki custom agent limiti
  • 90+ kun retention va advanced observability
  • SSO va RBAC
  • Multi-tenant qo'llab-quvvatlash
  • Private registry va air-gapped deploy
  • SLA, audit log va 24/7 premium support
  • Maxsus integratsiyalar
CapabilityFreeGoPlusPro
Agent limiti21050Custom/Unlimited
Retention24 soat7 kun30 kun90+ kun
Alert kanallari1 TelegramTelegram + EmailEscalationCustom integrations
Access control1 adminAdmin/userTeam managementSSO/RBAC/Multi-tenant
FAQ

Tez-tez beriladigan savollar.

Platformaning ishlash modeli dashboard, agent va alert oqimlari atrofida qurilgan.

Dashboard mijozning o'z serverida, private cloudida yoki Docker Swarm muhitida ishlaydi. Home Page operatsion panel emas, faqat mahsulot taqdimoti.

Agentlar loglar, container statusi, restart/crash voqealari, service health va monitoring payloadlarini mijoz dashboardiga yuboradi.

Self-hosted modelda ma'lumotlar mijoz infratuzilmasida qoladi. Agentlar mijozning o'z dashboard endpointiga ulanadi.

Ha. Log alert va container status alert sozlamalari alohida bo'ladi, shuning uchun turli guruh, topic va interval ishlatish mumkin.

Arxitektura agentli bo'lgani uchun Docker host, VM va Kubernetes klasterlar bilan ishlashga moslanadi. Enterprise integratsiyada maxsus adapterlar qo'shiladi.

Ha. Agentlar soni, jamoa hajmi, alert kanallari va enterprise talablar oshganda tarifni Go, Plus yoki Pro ga ko'tarish mumkin.

Client Access

Sign up orqali demo image, compose fayllar hamda portalga kiring.

User email-parol yoki Google account bilan databasega saqlanadi. Keyingi safar shu account bilan login bo'ladi va protected portal orqali client paketlarni ko'radi.

  • 01Email-parol signup yoki Google ID token backendda verify qilinadi.
  • 02User Postgres users tablega saqlanadi yoki mavjud account login bo'ladi.
  • 03HttpOnly SameSite session cookie beriladi, localStorage ishlatilmaydi.
  • 04Admin statistikadan nechta user productga kirganini ko'radi.