Семплінг
Семплінг — це процес, який обмежує кількість відрізків, що генеруються системою. Точний семплер, який ви повинні використовувати, залежить від ваших конкретних потреб, але загалом ви повинні приймати рішення на початку трасування і дозволяти рішенню про семплінг поширюватися на інші сервіси.
Sampler
можна встановити на постачальника трасувальника за допомогою опції WithSampler
, як показано нижче:
provider := trace.NewTracerProvider(
trace.WithSampler(trace.AlwaysSample()),
)
AlwaysSample
та NeverSample
є самопояснювальними значеннями. AlwaysSample
означає, що кожен відрізок семплюється, тоді як NeverSample
означає, що жоден відрізок не семплюється. Коли ви тільки починаєте, або в середовищі розробки, використовуйте AlwaysSample
.
Інші семплери включають:
TraceIDRatioBased
, який семплює частину відрізків, на основі частки, заданої семплеру. Якщо ви встановите .5, половина всіх відрізків буде семплюватися.ParentBased
, це декоратор семплера, який поводиться по-різному, залежно від батьківського відрізка. Якщо відрізок не має батька, використовується декорований семплер для прийняття рішення про семплінг на основі батьківського відрізк. Типово,ParentBased
семплює відрізки, які мають батьків, що були семпльовані, і не семплює відрізки, чиї батьки не були семпльовані.
Стандартно, постачальник трасувальника використовує семплер ParentBased
з семплером AlwaysSample
.
У промисловому середовищі розгляньте можливість використання семплера ParentBased
з семплером TraceIDRatioBased
.
Відгук
Чи це було корисним?
Дякуємо. Ми цінуємо ваші відгуки!
Будь ласка, дайте нам знати як ми можемо покращити цю сторінку. Ми цінуємо ваші відгуки!