Vercel Drains: как экспортировать телеметрию и трейсинг в любые системы
Vercel Drains — это новый универсальный механизм для потоковой передачи данных observability из проектов на Vercel во внешние системы мониторинга. В отличие от предшественника Vercel Log Drains, который экспортировал только логи, обновлённый сервис поддерживает OpenTelemetry-трейсы, события Web Anal

Vercel Drains — это новый универсальный механизм для потоковой передачи данных observability из проектов на Vercel во внешние системы мониторинга. В отличие от предшественника Vercel Log Drains, который экспортировал только логи, обновлённый сервис поддерживает OpenTelemetry-трейсы, события Web Analytics и метрики Speed Insights. Это позволяет разработчикам объединить все данные о работе приложения в одном канале и использовать любые инструменты анализа, от Datadog до Grafana.
Vercel Drains: что изменилось и как работает
Ранее Vercel Log Drains позволяли выгружать только логи серверных функций, edge-сети и билдов. Теперь функционал расширен: к логам добавились трассировки OpenTelemetry, события Web Analytics (например, просмотры страниц и источники трафика) и метрики Speed Insights (FCP, LCP, CLS и другие показатели производительности). Настройка Drains осуществляется через указание endpoint внешней системы, куда Vercel будет отправлять данные. Поддерживаются форматы JSON, NDJSON и OTLP для OpenTelemetry, что обеспечивает совместимость с большинством современных платформ observability.
Данные передаются по HTTPS в реальном времени. Для каждого drain можно настроить фильтры по типу данных, чтобы экспортировать только нужную информацию. Vercel не хранит данные — они сразу отправляются во внешнюю систему. Это означает, что для анализа необходимо иметь настроенный инструмент сбора на стороне получателя. Vercel гарантирует минимальную задержку, но не обеспечивает exactly-once доставку, поэтому для критически важных сценариев рекомендуется буферизация.
Какие системы поддерживает Vercel Drains?
Vercel Drains совместимы с любыми системами, которые могут принимать данные по HTTPS в форматах JSON, NDJSON или OTLP. Среди популярных платформ — Datadog, Grafana Loki, New Relic, Splunk, Elastic, а также самописные решения. Для OpenTelemetry требуется endpoint, совместимый с OpenTelemetry Collector или любым бэкендом, поддерживающим OTLP. Vercel также предоставляет возможность создавать несколько drains для разных команд или проектов, что удобно для крупных организаций.
Предыстория и контекст
Observability стала критически важной для современных веб-приложений, особенно на serverless-архитектуре. Разработчикам необходимо отслеживать ошибки, производительность и поведение пользователей. Ранее для этого приходилось настраивать отдельные инструменты для логов, трейсов и метрик, что усложняло инфраструктуру. Vercel уже предоставлял встроенные Logs, Web Analytics и Speed Insights, но эти данные были доступны только в интерфейсе Vercel. Для команд, использующих внешние системы мониторинга, требовался экспорт. Vercel Log Drains решали эту задачу только для логов. Теперь Vercel Drains закрывают потребность в едином канале для всех типов данных.
Чем Vercel Drains отличаются от Vercel Log Drains?
Основное отличие — в объёме поддерживаемых данных. Vercel Log Drains экспортировали только логи: логи функций, логи edge-сетей, логи билдов. Vercel Drains добавляют три новых типа данных. OpenTelemetry-трейсы позволяют отслеживать путь запроса через микросервисы и функции, выявлять узкие места. Web Analytics события дают информацию о поведении пользователей: какие страницы посещают, откуда приходят, какие действия совершают. Speed Insights метрики содержат данные о времени загрузки, First Contentful Paint (FCP), Largest Contentful Paint (LCP) и другие показатели производительности. Кроме того, Vercel Drains теперь поддерживают отправку данных в нескольких форматах, включая OTLP для OpenTelemetry, что упрощает интеграцию с современными системами observability. Также улучшена конфигурация: можно настраивать фильтры для каждого типа данных, чтобы экспортировать только нужную информацию.
Технические подробности и возможности интеграции
Vercel Drains работают на основе push-модели: Vercel отправляет данные на указанный endpoint. Для каждого drain можно настроить тип данных (логи, трейсы, веб-аналитика, метрики производительности) и формат. Поддерживаются форматы JSON, NDJSON и OTLP. Для OTLP требуется endpoint, совместимый с OpenTelemetry Collector или любым бэкендом, принимающим OTLP. Важно отметить, что Vercel Drains не хранят данные — они сразу передаются во внешнюю систему. Это означает, что для анализа данных необходимо иметь настроенный инструмент сбора. Vercel также предоставляет возможность создавать несколько drains для разных команд или проектов. С точки зрения производительности, Vercel гарантирует доставку данных с минимальной задержкой, но не гарантирует exactly-once семантику — возможны дубликаты или потеря данных в редких случаях. Для критически важных систем рекомендуется использовать буферизацию на стороне получателя.
Кого затронет и как
Нововведение в первую очередь полезно для разработчиков и DevOps-инженеров, которые используют Vercel для хостинга своих приложений и одновременно применяют внешние системы мониторинга. Раньше им приходилось настраивать отдельные интеграции для логов, трейсинга и метрик. Теперь все можно объединить в одном drain. Это сокращает время на конфигурацию и уменьшает количество точек отказа. Для компаний, которые уже используют OpenTelemetry, Vercel Drains становятся естественным расширением: они могут получать трейсы напрямую из Vercel без дополнительных агентов. Для тех, кто полагается на встроенные инструменты Vercel (Logs, Web Analytics, Speed Insights), изменения не обязательны — эти инструменты продолжают работать. Однако если компания хочет иметь единую панель мониторинга, Vercel Drains — оптимальное решение. В российском контексте стоит отметить, что Vercel — зарубежный сервис, и его использование может быть ограничено для некоторых компаний. Однако для тех, кто работает с глобальными проектами, это обновление упрощает observability.
Что будет дальше
Vercel, вероятно, продолжит расширять возможности Drains. Можно ожидать поддержку дополнительных типов данных, например, метрик использования ресурсов или событий безопасности. Также возможно появление предварительно настроенных интеграций с популярными сервисами, такими как Datadog, Grafana Cloud или AWS CloudWatch. Сама концепция Drains как единого канала для observability данных становится стандартом в serverless-экосистеме. В будущем Vercel может добавить возможность настройки трансформации данных перед отправкой или поддержку других протоколов, например, gRPC.
Итог
Vercel Drains — это эволюция Log Drains, превратившая их в универсальный инструмент для экспорта observability данных. Поддержка OpenTelemetry, Web Analytics и Speed Insights делает Vercel более гибким для команд, которые хотят использовать свои любимые инструменты мониторинга. Если вы используете Vercel и внешние системы observability, стоит рассмотреть переход на новые Drains — это упростит инфраструктуру и даст более полную картину работы приложения.