Поширення контексту
З поширенням контексту сигнали можуть бути корельовані один з одним, незалежно від того, де вони генеруються. Хоча це не обмежується лише трасуванням, поширення контексту дозволяє трейсам будувати причинно-наслідкову інформацію про систему через сервіси, які довільно розподілені між процесами та межами мереж.
Щоб зрозуміти поширення контексту, вам потрібно зрозуміти дві окремі концепції: контекст і поширення.
Контекст
Контекст — це обʼєкт, який містить інформацію для сервісу відправника та отримувача або одиниці виконання, щоб корелювати один сигнал з іншим.
Коли Service A викликає Service B, він містить ідентифікатор трейсу та ідентифікатор відрізка як частину контексту. Service B використовує ці значення для створення нового відрізка, який належить тому ж самому трейсу, встановлюючи відрізок від Service A в якості батьківського. Це дозволяє відстежувати повний потік запиту через межі сервісів.
Поширення
Поширення — це механізм, який переміщує контекст між сервісами та процесами. Він серіалізує або десеріалізує обʼєкт контексту і надає відповідну інформацію для поширення від одного сервісу до іншого.
Поширення зазвичай обробляється бібліотеками інструментування і є прозорим для користувача. У випадку, якщо вам потрібно вручну поширювати контекст, ви можете використовувати API Поширювачів.
OpenTelemetry підтримує кілька офіційних поширювачів. Стандартний поширювач використовує заголовки, визначені специфікацією W3C TraceContext.
Специфікація
Щоб дізнатися більше про Поширення Контексту, дивіться Специфікацію Контексту.
Відгук
Чи це було корисним?
Дякуємо. Ми цінуємо ваші відгуки!
Будь ласка, дайте нам знати як ми можемо покращити цю сторінку. Ми цінуємо ваші відгуки!