Семплювання
Семплювання — це процес, який обмежує кількість трейсів, що генеруються системою. Ruby SDK пропонує кілька головних семплерів.
Стандартна поведінка
Стандартно, всі відрізки семплюються, і таким чином, 100% трейсів семплюються. Якщо ви не потребуєте керування обсягом даних, не варто налаштовувати семплер.
Зокрема, стандартний семплер є композицією ParentBased та ALWAYS_ON, що гарантує, що кореневий відрізок у трейсі завжди семплюється, і що всі дочірні відрізки поважають прапорець семплювання свого пращура для прийняття рішення про семплювання. Це гарантує, що всі відрізки у трейсі стандартно семплюються.
Семплер TraceIdRatioBased
Найпоширеніший головний семплер - це семплер TraceIdRatioBased. Він детерміновано семплює відсоток трейсів, який ви передаєте як параметр.
Змінні середовища
Ви можете налаштувати семплер TraceIdRatioBased
за допомогою змінних середовища:
export OTEL_TRACES_SAMPLER="traceidratio"
export OTEL_TRACES_SAMPLER_ARG="0.1"
Це вказує SDK семплювати відрізки таким чином, щоб лише 10% трейсів експортувалися.
Налаштування в коді
Хоча можливо налаштувати семплер TraceIdRatioBased
в коді, це не рекомендується. Це вимагає вручну налаштувати Tracer Provider з усіма правильними опціями конфігурації, що важко зробити правильно порівняно з використанням OpenTelemetry::SDK.configure
.
Відгук
Чи це було корисним?
Дякуємо. Ми цінуємо ваші відгуки!
Будь ласка, дайте нам знати як ми можемо покращити цю сторінку. Ми цінуємо ваші відгуки!