chore(i18n): refresh uk translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-05-04 02:08:45 +00:00
parent 8fd67c526f
commit 2ddda7d091

View File

@ -1,40 +1,40 @@
---
read_when:
- Ви хочете надсилати дані про використання моделей OpenClaw, потік повідомлень або метрики сеансів до колектора OpenTelemetry
- Ви підключаєте трейси, метрики або журнали до Grafana, Datadog, Honeycomb, New Relic, Tempo чи іншого бекенда OTLP
- Вам потрібні точні назви метрик, назви спанів або структури атрибутів, щоб створювати панелі моніторингу чи сповіщення.
- Ви хочете надсилати дані про використання моделі OpenClaw, потік повідомлень або метрики сеансів до колектора OpenTelemetry
- Ви підключаєте трейси, метрики або журнали до Grafana, Datadog, Honeycomb, New Relic, Tempo або іншого OTLP-бекенду
- Вам потрібні точні назви метрик, назви спанів або структури атрибутів для створення панелей моніторингу чи сповіщень
summary: Експортуйте діагностику OpenClaw до будь-якого колектора OpenTelemetry через Plugin diagnostics-otel (OTLP/HTTP)
title: Експорт OpenTelemetry
x-i18n:
generated_at: "2026-05-03T17:25:22Z"
generated_at: "2026-05-04T02:07:41Z"
model: gpt-5.5
provider: openai
source_hash: c8091aa633a3e10593681f94913a858587a5dc69d9947e0c0d4132f6e897b00b
source_hash: d0b5be99b29fe5f13132b03cfeaf3ce978ee16f29e307aa76769bc414b5ca35f
source_path: gateway/opentelemetry.md
workflow: 16
---
OpenClaw експортує діагностику через офіційний Plugin `diagnostics-otel`
за допомогою **OTLP/HTTP (protobuf)**. Будь-який колектор або бекенд, що приймає OTLP/HTTP,
працює без змін коду. Про локальні файлові журнали та як їх читати див.
працює без змін у коді. Про локальні файлові журнали та як їх читати див.
[Журналювання](/uk/logging).
## Як це працює разом
- **Події діагностики** — це структуровані внутрішньопроцесні записи, які
Gateway і вбудовані plugins генерують для запусків моделей, потоку повідомлень, сеансів, черг
- **Діагностичні події** — це структуровані внутрішньопроцесні записи, які
Gateway і вбудовані Plugins створюють для запусків моделей, потоку повідомлень, сесій, черг
та exec.
- **Plugin `diagnostics-otel`** підписується на ці події та експортує їх як
OpenTelemetry **метрики**, **трейси** та **журнали** через OTLP/HTTP.
- **Виклики провайдерів** отримують W3C-заголовок `traceparent` від довіреного
контексту span виклику моделі OpenClaw, коли транспорт провайдера приймає власні
заголовки. Контекст трасування, згенерований plugin, не поширюється.
- Експортери підключаються лише тоді, коли ввімкнені і діагностична поверхня, і plugin,
тому внутрішньопроцесна вартість за замовчуванням залишається майже нульовою.
- **Виклики провайдера** отримують заголовок W3C `traceparent` від довіреного
контексту span виклику моделі OpenClaw, коли транспорт провайдера приймає користувацькі
заголовки. Контекст трасування, створений Plugin, не поширюється.
- Експортери підключаються лише тоді, коли ввімкнено і діагностичну поверхню, і Plugin,
тому внутрішньопроцесна вартість за замовчуванням залишається близькою до нуля.
## Швидкий старт
Для пакетних інсталяцій спочатку встановіть plugin:
Для пакетних інсталяцій спочатку встановіть Plugin:
```bash
openclaw plugins install clawhub:@openclaw/diagnostics-otel
@ -65,7 +65,7 @@ openclaw plugins install clawhub:@openclaw/diagnostics-otel
}
```
Ви також можете ввімкнути plugin з CLI:
Ви також можете ввімкнути Plugin з CLI:
```bash
openclaw plugins enable diagnostics-otel
@ -77,9 +77,9 @@ openclaw plugins enable diagnostics-otel
## Експортовані сигнали
| Сигнал | Що до нього входить |
| Сигнал | Що до нього потрапляє |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| **Метрики** | Лічильники та гістограми для використання токенів, вартості, тривалості запуску, потоку повідомлень, ліній черг, стану сеансів, exec і навантаження на пам’ять. |
| **Метрики** | Лічильники та гістограми для використання токенів, вартості, тривалості запуску, потоку повідомлень, смуг черг, стану сесій, exec і тиску памʼяті. |
| **Трейси** | Spans для використання моделі, викликів моделі, життєвого циклу harness, виконання інструментів, exec, обробки webhook/повідомлень, складання контексту та циклів інструментів. |
| **Журнали** | Структуровані записи `logging.file`, експортовані через OTLP, коли ввімкнено `diagnostics.otel.logs`. |
@ -124,53 +124,53 @@ openclaw plugins enable diagnostics-otel
| Змінна | Призначення |
| ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `OTEL_EXPORTER_OTLP_ENDPOINT` | Перевизначає `diagnostics.otel.endpoint`. Якщо значення вже містить `/v1/traces`, `/v1/metrics` або `/v1/logs`, воно використовується як є. |
| `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT` / `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT` / `OTEL_EXPORTER_OTLP_LOGS_ENDPOINT` | Перевизначення endpoint для окремих сигналів, які використовуються, коли відповідний ключ конфігурації `diagnostics.otel.*Endpoint` не задано. Конфігурація окремого сигналу має пріоритет над env окремого сигналу, а той має пріоритет над спільним endpoint. |
| `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT` / `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT` / `OTEL_EXPORTER_OTLP_LOGS_ENDPOINT` | Перевизначення endpoint для конкретного сигналу, що використовуються, коли відповідний ключ конфігурації `diagnostics.otel.*Endpoint` не задано. Конфігурація для конкретного сигналу має пріоритет над env для конкретного сигналу, а він має пріоритет над спільним endpoint. |
| `OTEL_SERVICE_NAME` | Перевизначає `diagnostics.otel.serviceName`. |
| `OTEL_EXPORTER_OTLP_PROTOCOL` | Перевизначає мережевий протокол (сьогодні враховується лише `http/protobuf`). |
| `OTEL_SEMCONV_STABILITY_OPT_IN` | Установіть `gen_ai_latest_experimental`, щоб генерувати найновіший експериментальний атрибут GenAI span (`gen_ai.provider.name`) замість застарілого `gen_ai.system`. Метрики GenAI завжди використовують обмежені семантичні атрибути з низькою кардинальністю. |
| `OPENCLAW_OTEL_PRELOADED` | Установіть `1`, коли інший preload або хост-процес уже зареєстрував глобальний OpenTelemetry SDK. Тоді plugin пропускає власний життєвий цикл NodeSDK, але все одно підключає діагностичні слухачі та враховує `traces`/`metrics`/`logs`. |
| `OTEL_EXPORTER_OTLP_PROTOCOL` | Перевизначає протокол передавання (сьогодні враховується лише `http/protobuf`). |
| `OTEL_SEMCONV_STABILITY_OPT_IN` | Установіть `gen_ai_latest_experimental`, щоб створювати найновіший експериментальний атрибут GenAI span (`gen_ai.provider.name`) замість застарілого `gen_ai.system`. Метрики GenAI завжди використовують обмежені семантичні атрибути з низькою кардинальністю. |
| `OPENCLAW_OTEL_PRELOADED` | Установіть `1`, коли інший preload або хост-процес уже зареєстрував глобальний OpenTelemetry SDK. Тоді Plugin пропускає власний життєвий цикл NodeSDK, але все одно підключає діагностичних слухачів і враховує `traces`/`metrics`/`logs`. |
## Приватність і захоплення вмісту
Сирий вміст моделі/інструменту **не** експортується за замовчуванням. Spans містять обмежені
ідентифікатори (канал, провайдер, модель, категорію помилки, ідентифікатори запитів лише як хеш)
і ніколи не містять текст prompt, текст відповіді, вхідні дані інструментів, вихідні дані інструментів або
ключі сеансів.
Сирий вміст моделі/інструмента **не** експортується за замовчуванням. Spans містять обмежені
ідентифікатори (канал, провайдер, модель, категорія помилки, ідентифікатори запитів лише у вигляді хешу)
і ніколи не включають текст prompt, текст відповіді, вхідні дані інструмента, вихідні дані інструмента або
ключі сесії.
Вихідні запити до моделі можуть містити W3C-заголовок `traceparent`. Цей заголовок
генерується лише з діагностичного контексту трасування, що належить OpenClaw, для активного
виклику моделі. Наявні заголовки `traceparent`, надані викликачем, замінюються, тому plugins або
власні параметри провайдера не можуть підробити походження міжсервісного трейсу.
Вихідні запити моделі можуть включати заголовок W3C `traceparent`. Цей заголовок
створюється лише з діагностичного контексту трасування, що належить OpenClaw, для активного виклику моделі.
Наявні заголовки `traceparent`, надані викликачем, замінюються, тому Plugins або
користувацькі параметри провайдера не можуть підробити міжсервісне походження трейсу.
Установлюйте `diagnostics.otel.captureContent.*` у `true` лише тоді, коли ваш колектор і
політика зберігання схвалені для тексту prompt, відповіді, інструменту або системного prompt.
Кожен підключ є незалежним opt-in:
політика зберігання схвалені для тексту prompt, відповіді, інструмента або системного prompt.
Кожен підключ є окремим opt-in:
- `inputMessages` — вміст prompt користувача.
- `outputMessages` — вміст відповіді моделі.
- `toolInputs` — payload аргументів інструменту.
- `toolOutputs` — payload результатів інструменту.
- `toolInputs` — payload аргументів інструмента.
- `toolOutputs` — payload результатів інструмента.
- `systemPrompt` — зібраний системний/developer prompt.
Коли ввімкнено будь-який підключ, spans моделі та інструментів отримують обмежені, відредаговані
Коли будь-який підключ увімкнено, spans моделі та інструментів отримують обмежені, відредаговані
атрибути `openclaw.content.*` лише для цього класу.
## Семплювання та скидання
## Семплування та скидання
- **Трейси:** `diagnostics.otel.sampleRate` (лише root-span, `0.0` відкидає всі,
`1.0` зберігає всі).
- **Метрики:** `diagnostics.otel.flushIntervalMs` (мінімум `1000`).
- **Журнали:** OTLP-журнали враховують `logging.level` (рівень файлового журналу). Вони використовують
- **Журнали:** журнали OTLP враховують `logging.level` (рівень файлового журналу). Вони використовують
шлях редагування діагностичних log-record, а не форматування консолі. Інсталяціям із великим обсягом
слід надавати перевагу семплюванню/фільтрації в OTLP collector над локальним семплюванням.
- **Кореляція файлових журналів:** JSONL-файлові журнали містять верхньорівневі `traceId`,
слід надавати перевагу семплуванню/фільтрації в колекторі OTLP замість локального семплування.
- **Кореляція файлових журналів:** JSONL файлові журнали містять top-level `traceId`,
`spanId`, `parentSpanId` і `traceFlags`, коли виклик журналу має дійсний
діагностичний контекст трасування, що дає змогу обробникам журналів поєднувати локальні рядки журналів з
діагностичний контекст трасування, що дає змогу процесорам журналів поєднувати локальні рядки журналу з
експортованими spans.
- **Кореляція запитів:** HTTP-запити Gateway і WebSocket-фрейми створюють
внутрішню область трасування запиту. Журнали та діагностичні події всередині цієї області
за замовчуванням успадковують трасування запиту, тоді як spans запуску агента та виклику моделі
створюються як дочірні, щоб заголовки `traceparent` провайдера залишалися в тому самому трейсі.
- **Кореляція запитів:** HTTP-запити Gateway і кадри WebSocket створюють
внутрішню область трасування запиту. Журнали та діагностичні події в цій області
успадковують трасування запиту за замовчуванням, а spans запуску агента та виклику моделі
створюються як дочірні, щоб заголовки `traceparent` провайдера залишалися в тому самому трейсi.
## Експортовані метрики
@ -181,7 +181,7 @@ openclaw plugins enable diagnostics-otel
- `openclaw.run.duration_ms` (гістограма, attrs: `openclaw.channel`, `openclaw.provider`, `openclaw.model`)
- `openclaw.context.tokens` (гістограма, attrs: `openclaw.context`, `openclaw.channel`, `openclaw.provider`, `openclaw.model`)
- `gen_ai.client.token.usage` (гістограма, метрика семантичних конвенцій GenAI, attrs: `gen_ai.token.type` = `input`/`output`, `gen_ai.provider.name`, `gen_ai.operation.name`, `gen_ai.request.model`)
- `gen_ai.client.operation.duration` (гістограма, секунди, метрика семантичних конвенцій GenAI, attrs: `gen_ai.provider.name`, `gen_ai.operation.name`, `gen_ai.request.model`, необов’язковий `error.type`)
- `gen_ai.client.operation.duration` (гістограма, секунди, метрика семантичних конвенцій GenAI, attrs: `gen_ai.provider.name`, `gen_ai.operation.name`, `gen_ai.request.model`, optional `error.type`)
- `openclaw.model_call.duration_ms` (гістограма, attrs: `openclaw.provider`, `openclaw.model`, `openclaw.api`, `openclaw.transport`, плюс `openclaw.errorCategory` і `openclaw.failureKind` для класифікованих помилок)
- `openclaw.model_call.request_bytes` (гістограма, розмір у байтах UTF-8 фінального payload запиту моделі; без сирого вмісту payload)
- `openclaw.model_call.response_bytes` (гістограма, розмір у байтах UTF-8 подій потокової відповіді моделі; без сирого вмісту відповіді)
@ -198,58 +198,58 @@ openclaw plugins enable diagnostics-otel
- `openclaw.message.delivery.started` (лічильник, attrs: `openclaw.channel`, `openclaw.delivery.kind`)
- `openclaw.message.delivery.duration_ms` (гістограма, attrs: `openclaw.channel`, `openclaw.delivery.kind`, `openclaw.outcome`, `openclaw.errorCategory`)
### Черги та сеанси
### Черги та сесії
- `openclaw.queue.lane.enqueue` (лічильник, attrs: `openclaw.lane`)
- `openclaw.queue.lane.dequeue` (лічильник, attrs: `openclaw.lane`)
- `openclaw.queue.depth` (гістограма, attrs: `openclaw.lane` або `openclaw.channel=heartbeat`)
- `openclaw.queue.wait_ms` (гістограма, attrs: `openclaw.lane`)
- `openclaw.session.state` (лічильник, attrs: `openclaw.state`, `openclaw.reason`)
- `openclaw.session.stuck` (лічильник, attrs: `openclaw.state`; генерується лише для обліку застарілих сеансів без активної роботи)
- `openclaw.session.stuck_age_ms` (гістограма, attrs: `openclaw.state`; генерується лише для обліку застарілих сеансів без активної роботи)
- `openclaw.session.stuck` (лічильник, attrs: `openclaw.state`; створюється лише для обліку застарілих сесій без активної роботи)
- `openclaw.session.stuck_age_ms` (гістограма, attrs: `openclaw.state`; створюється лише для обліку застарілих сесій без активної роботи)
- `openclaw.run.attempt` (лічильник, attrs: `openclaw.attempt`)
### Телеметрія активності сеансу
### Телеметрія життєздатності сесії
`diagnostics.stuckSessionWarnMs` — це поріг віку без прогресу для діагностики
активності сеансів. Сеанс `processing` не наближається до цього порогу,
поки OpenClaw спостерігає прогрес відповіді, інструменту, статусу, блоку або середовища виконання ACP.
Typing keepalives не зараховуються як прогрес, тому беззвучну модель або harness
все ще можна виявити.
життєздатності сесії. Сесія `processing` не наближається до цього порога,
поки OpenClaw спостерігає прогрес відповіді, інструмента, статусу, блоку або ACP runtime.
Typing keepalives не враховуються як прогрес, тому мовчазну модель або harness все ще можна
виявити.
OpenClaw класифікує сеанси за роботою, яку він ще може спостерігати:
OpenClaw класифікує сесії за роботою, яку він усе ще може спостерігати:
- `session.long_running`: активна вбудована робота, виклики моделі або виклики інструментів
усе ще просуваються.
досі просуваються.
- `session.stalled`: активна робота існує, але активний запуск не повідомляв
про нещодавній прогрес. Застряглі вбудовані запуски спершу залишаються лише для спостереження, а потім
виконують abort-drain після щонайменше 10 хвилин і 5x `diagnostics.stuckSessionWarnMs`
без прогресу, щоб чергові ходи за цим lane могли відновитися.
про нещодавній прогрес. Завислі вбудовані запуски спочатку залишаються лише для спостереження, а потім
переходять до abort-drain після щонайменше 10 хвилин і 5x `diagnostics.stuckSessionWarnMs`
без прогресу, щоб поставлені в чергу ходи позаду lane могли відновитися.
- `session.stuck`: застарілий облік сесії без активної роботи. Це негайно звільняє
відповідний lane сесії.
відповідну session lane.
Лише `session.stuck` емітує лічильник `openclaw.session.stuck`,
Лише `session.stuck` генерує лічильник `openclaw.session.stuck`,
гістограму `openclaw.session.stuck_age_ms` і span `openclaw.session.stuck`.
Повторні діагностичні події `session.stuck` застосовують backoff, доки сесія залишається
незмінною, тому dashboards мають сповіщати про стійке зростання, а не про кожен
тік Heartbeat. Про параметр конфігурації та значення за замовчуванням див.
[Довідник конфігурації](/uk/gateway/configuration-reference#diagnostics).
Повторні діагностичні події `session.stuck` сповільнюються, доки сесія
залишається незмінною, тому панелі моніторингу мають сповіщати про сталі
зростання, а не про кожен Heartbeat tick. Налаштування конфігурації та значення за замовчуванням див.
у [довіднику конфігурації](/uk/gateway/configuration-reference#diagnostics).
### Життєвий цикл harness
- `openclaw.harness.duration_ms` (гістограма, attrs: `openclaw.harness.id`, `openclaw.harness.plugin`, `openclaw.outcome`, `openclaw.harness.phase` для помилок)
- `openclaw.harness.duration_ms` (гістограма, атрибути: `openclaw.harness.id`, `openclaw.harness.plugin`, `openclaw.outcome`, `openclaw.harness.phase` для помилок)
### Exec
- `openclaw.exec.duration_ms` (гістограма, attrs: `openclaw.exec.target`, `openclaw.exec.mode`, `openclaw.outcome`, `openclaw.failureKind`)
- `openclaw.exec.duration_ms` (гістограма, атрибути: `openclaw.exec.target`, `openclaw.exec.mode`, `openclaw.outcome`, `openclaw.failureKind`)
### Внутрішня діагностика (пам’ять і цикл інструментів)
- `openclaw.memory.heap_used_bytes` (гістограма, attrs: `openclaw.memory.kind`)
- `openclaw.memory.heap_used_bytes` (гістограма, атрибути: `openclaw.memory.kind`)
- `openclaw.memory.rss_bytes` (гістограма)
- `openclaw.memory.pressure` (лічильник, attrs: `openclaw.memory.level`)
- `openclaw.tool.loop.iterations` (лічильник, attrs: `openclaw.toolName`, `openclaw.outcome`)
- `openclaw.tool.loop.duration_ms` (гістограма, attrs: `openclaw.toolName`, `openclaw.outcome`)
- `openclaw.memory.pressure` (лічильник, атрибути: `openclaw.memory.level`)
- `openclaw.tool.loop.iterations` (лічильник, атрибути: `openclaw.toolName`, `openclaw.outcome`)
- `openclaw.tool.loop.duration_ms` (гістограма, атрибути: `openclaw.toolName`, `openclaw.outcome`)
## Експортовані spans
@ -265,7 +265,7 @@ OpenClaw класифікує сеанси за роботою, яку він щ
- `gen_ai.request.model`, `gen_ai.operation.name`, `openclaw.provider`, `openclaw.model`, `openclaw.api`, `openclaw.transport`
- `openclaw.errorCategory` і необов’язковий `openclaw.failureKind` для помилок
- `openclaw.model_call.request_bytes`, `openclaw.model_call.response_bytes`, `openclaw.model_call.time_to_first_byte_ms`
- `openclaw.provider.request_id_hash` (обмежений SHA-хеш id запиту до upstream-провайдера; raw ids не експортуються)
- `openclaw.provider.request_id_hash` (обмежений SHA-хеш ідентифікатора запиту upstream-провайдера; необроблені ідентифікатори не експортуються)
- `openclaw.harness.run`
- `openclaw.harness.id`, `openclaw.harness.plugin`, `openclaw.outcome`, `openclaw.provider`, `openclaw.model`, `openclaw.channel`
- Після завершення: `openclaw.harness.result_classification`, `openclaw.harness.yield_detected`, `openclaw.harness.items.started`, `openclaw.harness.items.completed`, `openclaw.harness.items.active`
@ -275,37 +275,37 @@ OpenClaw класифікує сеанси за роботою, яку він щ
- `openclaw.exec`
- `openclaw.exec.target`, `openclaw.exec.mode`, `openclaw.outcome`, `openclaw.failureKind`, `openclaw.exec.command_length`, `openclaw.exec.exit_code`, `openclaw.exec.timed_out`
- `openclaw.webhook.processed`
- `openclaw.channel`, `openclaw.webhook`, `openclaw.chatId`
- `openclaw.channel`, `openclaw.webhook`
- `openclaw.webhook.error`
- `openclaw.channel`, `openclaw.webhook`, `openclaw.chatId`, `openclaw.error`
- `openclaw.channel`, `openclaw.webhook`, `openclaw.error`
- `openclaw.message.processed`
- `openclaw.channel`, `openclaw.outcome`, `openclaw.chatId`, `openclaw.messageId`, `openclaw.reason`
- `openclaw.channel`, `openclaw.outcome`, `openclaw.reason`
- `openclaw.message.delivery`
- `openclaw.channel`, `openclaw.delivery.kind`, `openclaw.outcome`, `openclaw.errorCategory`, `openclaw.delivery.result_count`
- `openclaw.session.stuck`
- `openclaw.state`, `openclaw.ageMs`, `openclaw.queueDepth`
- `openclaw.context.assembled`
- `openclaw.prompt.size`, `openclaw.history.size`, `openclaw.context.tokens`, `openclaw.errorCategory` (без prompt, history, response або вмісту session-key)
- `openclaw.prompt.size`, `openclaw.history.size`, `openclaw.context.tokens`, `openclaw.errorCategory` (без вмісту prompt, history, response або session-key)
- `openclaw.tool.loop`
- `openclaw.toolName`, `openclaw.outcome`, `openclaw.iterations`, `openclaw.errorCategory` (без повідомлень циклу, params або виводу інструмента)
- `openclaw.toolName`, `openclaw.outcome`, `openclaw.iterations`, `openclaw.errorCategory` (без повідомлень циклу, параметрів або виводу інструменту)
- `openclaw.memory.pressure`
- `openclaw.memory.level`, `openclaw.memory.heap_used_bytes`, `openclaw.memory.rss_bytes`
Коли захоплення вмісту явно ввімкнено, spans моделі та інструментів також можуть
містити обмежені, відредаговані атрибути `openclaw.content.*` для конкретних
класів вмісту, які ви ввімкнули.
Коли capture вмісту явно ввімкнено, spans моделі та інструментів також можуть
містити обмежені й відредаговані атрибути `openclaw.content.*` для конкретних
класів вмісту, які ви вибрали.
## Каталог діагностичних подій
Події нижче підтримують наведені вище метрики та spans. Plugins також можуть підписуватися
на них напряму без експорту OTLP.
Наведені нижче події підтримують метрики та spans вище. Plugins також можуть
підписуватися на них напряму без експорту OTLP.
**Використання моделі**
- `model.usage`tokens, cost, duration, context, provider/model/channel,
ids сесій. `usage` — це облік провайдера/ходу для вартості й телеметрії;
`context.used` — поточний знімок prompt/context і може бути нижчим за
provider `usage.total`, коли задіяно cached input або виклики tool-loop.
- `model.usage`токени, вартість, тривалість, контекст, provider/model/channel,
ідентифікатори сесії. `usage` — це облік провайдера/ходу для вартості й телеметрії;
`context.used`це поточний знімок prompt/context і може бути нижчим за
provider `usage.total`, коли задіяні кешований ввід або виклики tool-loop.
**Потік повідомлень**
@ -325,20 +325,20 @@ OpenClaw класифікує сеанси за роботою, яку він щ
- `harness.run.started` / `harness.run.completed` / `harness.run.error`
життєвий цикл кожного запуску для agent harness. Містить `harnessId`, необов’язковий
`pluginId`, provider/model/channel і run id. Завершення додає
`durationMs`, `outcome`, необов’язкові `resultClassification`, `yieldDetected`,
`durationMs`, `outcome`, необов’язкові `resultClassification`, `yieldDetected`
і лічильники `itemLifecycle`. Помилки додають `phase`
(`prepare`/`start`/`send`/`resolve`/`cleanup`), `errorCategory` і
необов’язковий `cleanupFailed`.
**Exec**
- `exec.process.completed`кінцевий результат, тривалість, target, mode, exit
- `exec.process.completed`підсумковий результат термінала, тривалість, target, mode, exit
code і failure kind. Текст команди та робочі каталоги не
включаються.
## Без експортера
Ви можете залишити діагностичні події доступними для Plugins або власних sinks без
Ви можете залишити діагностичні події доступними для Plugins або користувацьких sinks без
запуску `diagnostics-otel`:
```json5
@ -348,7 +348,7 @@ OpenClaw класифікує сеанси за роботою, яку він щ
```
Для цільового debug-виводу без підвищення `logging.level` використовуйте діагностичні
flags. Flags не чутливі до регістру та підтримують wildcards (наприклад, `telegram.*` або
прапорці. Прапорці не чутливі до регістру та підтримують wildcards (наприклад, `telegram.*` або
`*`):
```json5
@ -357,15 +357,15 @@ flags. Flags не чутливі до регістру та підтримуют
}
```
Або як одноразове перевизначення env:
Або як одноразове перевизначення через env:
```bash
OPENCLAW_DIAGNOSTICS=telegram.http,telegram.payload openclaw gateway
```
Вивід flags потрапляє у стандартний файл журналу (`logging.file`) і все одно
Вивід прапорців надходить до стандартного log-файлу (`logging.file`) і все одно
редагується через `logging.redactSensitive`. Повний посібник:
[Діагностичні flags](/uk/diagnostics/flags).
[діагностичні прапорці](/uk/diagnostics/flags).
## Вимкнення
@ -380,8 +380,8 @@ OPENCLAW_DIAGNOSTICS=telegram.http,telegram.payload openclaw gateway
## Пов’язане
- [Журналювання](/uk/logging) — файлові журнали, консольний вивід, CLI tailing і вкладка Logs у Control UI
- [Внутрішня логіка журналювання Gateway](/uk/gateway/logging) — стилі WS-логів, префікси підсистем і захоплення консолі
- [Діагностичні flags](/uk/diagnostics/flags) — цільові flags debug-log
- [Журналювання](/uk/logging) — файлові журнали, консольний вивід, CLI tailing і вкладка журналів Control UI
- [Внутрішнє журналювання Gateway](/uk/gateway/logging) — стилі журналів WS, префікси підсистем і capture консолі
- [Діагностичні прапорці](/uk/diagnostics/flags) — цільові прапорці debug-log
- [Експорт діагностики](/uk/gateway/diagnostics) — інструмент support-bundle для операторів (окремо від експорту OTEL)
- [Довідник конфігурації](/uk/gateway/configuration-reference#diagnostics) — повний довідник полів `diagnostics.*`
- [Довідник конфігурації](/uk/gateway/configuration-reference#diagnostics) — повна довідка полів `diagnostics.*`