> ## Documentation Index
> Fetch the complete documentation index at: https://docs.1unic.com/odatav4/llms.txt
> Use this file to discover all available pages before exploring further.

# Журнал и мониторинг

> Журнал запросов, регламентная очистка и события журнала регистрации.

## Журнал запросов

Журнал запросов хранится в регистре сведений `OData4_Журнал` и включается на вкладке **Журнал** формы
[«Настройки OData4»](/odatav4/admin/settings). По умолчанию он **выключен**.

<Frame caption="Вкладка «Журнал»: уровень, режим записи, срок хранения и список записей с отбором">
  <img src="https://mintcdn.com/o-data-v4/8iesiGXq06VGcZxz/images/admin/settings-journal.png?fit=max&auto=format&n=8iesiGXq06VGcZxz&q=85&s=160fbbe33b7f5c5428c575a748999c4f" alt="Вкладка «Журнал»: уровень, режим записи, срок хранения и список записей с отбором" width="1094" height="680" data-path="images/admin/settings-journal.png" />
</Frame>

Каждая запись содержит:

* время (в миллисекундах, UTC);
* сервис (`odata` или `odatat`);
* субъект: пользователь Basic или имя токена;
* профиль;
* метод и путь;
* статус и длительность;
* число строк;
* операцию записи (`Добавление`, `Изменение`, `Удаление`, `ФизическоеУдаление`, `Проведение`, `ОтменаПроведения`)
  и полное имя объекта метаданных;
* по флажкам — параметры запроса и текст ошибки.

У операций одного `$batch` общий идентификатор пакета.

### Настройки

| Настройка | Значения | По умолчанию |
| - | - | - |
| Уровень | «Выключен»; «Только запись» (`POST`, `PUT`, `PATCH`, `MERGE`, `DELETE`, действия); «Ошибки» (статус 400 и выше); «Всё» | «Выключен» |
| Режим записи | «Основной» — каждый запрос сразу; «Буферизованный» — пачкой | «Основной» |
| Размер пачки, интервал пачки | для буферизованного режима: записей и секунд | 50 и 10 |
| Сохранять параметры запроса, сохранять текст ошибки | флажки | выключены |
| Дублировать в журнал регистрации | событие `OData4.Запрос` | выключен |
| Срок хранения, дней | 0 — не удалять | 0 |
| Отказы входа | «Не чаще раза в минуту на адрес», «Каждый», «Не писать» | раз в минуту |

<Warning>
  Буферизованный режим держит записи в памяти сеанса HTTP-сервиса. Буфер теряется при сбое процесса и при
  завершении сеанса после 20 секунд простоя. Поэтому при редких запросах почти всё теряется. Выбирайте этот режим
  только при плотном потоке запросов.
</Warning>

### Что не попадает в журнал

* **Секреты.** Параметры `token` и `cont` убираются из пути. Значения, похожие на токен (`o4_…`), заменяются на
  `o4_***` и в пути, и в тексте ошибки.
* **Тело запроса** не пишется ни при каком флажке. Значения из тела, которые повторил текст ошибки (строки и числа),
  заменяются на `***`.
* **Отказы входа** (`401` без учётных данных или с неверным токеном) прислать может кто угодно. Поэтому по умолчанию
  пишется только первый отказ за минуту на сервис и адрес клиента. Ошибки после входа (`403`, `404`, `429` и другие)
  пишутся всегда.

Читать журнал может только администратор: роли пользователей сервиса дают право только на добавление записей.

### Журнал не задерживает ответ

Каждый запрос пишется своей короткой транзакцией по своему ключу, поэтому в клиент-серверной базе запросы друг друга
не ждут. Сбой записи журнала не меняет ответ клиенту: он фиксируется в журнале регистрации событием `OData4.Журнал`.

<Note>
  В файловой базе блокировки табличные. Если журнал заблокирован чужой незавершённой записью, ответ ждёт тайм-аута
  блокировки платформы, до 20 секунд. В клиент-серверной базе такого нет. См. [Ограничения](/odatav4/reference/limitations).
</Note>

## Регламентная очистка

Регламентное задание **«Очистка OData4»** по умолчанию выполняется каждый день в 3:00. У него три независимых шага:

1. Удаляет записи журнала старше срока хранения. При сроке 0 журнал не трогается.
2. Удаляет счётчики [правил частоты](/odatav4/security/profiles) вне самого длинного окна правил.
3. Удаляет использованные и просроченные токены продолжения и устаревшие ответы
   [повторяемых запросов](/odatav4/write/reliability).

Сбой одного шага не мешает остальным и пишется предупреждением `OData4.Очистка`.

<Warning>
  В **файловой** базе регламентные задания выполняются, только пока открыт сеанс с обработкой заданий. Например,
  сеанс толстого клиента или обработка регламентных заданий в конфигурациях на БСП. Без такого сеанса очистка не
  идёт. В клиент-серверной базе задания выполняет сервер.
</Warning>

Кнопка **«Очистить старые записи»** на вкладке «Журнал» выполняет вручную только первый шаг.

## События журнала регистрации

Подробности ошибок клиент не получает: в ответе `500` и `503` всегда постоянный текст. Технические детали — в
журнале регистрации 1С.

| Событие | Что в нём |
| - | - |
| `OData4` | Внутренние ошибки обработки запроса (`500`): текст исключения и стек |
| `OData4.Запись` | Ошибки записи: текст исключения, модуль, стек. Клиент видит только постоянный текст, если не включены «Подробные ошибки записи клиенту» |
| `OData4.Безопасность` | Отказы токенов (имя токена, адрес клиента), использование доступа, прочитанного сеансом ранее, ошибки перевода отборов профиля |
| `OData4.Пакет` | Сбой фиксации набора изменений `$batch` |
| `OData4.Журнал` | Не удалось записать журнал запросов |
| `OData4.Очистка` | Сбой шага регламентной очистки |
| `OData4.Настройки` | Настройки не прочитаны, использованы значения по умолчанию |
| `OData4.Состав` | Состав публикации или снимок стандартного интерфейса не прочитан или не записан |
| `OData4.КэшМетаданных` | Кэш `$metadata` не прочитан или не записан, документ строится заново |
| `OData4.Компонента` | Rust-компонента недоступна или дала сбой: ответ построен на языке 1С |
| `OData4.СверкаДвижков`, `OData4.СверкаВыдачи`, `OData4.СверкаТел`, `OData4.СверкаМетаданных` | Расхождение компоненты и языка 1С в режиме «Сверка» (см. [Rust-компонента](/odatav4/admin/native)) |
| `OData4.Запрос` | Копия записи журнала запросов, если включено дублирование |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.