🇺🇸 English | 🇸🇦 العربية | 🇪🇸 Català | 🇨🇿 Čeština | 🇩🇪 Deutsch | 🇪🇸 Español | 🇫🇮 Suomi | 🇫🇷 Français | 🇯🇵 日本語 | 🇧🇷 Português (Brasil) | 🇷🇺 Русский | 🇹🇭 ไทย | 🇹🇷 Türkçe | 🇺🇦 Українська | 🇻🇳 Tiếng Việt | 🇨🇳 简体中文 | 🇹🇼 繁體中文
Open source приложение для мониторинга доступности и инфраструктуры
В этом репозитории находятся как frontend, так и backend Checkmate — open-source-инструмента самостоятельного хостинга для отслеживания оборудования серверов, времени работы, времени отклика и инцидентов в реальном времени с наглядными визуализациями. Checkmate регулярно проверяет, доступен ли сервер/сайт и работает ли он оптимально, предоставляя оповещения и отчёты о доступности, простое и времени отклика отслеживаемых сервисов в реальном времени.
У Checkmate также есть агент под названием Capture для получения данных с удалённых серверов. Capture не является обязательным для работы Checkmate, но даёт дополнительную информацию о состоянии CPU, RAM, диска и температуры ваших серверов. Capture работает на Linux, Windows, Mac, Raspberry Pi и любом устройстве, способном запускать Go.
Checkmate прошёл нагрузочное тестирование с 1000+ активных мониторов без каких-либо заметных проблем или просадок производительности.
- 📦 Демо
- 🔗 Руководство пользователя
- 🛠️ Установка
- 🚀 Производительность
- 💚 Вопросы и идеи
- 🧩 Возможности
- 🏗️ Скриншоты
- 🏗️ Технологии
- 🔗 Несколько ссылок
- 🤝 Участие
Последнюю сборку Checkmate можно увидеть в действии.
Имя пользователя — demouser@demo.com, пароль — Demouser1! (Обратите внимание: мы периодически обновляем демо-сервер; если что-то не работает, напишите нам на канале Discussions).
Инструкции по использованию доступны здесь.
Инструкции по установке смотрите на портале документации Checkmate.
В качестве альтернативы вы можете использовать Coolify, Elestio, K8s, Sive Host (ЮАР), Cloudzy или Pikapods, чтобы быстро поднять инстанс Checkmate. Если вы хотите мониторить серверную инфраструктуру, потребуется агент Capture. В репозитории Capture также есть инструкции по установке.
Если нужно мониторить внутренние HTTPS-эндпоинты с сертификатами от приватных УЦ (например, Smallstep), смотрите наше руководство по доверию собственным УЦ с параметрами конфигурации Docker.
Дополнительная документация — в каталоге docs.
Благодаря многочисленным оптимизациям Checkmate работает с исключительно низким потреблением памяти и требует минимума RAM и CPU. Ниже — потребление памяти инстансом Node.js на сервере, который мониторит 323 сервера каждую минуту:
А вот объём памяти MongoDB и Redis на том же сервере (398 МБ и 15 МБ) для того же количества серверов:
Если у вас есть вопросы, предложения или комментарии — есть несколько вариантов:
- Канал в Discord (предпочтительно)
- GitHub Discussions (заглядываем туда время от времени)
Смело задавайте вопросы и делитесь идеями — мы будем рады услышать вас!
- Полностью open source, можно развернуть на собственных серверах или домашних устройствах (например, Raspberry Pi 4 или 5)
- Несколько вариантов мониторинга: доступность, Docker, ping, SSL, порт, игровой сервер
- Мониторинг скорости загрузки страниц
- Мониторинг инфраструктуры (память, использование диска, производительность CPU, сеть и т. д.) — требуется агент Capture
- Выборочный мониторинг дисков с выбором точек монтирования
- Инциденты в одном месте
- Страницы статуса с 4 красивыми темами
- Уведомления по e-mail, через вебхуки, Discord, Slack, PagerDuty, Matrix, Microsoft Teams, Telegram, Pushover, Twilio (SMS)
- Запланированное обслуживание
- Мониторинг JSON-запросов
- Многоязычная поддержка: арабский, китайский (упрощённый), китайский (традиционный, Тайвань), чешский, английский, финский, французский, немецкий, японский, португальский (Бразилия), русский, испанский, тайский, турецкий, украинский и вьетнамский
- Монитор выполняет проверку (HTTP / ping / порт / оборудование через агента Capture)
- Результат сохраняется (успех/неудача + время отклика)
- Недавние результаты проверяются по заданному порогу смены статуса
- Если порог достигнут, а текущий статус отличается от предыдущего — состояние монитора изменяется (например,
initializing,up,down,breached) - При смене состояния инцидент создаётся или закрывается в зависимости от текущего статуса
- Уведомления отправляются в соответствии с настройками
- ReactJs
- MUI (React-фреймворк)
- Node.js
- MongoDB
- Recharts
- И множество других open-source компонентов!
- Если хотите поддержать нас — поставьте ⭐ и нажмите «watch».
- Есть вопрос или предложение по дорожной карте/функциям? Загляните в наш канал Discord или форум Discussions.
- Нужно уведомление о новых релизах? Используйте Newreleases — бесплатный сервис отслеживания релизов.
- Посмотрите видео по установке и использованию Checkmate
Мы — Alex (тимлид), Gorkem, Aryaman, Mert и Karen — помогаем частным лицам и компаниям мониторить их инфраструктуру и серверы.
Мы гордимся тем, что выстраиваем крепкие связи с контрибьюторами на всех уровнях. Несмотря на то что проект молодой, Checkmate уже получил более 7000 звёзд и более 90 контрибьюторов со всего мира.
Наш репозиторий помечен сотрудниками Google, Microsoft, Intel, Cisco, Tencent, Electronic Arts, ByteDance, JP Morgan Chase, Deloitte, Accenture, Foxconn, Broadcom, China Telecom, Barclays, Capgemini, Wipro, Cloudflare, Dassault Systèmes и NEC — так что не стесняйтесь, присоединяйтесь, вносите вклад и учитесь вместе с нами!
Как внести вклад:
- Поставьте звезду этому репозиторию :)
- Прочтите руководство контрибьютора. Новичкам советуем посмотреть метку
good-first-issue. - Если хотите глубже погрузиться в архитектуру — прочтите подробное описание Checkmate.
- Откройте issue, если столкнулись с багом.
- Если вы новичок — ищите
good-first-issue. - Откройте pull request для добавления функций, улучшений или исправлений.
- Посмотрите интерактивный обзор кодовой базы
Checkmateв CodeCanvas здесь. Чтобы доработать имеющиеся симуляции потоков данных или создать новые, следуйте краткому туториалу здесь.




