https://github.com/nixel2007/opentelemetry-propagator-b3
https://github.com/nixel2007/opentelemetry-propagator-b3
Last synced: 25 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/nixel2007/opentelemetry-propagator-b3
- Owner: nixel2007
- License: mit
- Created: 2026-04-30T10:02:14.000Z (2 months ago)
- Default Branch: master
- Last Pushed: 2026-05-07T10:31:58.000Z (about 2 months ago)
- Last Synced: 2026-05-07T11:36:25.862Z (about 2 months ago)
- Language: 1C Enterprise
- Size: 145 KB
- Stars: 0
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# opentelemetry-propagator-b3
[](https://sonar.openbsl.ru/dashboard?id=opentelemetry-propagator-b3)
[](https://sonar.openbsl.ru/component_measures?id=opentelemetry-propagator-b3&metric=coverage)
[](https://sonar.openbsl.ru/project/issues?id=opentelemetry-propagator-b3&resolved=false&types=BUG)
[](https://sonar.openbsl.ru/project/issues?id=opentelemetry-propagator-b3&resolved=false&types=CODE_SMELL)
[](https://t.me/autumn_winow)
B3 (Zipkin) пропагатор для [OpenTelemetry SDK](https://github.com/nixel2007/opentelemetry) на OneScript.
Согласно [спецификации OpenTelemetry Propagators Distribution](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/context/api-propagators.md#propagators-distribution), официальный список пропагаторов **MUST be distributed as separate, optional packages**. Этот пакет — отдельная поставка B3-пропагатора, чтобы основной SDK не нёс зависимостей на не-W3C форматы.
## Установка
```sh
opm install opentelemetry-propagator-b3
```
## Быстрый старт
```bsl
#Использовать opentelemetry
#Использовать opentelemetry-propagator-b3
// По умолчанию single-header формат: b3: {trace}-{span}-{sampled}
Пропагатор = Новый ОтелB3Пропагатор();
// Multi-header формат: X-B3-TraceId, X-B3-SpanId, X-B3-Sampled
Пропагатор = Новый ОтелB3Пропагатор(ОтелФорматB3.Мульти());
// Внедрить контекст в исходящий запрос
Носитель = Новый Соответствие();
Пропагатор.Внедрить(ОтелКонтекст.Текущий(), Носитель);
// Извлечь контекст из входящего запроса
КонтекстВходящий = Пропагатор.Извлечь(Новый Соответствие(), ВходящиеЗаголовки);
```
## Поддерживаемые форматы
| Формат | Заголовки |
|--------|-----------|
| `single` (по умолчанию) | `b3: {traceId}-{spanId}-{sampled}-{parentSpanId}` |
| `multi` | `X-B3-TraceId`, `X-B3-SpanId`, `X-B3-Sampled`, `X-B3-Flags` |
При извлечении контекста оба формата поддерживаются одновременно: `single-header (b3)` имеет приоритет.
## Документация
- [Руководство пользователя](https://autumn-library.github.io/opentelemetry-propagator-b3/)
- [Справочник API](https://autumn-library.github.io/api/opentelemetry-propagator-b3/)
## Требования
- OneScript >= 1.0.0
- OpenTelemetry SDK для OneScript >= 1.0.0
## Лицензия
[MIT](LICENSE.md) © 2026 Nikita Fedkin