Авторы: Тед Янг, Притам Шах и Комитет по техническим спецификациям (Карлос Альберто, Богдан Друту, Сергей Канжелев и Юрий Шкуро).
Совместный проект получил название: http://opentelemetry.io
Очень, очень кратко:
- Мы создаем новый унифицированный набор библиотек и спецификаций для возможностей мониторинга телеметрии.
Он объединит проекты OpenTracing и OpenCensus и предоставит поддерживаемый путь для миграции.
- Эталонная реализация на Java будет доступна 24 апреля, работа над реализациями на других языках в полном объеме начнется 8 мая 2019 года.
Посмотреть расписание ты можешь здесь .
- К сентябрю 2019 года планируется паритет с существующими проектами на C#, Golang, Java, NodeJS и Python. Нам предстоит много работы, но мы справимся, если будем работать параллельно.
Если вы заинтересованы в участии в этом проекте, пожалуйста, зарегистрируйтесь и сообщите нам, какой вы хотели бы внести свой вклад.
- Как только реализация на каждом языке будет завершена, соответствующие проекты OpenTracing и OpenCensus будут закрыты.
Это значит, что старые проекты будут заморожены, а новый проект продолжит поддерживать существующие инструменты в течение двух лет, используя обратную совместимость.
Обзор проекта
Мы делаем слияние! Конечная цель — объединить проекты OpenTracing и OpenCensus в один общий проект. Ядром нового проекта станет набор чистых и продуманных интерфейсов, включая традиционные сборки библиотек, реализующих эти интерфейсы в виде т. н.
СДК.
Вишенкой на торте станут рекомендуемые стандарты для протоколов передачи данных и проводной связи, включая общие части инфраструктуры.
Результатом станет полноценная система телеметрии, подходящая для мониторинга микросервисов и других типов современных распределенных систем, совместимая с большинством основных OSS и коммерческого серверного программного обеспечения.
Главные события
24.04 — удостоверение кандидата передано на рассмотрение.8.05 — Формируется команда и начинает работать на всех языках.
20.05 — Официальный запуск проекта на Kubecon Barcelona. 6.09 — Реализации на C#, Golang, Java, NodeJS и Python достигают паритета со своими аналогами.
6.11 — Официальное завершение проектов OpenTracing и OpenCensus.
11.20 — Прощальная вечеринка в честь завершения проектов на Observability Summit, Kubecon San Diego.
Хронология конвергенции
Миграция для каждого языка включает готовую к использованию сборку SDK, инструменты для популярных библиотек, документацию, CI, инструменты обратной совместимости, а также закрытие связанных проектов OpenCensus и OpenTracing («закат»).
На сентябрь 2019 года мы поставили амбициозную цель — добиться паритета языков C#, Golang, Java, NodeJS и Python. Мы перенесем дату заката, пока все языки не будут готовы.
Но желательно этого избегать.
При просмотре целей, пожалуйста, учитывайте свое личное участие, сообщите нам об этом, заполнив форма регистрации или поздоровавшись в чатах Gitter проектов.
Вы можете просмотреть график в виде инфографики.
Здесь .
Цель: первый проект межъязыковой спецификации (завершение к 8 мая).
Важно работать слаженно, даже при параллельной работе на разных языках.
Межъязыковая спецификация обеспечивает руководство для проекта.
Звучит прозаично, но это гарантирует поддержку целостной системы, которая кажется знакомой независимо от языка программирования.
Обязательные требования к первому проекту спецификации языка X:
- Определения общей терминологии.
- Модель описания распределенных транзакций, статистики и метрик.
- Разъяснения по важным вопросам, возникшим в ходе реализации.
Цель: первый проект спецификации данных (завершение к 6 июля)
Спецификация данных определяет общий формат данных для трассировок и метрик, чтобы данные, экспортируемые всеми процессами, могли обрабатываться одной и той же инфраструктурой телеметрии независимо от процесса создания данных.Сюда входит схема данных для модели трассировки, описанная в межъязыковой спецификации.
Также включены определения метаданных для общих операций, которые трассировка использует для захвата, таких как HTTP-запросы, ошибки и запросы к базе данных.
Эти семантические соглашения являются примером.
Первый проект основан на текущем формате данных OpenCensus и будет содержать следующее:
- Схема данных, реализующая межъязыковую спецификацию.
- Определения метаданных для общих операций.
- Определения JSON и Protobuf.
- Реализация эталонных клиентов.
Формат распространения Трассировка-контекст разработан через W3C.
Цель: паритет всех основных поддерживаемых языков (завершение к 6 сентября)
Мы должны добиться паритета нынешней языковой экосистемы, заменяя старые проекты новыми.
- Определения интерфейсов для трассировки, метрик и распространения контекста на основе межъязыковой спецификации.
- Готовый к использованию SDK, который реализует эти интерфейсы и экспортирует данные трассировки.
Там, где это возможно, SDK будет создаваться путем портирования существующей реализации OpenCensus.
- Набор инструментов для популярных библиотек, которые в настоящее время включены в OpenTracing и OpenCensus.
- Новый SDK будет обратно совместим с текущими интерфейсами OpenTracing. Они позволят устаревшим инструментам OpenTracing работать вместе с новыми инструментами в одном процессе, позволяя пользователям со временем переносить свою работу.
- Когда новый SDK будет готов, для текущих пользователей OpenCensus будет создан план обновления.
Как и в случае с OpenTracing, устаревшие инструменты смогут продолжать работать вместе с новыми.
- К ноябрю OpenTracing и OpenCensus будут закрыты для принятия изменений.
Обратная совместимость с устаревшими инструментами будет поддерживаться в течение двух лет.
Цель: основная документация (завершение к 6 сентября)
Важнейшим фактором успеха любого проекта с открытым исходным кодом является документация.Нам нужна первоклассная документация и средства обучения, а наши технические писатели — самые активные разработчики проекта.
Обучение разработчиков правильному мониторингу программного обеспечения — одно из наиболее важных последствий, которые мы хотим оказать на мир.
Для начала работы требуется минимум следующей документации:
- Ориентация на проект.
- Наблюдательность 101.
- Начало работы.
- Языковые гиды (отдельно для каждого).
Цель: Registry v1.0 (завершение к 6 июля)
Реестр — еще один критически важный компонент, улучшенная версия.
- Легко найти библиотеки, плагины, установщики и другие компоненты.
- Простое управление компонентами реестра.
- Вы можете узнать, какие функции SDK доступны на каждом языке.
Цель: инфраструктура для тестирования и выпуска программного обеспечения (завершение к 6 сентября)
Чтобы гарантировать, что мы продолжаем предоставлять безопасный код, на который вы можете положиться, мы взяли на себя обязательства по созданию качественных конвейеров тестирования и выпуска программного обеспечения.Пожалуйста, дайте нам знать, можете ли вы позаботиться о конвейерах для тестирования, определения характеристик и выпуска программного обеспечения.
Мы четко указываем уровень готовности производства, и зрелость инфраструктуры тестирования будет для нас главным решающим фактором.
Цель: закрытие проектов OpenTracing и OpenCensus (завершение к 6 ноября)
Мы планируем начать закрытие старых проектов 6 сентября, если новый проект достигнет с ними паритета.Через 2 месяца, при паритете всех языков, мы планируем закрыть проекты OpenTracing и OpenCensus. Это следует понимать так:
- репозитории будут заморожены, и дальнейшие изменения вноситься не будут.
- Для текущего набора инструментов запланирован двухлетний период поддержки.
- пользователи смогут перейти на новый SDK, используя те же инструменты.
- Возможно постепенное обновление.
Присоединяйтесь к нам
Мы будем рады любой помощи, ведь это огромный проект. Если вам интересно узнать о наблюдаемости, сейчас самое время!- Заполнять форма регистрации за непосредственное участие и вступление в команду.
- Свяжитесь с нами по каналам Опентрасинг И OpenCensus Гиттер.
- Проверить Эталонная реализация Java , который находится в разработке.
-
Дебольский Николай Григорьевич.
19 Oct, 24 -
Восстановление Емкости Аккумулятора Ибп
19 Oct, 24 -
«Яндекс» Прислушался К Критике
19 Oct, 24 -
Почему Flex Превзойдет Silverlight
19 Oct, 24