Google ImaGen3
Хотите получать более полезную информацию? Подпишитесь на наши еженедельные рассылки, чтобы получать только то, что важно для руководителей в сфере корпоративного ИИ, данных и безопасности. Подпишитесь сейчас
Рассмотрите возможность поддержки и развития платформы электронной коммерции, которая обрабатывает миллионы транзакций каждую минуту, генерируя огромные объёмы телеметрических данных, включая метрики, журналы и трассировки по нескольким микросервисам. При возникновении критических инцидентов дежурные инженеры сталкиваются с непростой задачей: просеять огромный объём данных, чтобы извлечь релевантные сигналы и выводы. Это похоже на поиск иголки в стоге сена.
Это превращает возможность наблюдения в источник разочарования, а не понимания. Чтобы решить эту серьёзную проблему, я начал изучать решение, использующее протокол контекста модели (MCP) для добавления контекста и формирования выводов на основе журналов и распределённых трассировок. В этой статье я расскажу о своём опыте создания платформы наблюдения на базе ИИ, объясню архитектуру системы и поделюсь практическими выводами, полученными в процессе.
Почему наблюдаемость сложна?
В современных программных системах наблюдаемость — это не роскошь, а базовая необходимость. Возможность измерять и понимать поведение системы — основа надёжности, производительности и доверия пользователей. Как гласит поговорка: «То, что нельзя измерить, нельзя улучшить».
Однако добиться наблюдаемости в современных облачных архитектурах, основанных на микросервисах, сложнее, чем когда-либо. Один пользовательский запрос может пройти через десятки микросервисов, каждый из которых генерирует логи, метрики и трассировки. В результате получается огромное количество телеметрических данных:
Масштабирование ИИ достигает предела
Ограничения мощности, рост стоимости токенов и задержки в выводе данных меняют корпоративный ИИ. Присоединяйтесь к нашему эксклюзивному салону, чтобы узнать, как обстоят дела у лучших команд:
- Превращение энергии в стратегическое преимущество
- Разработка эффективного вывода для реального увеличения пропускной способности
- Обеспечение конкурентоспособной рентабельности инвестиций с помощью устойчивых систем ИИ
Забронируйте свое место, чтобы оставаться впереди : https://bit.ly/4mwGngO
- Десятки терабайт журналов в день
- Десятки миллионов точек метрических данных и предварительных агрегатов
- Миллионы распределенных следов
- Тысячи идентификаторов корреляции генерируются каждую минуту
Проблема заключается не только в объёме данных, но и в их фрагментации. Согласно отчёту New Relic «Прогноз наблюдаемости за 2023 годом», 50% организаций предоставляют разрозненные телеметрические данные, и только 33% достигают единого представления метрик, журналов и трассировок.
Журналы рассказывают одну часть истории, метрики — другую, трассировки — третью. Без последовательной цепочки контекста инженерам приходится вручную сопоставлять данные, полагаясь на интуицию, знание племени и утомительную детективную работу во время инцидентов.
Из-за этой сложности я начал задаваться вопросом: как ИИ может помочь нам преодолеть разрозненность данных и предложить комплексную и полезную информацию? В частности, можем ли мы сделать телеметрические данные по сути более содержательными и доступными как для людей, так и для машин, используя структурированный протокол, такой как MCP? Этот центральный вопрос лег в основу этого проекта.
Понимание MCP: перспектива конвейера данных
Anthropic определяет MCP как открытый стандарт, позволяющий разработчикам создавать безопасное двустороннее соединение между источниками данных и инструментами ИИ. Этот структурированный конвейер данных включает в себя:
- Контекстный ETL для ИИ: стандартизация извлечения контекста из нескольких источников данных.
- Интерфейс структурированных запросов: позволяет запросам ИИ получать доступ к прозрачным и понятным слоям данных.
- Семантическое обогащение данных: встраивает значимый контекст непосредственно в телеметрические сигналы.
Это может сместить акцент на платформе с реактивного решения проблем на проактивное понимание.
Архитектура системы и поток данных
Прежде чем углубляться в детали реализации, давайте рассмотрим архитектуру системы.

На первом уровне мы разрабатываем данные контекстной телеметрии, встраивая стандартизированные метаданные в телеметрические сигналы, такие как распределённые трассировки, журналы и метрики. Затем, на втором уровне, обогащённые данные передаются на сервер MCP для индексации, структурирования и предоставления клиентам доступа к данным, обогащённым контекстом, через API. Наконец, аналитический модуль на базе ИИ использует структурированные и обогащённые данные телеметрии для обнаружения аномалий, корреляции и анализа первопричин для устранения неполадок в приложениях.
Такая многоуровневая структура гарантирует, что команды ИИ и инженеров будут получать контекстно-зависимые и практические выводы из телеметрических данных.
Реализуемое глубокое погружение: трехуровневая система
Давайте рассмотрим фактическую реализацию нашей платформы наблюдения на базе MCP, уделяя особое внимание потокам данных и преобразованиям на каждом этапе.
Уровень 1: Генерация данных, обогащенных контекстом
Во-первых, нам необходимо убедиться, что наши телеметрические данные содержат достаточно контекста для осмысленного анализа. Суть в том, что корреляция данных должна происходить на этапе их создания, а не анализа.
| def process_checkout(user_id, cart_items, payment_method): “””Моделируйте процесс оформления заказа с помощью контекстно-обогащенной телеметрии.””” # Сгенерировать идентификатор корреляции # Инициализируем контекстный словарь, который будет применен # Запустить трассировку OTel с тем же контекстом # Ведение журнала с использованием того же контекста # Распространение контекста json.dumps(контекст)}) |
Код 1. Обогащение контекста для журналов и трассировок
Такой подход гарантирует, что каждый телеметрический сигнал (журналы, метрики, трассировки) содержит одни и те же основные контекстные данные, решая проблему корреляции в источнике.
Уровень 2: Доступ к данным через сервер MCP
Затем я создал MCP-сервер, который преобразует необработанные телеметрические данные в API с возможностью запросов. Основные операции с данными здесь включают в себя следующее:
- Индексирование : создание эффективных поисков по контекстным полям
- Фильтрация : выбор соответствующих подмножеств телеметрических данных
- Агрегация : вычисление статистических показателей во временных окнах
| @app.post(“/mcp/logs”, response_model=Список[Журнал]) def query_logs(query: LogQuery): “””Журналы запросов с определенными фильтрами””” результаты = LOG_DB.copy() # Применить контекстные фильтры если запрос.user_id: # Применить фильтры по времени вернуть результаты[:query.limit] если query.limit иначе результаты |
Код 2. Преобразование данных с использованием сервера MCP
Этот уровень преобразует нашу телеметрию из неструктурированного озера данных в структурированный, оптимизированный для запросов интерфейс, которым может эффективно управлять система искусственного интеллекта.
Уровень 3: Аналитическая система на базе ИИ
Последний уровень — это компонент ИИ, который потребляет данные через интерфейс MCP, выполняя:
- Многомерный анализ : корреляция сигналов по журналам, метрикам и трассировкам.
- Обнаружение аномалий : выявление статистических отклонений от нормальных закономерностей.
- Определение первопричины : использование контекстных подсказок для изоляции вероятных источников проблем.
| def analyze_incident(self, request_id=None, user_id=None, timeframe_minutes=30): “””Анализ телеметрических данных для определения первопричины и рекомендаций.””” # Определить временное окно анализа # Получать соответствующие телеметрические данные на основе контекста # Извлечь службы, упомянутые в журналах, для целевого анализа метрик # Получите метрики для этих услуг # Рассчитать статистические свойства # Определите аномалии с помощью z-оценки возвращаться { |
Код 3. Метод анализа инцидентов, обнаружения аномалий и вывода
Влияние улучшенной MCP наблюдаемости
Интеграция MCP с платформами наблюдения может улучшить управление и понимание сложных телеметрических данных. Потенциальные преимущества включают:
- Более быстрое обнаружение аномалий, что приводит к сокращению минимального времени обнаружения (MTTD) и минимального времени устранения (MTTR).
- Более легкое выявление основных причин проблем.
- Меньше шума и меньше ненужных оповещений, что снижает утомляемость от оповещений и повышает производительность разработчиков.
- Меньше перерывов и переключений контекста при разрешении инцидентов, что приводит к повышению эффективности работы инженерной группы.
Практические идеи
Вот некоторые ключевые выводы из этого проекта, которые помогут командам разработать стратегию наблюдения.
- Контекстные метаданные следует внедрять на ранних этапах процесса генерации телеметрических данных, чтобы облегчить последующую корреляцию.
- Структурированные интерфейсы данных создавать структурированные уровни запросов на основе API, чтобы сделать телеметрию более доступной.
- Контекстно-зависимый ИИ фокусирует анализ на контекстно-обогащенных данных для повышения точности и релевантности.
- Обогащение контекста и методы ИИ должны регулярно совершенствоваться с использованием практической оперативной обратной связи.
Заключение
Объединение структурированных конвейеров данных и искусственного интеллекта открывает огромные перспективы для обеспечения наблюдаемости. Мы можем преобразовать обширные телеметрические данные в практические выводы, используя структурированные протоколы, такие как MCP, и анализ на основе искусственного интеллекта, что приводит к созданию проактивных, а не реактивных систем. Lumigo выделяет три важнейших столпа наблюдаемости: журналы, метрики и трассировки. Без интеграции инженерам приходится вручную сопоставлять разрозненные источники данных, что замедляет реагирование на инциденты.
То, как мы генерируем телеметрию, требует структурных изменений, а также аналитических методов для извлечения смысла.
Проной Госвами — специалист по облачным технологиям, инфраструктуре искусственного интеллекта и распределенным системам.
Источник: venturebeat.com



























