Автоматизация мониторинга веб-производительности с PSI API

Мониторинг скорости с помощью PageSpeed Insights API

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Автоматизация мониторинга веб-производительности с PSI API
Средний
от 1 дня до 3 дней

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1419
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1287
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    983
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1245
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    983
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    998

Мониторинг скорости с помощью PageSpeed Insights API

Скорость загрузки страниц напрямую влияет на конверсию и SEO. Отслеживать её вручную — задача не для инженера: после каждого деплоя бегать за Lighthouse — терять время. Без автоматизации вы рискуете пропустить деградацию, что бьёт по позициям. Мы предлагаем автоматизировать мониторинг Core Web Vitals с помощью PageSpeed Insights API (согласно официальной документации). Это бесплатный сервис, который возвращает два типа данных: лабораторные (Lighthouse) и полевые (Chrome UX Report). Первые реагируют мгновенно, вторые — за 28 дней накопления. Вместе они дают полную картину.

Как работает мониторинг

PSI API бесплатен: до 25 000 запросов в день с ключом. Ключ создаётся в Google Cloud Console. Мы подготавливаем скрипт на Python, который собирает метрики для приоритетных страниц (главная, категории, карточки товаров, корзина) и сохраняет их в PostgreSQL. Скрипт запускается по расписанию (например, каждые 24 часа через cron) и автоматически обрабатывает до сотни URL за один прогон.

import requests from typing import Literal PSI_API_URL = 'https://www.googleapis.com/pagespeedonline/v5/runPagespeed' def fetch_psi(url, api_key, strategy): params = { 'url': url, 'key': api_key, 'strategy': strategy, 'category': ['performance'], } resp = requests.get(PSI_API_URL, params=params, timeout=60) resp.raise_for_status() return resp.json() def extract_metrics(response): field = response.get('loadingExperience', {}) lab = response.get('lighthouseResult', {}) # извлечение полевых и лабораторных метрик return {'field': field, 'lab': lab} 

Какие метрики отслеживаем

Метрика Лабораторные Полевые (CrUX)
LCP largest-contentful-paint LARGEST_CONTENTFUL_PAINT_MS
INP interaction-to-next-paint INTERACTION_TO_NEXT_PAINT
CLS cumulative-layout-shift CUMULATIVE_LAYOUT_SHIFT_SCORE
FCP first-contentful-paint FIRST_CONTENTFUL_PAINT_MS
TTFB server-response-time EXPERIMENTAL_TIME_TO_FIRST_BYTE

Мы также фиксируем Performance score из Lighthouse. Для каждого URL сохраняем историю — можно сравнить сегодняшний замер с вчерашним и выявить тренды.

Как настроить алерты при падении Core Web Vitals?

Определяем пороговые значения. Например, если LCP превышает 4 секунды или Performance score падает ниже 70 — отправляем уведомление в Telegram или email. Пороги настраиваются индивидуально: для интернет-магазина они жёстче, для блога — мягче.

THRESHOLDS = { 'lab_performance_score': 0.7, 'lab_lcp_ms': 4000, 'field_lcp_category': 'SLOW', } def check_alerts(current, thresholds): alerts = [] if current['lab']['performance_score'] < thresholds['lab_performance_score']: alerts.append(f"Performance score упал до {current['lab']['performance_score']*100}%") # остальные проверки return alerts 

Сравниваем с предыдущим замером: если метрика ухудшилась больше чем на 10% — тоже алерт. Это позволяет ловить деградацию даже в пределах «зелёной» зоны. Для отклонений в 5–15% (типичный разброс PSI) используем медиану трёх запусков.

Сравнение PSI API с локальным Lighthouse

Параметр PSI API Локальный Lighthouse
Стоимость Бесплатно (до 25 000 запросов/день) Бесплатно, но требует сервера
Скорость запуска ~30–60 секунд на URL Зависит от железа
Данные Лабораторные + полевые (CrUX) Только лабораторные
Ограничения Нет авторизации, вариабельность 5–15% Полный контроль, но нет полевых

PSI API в 10 раз дешевле коммерческих сервисов (например, SpeedCurve от $100/мес) и при этом даёт полевые метрики, недоступные локальному Lighthouse. Экономия бюджета может достигать $2000 в год при переходе на PSI.

Что входит в работу

  • Получение и настройка API-ключа
  • Скрипт сбора метрик для N страниц (вы определяете список)
  • База данных для хранения истории (PostgreSQL)
  • Уведомления о деградации (Telegram, email, Slack — на выбор)
  • Дашборд Grafana для визуализации трендов
  • Интеграция в CI/CD: автоматический прогон перед каждым деплоем
  • Документация и обучение вашей команды

Почему важен мониторинг обоих типов данных?

Лабораторные данные реагируют мгновенно — вы видите эффект каждой правки кода. Полевые данные запаздывают на 28 дней, но показывают реальную картину. Только вместе они дают полную информацию. Например, вы улучшили LCP на тестовом окружении, а в поле он всё ещё плох — значит, проблема в другом (например, медленный сервер или тяжёлый JavaScript).

Ограничения PSI API

API запускает Lighthouse на своих серверах, результаты варьируются на 5–15%. Мы запускаем три замера и берём медиану. Для авторизованных страниц (личный кабинет) используем локальный Lighthouse через Node.js. Полевые данные требуют достаточного трафика — минимум несколько сотен визитов в месяц на страницу.

Сроки и стоимость

Первичную интеграцию (сбор + алерты) делаем за 1–2 рабочих дня. Расширенную версию с Grafana и CI/CD — за 3–4 дня. Стоимость рассчитывается индивидуально — закажите консультацию для предварительной оценки.

Опыт и гарантии

Мы более 5 лет занимаемся веб-производительностью, реализовали 50+ проектов по оптимизации и мониторингу. Гарантируем стабильную работу скриптов и быструю обратную связь.

Технические детали интеграции

Для каждого URL создаётся отдельная запись в таблице metrics с полями: url, timestamp, lab_performance_score, field_lcp_category и т.д. Индексы по url и timestamp ускоряют выборку. Алерты реализованы через простой polling-скрипт, который раз в минуту проверяет свежие данные. Для CI/CD используется GitHub Actions: перед деплоем запускается тест с порогом, и если метрики хуже baseline — пайплайн фейлится.

Закажите настройку мониторинга, и мы подготовим решение под ваш стек.