Мониторы

Synthetic Monitor

Synthetic monitoring — проактивная проверка приложений через имитацию действий пользователя. Synthetic monitor проверяет доступность и производительность из разных точек мира.

Пример

Пример использования Synthetic Monitor:


// В контексте скрипта доступны объекты:

// - axios: модуль Axios для HTTP-запросов
// - page: объект Playwright Page для работы с браузером
// - browserType: тип браузера в текущем запуске — Chromium, Firefox, Webkit
// - screenSizeType: размер экрана в текущем запуске — Mobile, Tablet, Desktop
// - browser: объект Playwright Browser

// Их можно использовать для браузера и HTTP.

await page.goto('https://playwright.dev/');

// Документация Playwright: https://playwright.dev/docs/intro

// Примеры переменных контекста монитора:

console.log(browserType) // тип браузера: Chromium, Firefox, Webkit

console.log(screenSizeType) // размер: Mobile, Tablet, Desktop

// page привязан к контексту браузера — клики, формы и т.д.

// Скриншоты:

const screenshots = {};

screenshots['screenshot-name'] = await page.screenshot(); // несколько скриншотов с разными именами

// Возврат значения: return с полем data; скриншоты — в объекте screenshots

// Логирование: console.log
// console.log('Hello World');

// Доступен browser context — новая страница, попапы и т.п.


return {
    data: 'Hello World',
    screenshots: screenshots 
};

Playwright

Используется Playwright для имитации действий пользователя. Объект page — клики, формы, скриншоты.

Скриншоты

Скриншоты можно делать в любой момент скрипта, несколько штук — в объекте screenshots в return. Они отображаются в dashboard Status200 для этого монитора.


const screenshots = {};

screenshots['screenshot-name'] = await page.screenshot();

return {
    data: 'Hello World',
    screenshots: screenshots 
};

Monitor Secrets

Добавление секрета

Status200 Dashboard → Project SettingsMonitor SecretsCreate Monitor Secret.

Create Secret

Выберите мониторы, которым разрешён доступ к секрету. Например, секрет ApiKey и список мониторов.

Важно: секреты шифруются. Потеряли значение — создайте новый; просмотр и правка сохранённого значения недоступны.

Использование в скрипте

Объект monitorSecrets в контексте скрипта — доступ к секретам, привязанным к монитору.

// секрет типа string — в кавычках
let stringSecret = '{{monitorSecrets.StringSecret}}';

// number или boolean — без кавычек
let numberSecret = {{monitorSecrets.NumberSecret}};

let booleanSecret = {{monitorSecrets.BooleanSecret}};

// проверка через console.log
console.log(stringSecret); 

Доступные модули в скрипте

  • browser: Playwright Browser — новые страницы, закрытие и др.
  • page: Playwright Page — клики, формы, скриншоты.
  • axios: HTTP-запросы (promise-based клиент).
  • crypto: криптооперации Node.js (обёртки OpenSSL: hash, HMAC, cipher и т.д.).
  • console.log: вывод в лог (отладка).
  • http / https: встроенные HTTP/HTTPS клиент и сервер Node.js.

На что обратить внимание

  • В скрипте в первую очередь доступен page (Playwright Page) для сценария в браузере.
  • console.log попадает в логи монитора.
  • Результат — return; скриншоты — в массиве/объекте screenshots.
  • browserType и screenSizeType отражают браузер и размер экрана в текущем прогоне.
  • Полный синтаксис JavaScript.
  • axios — для HTTP/API из скрипта.
  • На status200.ru в контексте обычно актуальные Playwright и браузеры. При self-hosted обновляйте пробы до свежих версий Playwright и браузеров.
  • Таймаут скрипта — 2 минуты; дольше — принудительное завершение.