Skip to content

Latest commit

 

History

History
197 lines (141 loc) · 14.7 KB

File metadata and controls

197 lines (141 loc) · 14.7 KB

bluewave-labs%2Fcheckmate | Trendshift

🇺🇸 English | 🇸🇦 العربية | 🇪🇸 Català | 🇨🇿 Čeština | 🇩🇪 Deutsch | 🇪🇸 Español | 🇫🇮 Suomi | 🇫🇷 Français | 🇯🇵 日本語 | 🇧🇷 Português (Brasil) | 🇷🇺 Русский | 🇹🇭 ไทย | 🇹🇷 Türkçe | 🇺🇦 Українська | 🇻🇳 Tiếng Việt | 🇨🇳 简体中文 | 🇹🇼 繁體中文

Ask DeepWiki

Open source приложение для мониторинга доступности и инфраструктуры

Run on PikaPods

image

В этом репозитории находятся как 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).

Руководство пользователя

Инструкции по использованию доступны здесь.

Требования

  • Установленный Docker
  • Установленный Git

Установка

Инструкции по установке смотрите на портале документации Checkmate.

В качестве альтернативы вы можете использовать Coolify, Elestio, K8s, Sive Host (ЮАР), Cloudzy или Pikapods, чтобы быстро поднять инстанс Checkmate. Если вы хотите мониторить серверную инфраструктуру, потребуется агент Capture. В репозитории Capture также есть инструкции по установке.

Использование собственного УЦ

Если нужно мониторить внутренние HTTPS-эндпоинты с сертификатами от приватных УЦ (например, Smallstep), смотрите наше руководство по доверию собственным УЦ с параметрами конфигурации Docker.

Дополнительная документация — в каталоге docs.

Производительность

Благодаря многочисленным оптимизациям Checkmate работает с исключительно низким потреблением памяти и требует минимума RAM и CPU. Ниже — потребление памяти инстансом Node.js на сервере, который мониторит 323 сервера каждую минуту:

image

А вот объём памяти MongoDB и Redis на том же сервере (398 МБ и 15 МБ) для того же количества серверов:

image

Вопросы и идеи

Если у вас есть вопросы, предложения или комментарии — есть несколько вариантов:

Смело задавайте вопросы и делитесь идеями — мы будем рады услышать вас!

Возможности

  • Полностью 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-запросов
  • Многоязычная поддержка: арабский, китайский (упрощённый), китайский (традиционный, Тайвань), чешский, английский, финский, французский, немецкий, японский, португальский (Бразилия), русский, испанский, тайский, турецкий, украинский и вьетнамский

Жизненный цикл монитора

  1. Монитор выполняет проверку (HTTP / ping / порт / оборудование через агента Capture)
  2. Результат сохраняется (успех/неудача + время отклика)
  3. Недавние результаты проверяются по заданному порогу смены статуса
  4. Если порог достигнут, а текущий статус отличается от предыдущего — состояние монитора изменяется (например, initializing, up, down, breached)
  5. При смене состояния инцидент создаётся или закрывается в зависимости от текущего статуса
  6. Уведомления отправляются в соответствии с настройками

Скриншоты

image

image

image

image

Технологии

Несколько ссылок

Участие

Мы — 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 — так что не стесняйтесь, присоединяйтесь, вносите вклад и учитесь вместе с нами!

Как внести вклад:

  1. Поставьте звезду этому репозиторию :)
  2. Прочтите руководство контрибьютора. Новичкам советуем посмотреть метку good-first-issue.
  3. Если хотите глубже погрузиться в архитектуру — прочтите подробное описание Checkmate.
  4. Откройте issue, если столкнулись с багом.
  5. Если вы новичок — ищите good-first-issue.
  6. Откройте pull request для добавления функций, улучшений или исправлений.
  7. Посмотрите интерактивный обзор кодовой базы Checkmate в CodeCanvas здесь. Чтобы доработать имеющиеся симуляции потоков данных или создать новые, следуйте краткому туториалу здесь.

Star History Chart