Pingera CLI
Pingera CLI — это мощный инструмент командной строки для взаимодействия с платформой Pingera. Он создан на базе Python, Typer и Rich и позволяет управлять проверками и другими ресурсами непосредственно из терминала, что делает его идеальным для автоматизации и интеграции в CI/CD-пайплайны.
Установка
Установить Pingera CLI можно с помощью pip или uv:
pip install pingera-cli
Это самый простой способ, который автоматически установит все необходимые зависимости.
После установки, утилита доступна по команде pngr.
Аутентификация
Перед началом работы необходимо аутентифицироваться, предоставив ваш API-ключ.
- Получите API-ключ: Создайте токен в настройках вашего аккаунта на app.pingera.ru.
- Авторизуйтесь: Выполните команду pngr auth login с вашим ключом:
pngr auth login
Вы можете добавить API-ключ в переменную окружения PINGERA_API_KEY и pngr автоматически будет использовать его.
Проверьте статус. Убедитесь, что аутентификация прошла успешно:
pngr auth status
Глобальные опции Эти опции доступны для всех команд:
--api-key <key>: API-ключ для аутентификации.--base-url <url>: URL API (по умолчанию: https://api.pingera.ru).--output <format>: Формат вывода. Поддерживаются table (по умолчанию), json, и yaml.--verbose, -v: Включает подробный вывод.--help: выводить помощь к команде.
Управление проверками (Checks)
pngr checks
Этот модуль используется для управления регулярными проверками и проверками по запросу.
Создание и изменение
Создать проверку: pngr checks create:
pngr checks create --name "My Website" --type web --url https://example.com
Для синтетических проверок можно использовать файл с Playwright-скриптом:
pngr checks create --name "My Playwright Check" --type synthetic --pw-script-file ./test.js.
Изменить проверку: pngr checks update <check-id>.
Получение информации
-
Список всех проверок:
pngr checks list. Можно использовать фильтры по типу (--type) и статусу (--status). -
Подробная информация о проверке:
pngr checks get <check-id>. -
Результаты проверки:
pngr checks results <check-id>. Вы можете фильтровать результаты по дате с помощью флагов--fromи--to.
Запуск проверок по требованию (On-Demand Checks)
pngr checks run
Этот модуль позволяет выполнять проверки немедленно, без привязки к расписанию.
- Запуск пользовательских проверок
- Кастомная проверка: pngr checks run custom:
pngr checks run custom --type web --url https://example.com --name "Quick Test"
Это идеальный вариант для быстрого тестирования в процессе разработки.
Проверка из файла:
pngr checks run custom --type synthetic --pw-script-file ./my-script.js.
Запуск существующих проверок
Запуск по ID: pngr checks run existing <check-id>.
Быстрые команды
Для удобства выполнения проверок по запросу доступны короткие команды, которые позволяют быстро запустить проверку без необходимости указывать множество параметров:
pngr ping <host>— быстрая ICMP проверкаpngr scan <host>— быстрая проверка портовpngr web <url>— быстрая проверка веб-сайтаpngr api <url>— быстрая проверка APIpngr ssl <host>— быстрая проверка SSL сертификатаpngr dns <domain>— быстрая DNS проверкаpngr syn <script>— быстрая синтетическая проверкаpngr multistep <name>— быстрая мультишаговая проверка
Примеры использования
Выполнить ICMP проверку:
pngr ping ya.ru
Выполнить проверку из определённого региона:
pngr ping ya.ru --region us-central1
Проверить веб-сайт:
pngr web https://example.com
Проверить SSL сертификат:
pngr ssl example.com
Проверить DNS записи:
pngr dns example.com
Эти команды значительно упрощают выполнение разовых проверок по сравнению с полной командой pngr checks run custom --type <type> --parameters ...
Управление задачами (Jobs)
- Список задач:
pngr checks jobs list. - Результат задачи:
pngr checks jobs result <job-id>.
Управление Статус Страницами (Status Pages)
pngr pages
Этот модуль позволяет управлять Статус Страницами через командную строку.
Основные операции со страницами
- Список страниц:
pngr pages list- получить список всех Статус Страниц вашей организации. - Информация о странице:
pngr pages get <page-id>- получить подробную информацию о конкретной странице. - Создать страницу:
pngr pages create --name "My Status Page"- создать новую Статус Страницу. - Обновить страницу:
pngr pages update <page-id>- изменить параметры существующей страницы. - Удалить страницу:
pngr pages delete <page-id>- удалить Статус Страницу.
Просмотр статуса по домену
Одна из самых удобных команд - быстрый просмотр статуса страницы по домену:
pngr pages show status.pingera.ru
Эта команда отобразит:
- Общий статус всех систем
- Список всех компонентов и их текущее состояние
- Информацию о недавних инцидентах
Управление компонентами
pngr pages components
Управление компонентами Статус Страницы:
pngr pages components list -p <page-id>- список всех компонентов страницыpngr pages components get <component-id> -p <page-id>- информация о компонентеpngr pages components create -p <page-id> --name "API Server"- создать новый компонентpngr pages components update <component-id> -p <page-id>- обновить компонентpngr pages components delete <component-id> -p <page-id>- удалить компонентpngr pages components uptime <component-id> -p <page-id>- получить статистику аптайма компонента
Управление инцидентами
pngr pages incidents
Управление инцидентами и запланированными работами:
pngr pages incidents list -p <page-id>- список всех инцидентовpngr pages incidents get <incident-id> -p <page-id>- информация об инцидентеpngr pages incidents create -p <page-id>- создать новый инцидентpngr pages incidents update <incident-id> -p <page-id>- обновить инцидентpngr pages incidents delete <incident-id> -p <page-id>- удалить инцидентpngr pages incidents unresolved -p <page-id>- список открытых инцидентовpngr pages incidents maintenance -p <page-id>- список запланированных работ
Примеры использования
Быстро проверить статус вашей страницы:
pngr pages show status.example.com
Создать новый инцидент:
pngr pages incidents create -p <page-id>
Получить список всех открытых инцидентов:
pngr pages incidents unresolved -p <page-id>
Посмотреть запланированные работы:
pngr pages incidents maintenance -p <page-id>