Link Search Menu Expand Document

ЖурналСобытий

Тип-одиночка
Стд::ЖурналСобытий::ЖурналСобытий
Базовые типы: Объект
Доступность: Сервер

Иерархия типа

ЖурналСобытий
Объект

Журнал событий. Позволяет регистрировать и искать события, сохраняемые в журнале событий.

Сравнение ссылочное


Методы

Загрузить

Загрузить(Ид: ИдСобытия): Событие?
Доступность: Сервер

Возвращает событие по идентификатору Ид или Неопределено, если события с указанным идентификатором нет.


Зарегистрировать

Зарегистрировать(
  Событие: ОписаниеСобытия,
  НеЗависитОтТранзакции: Булево = Ложь
): Событие
Доступность: Сервер
Перегрузка:
Зарегистрировать(Имя: Строка, Важность: ВажностьСобытия, Свойства: ЧитаемоеСоответствие<Строка, Объект>? = Неопределено, НеЗависитОтТранзакции: Булево = Ложь): Событие

Регистрирует событие с описанием Событие в журнале событий. Возвращает зарегистрированное событие.

События могут объединяться в операции - последовательность логически связанных событий, описывающих ход выполнения какого-то процесса. Регистрация выполняется всегда в контексте последней незакрытой операции.

НеЗависитОтТранзакции - определяет, зависят ли действия, отраженные в событии, от завершения транзакции или нет. Даже если событие фиксируется в рамках транзакции, то не всегда это означает, что действие отменяется вместе с отменой транзакции. Например, если фиксируется событие какого-либо внешнего вызова (печать, сохранение в файл и т.д.). Несмотря на то, что транзакция будет отменена и изменение данных в системе не выполнится, такое внешнее событие все равно будет выполнено (так как не зависит от контекста транзакции). Также может возникнуть ситуация, когда в ходе работы транзакции данные изменяются и в таком виде отправляются во внешний сервис (отчет, файл, web-сервис и т.д.), где сразу становятся частью другой бизнес-логики. Но текущая транзакция либо отменяется (и данные не сохраняются вообще), либо фиксируется спустя какое-то время (существенно позже передачи измененных данных во внешние сервисы).

Исключения

ИсключениеНедопустимыйАргумент - если сериализованный размер события больше 32 Мб.

Примеры

знч Событие = новый ОписаниеСобытия("РезультатИмпорта", ВажностьСобытия.Обычная)
    .УстановитьСвойство("НовыхОбъектов", 10)
ЖурналСобытий.Зарегистрировать(Событие)

Зарегистрировать

Зарегистрировать(
  Имя: Строка,
  Важность: ВажностьСобытия,
  Свойства: ЧитаемоеСоответствие<Строка, Объект>? = Неопределено,
  НеЗависитОтТранзакции: Булево = Ложь
): Событие
Доступность: Сервер
Перегрузка:
Зарегистрировать(Событие: ОписаниеСобытия, НеЗависитОтТранзакции: Булево = Ложь): Событие

Регистрирует событие с именем Имя, важностью Важность и свойствами Свойства в журнале событий. Возвращает зарегистрированное событие.

События могут объединяться в операции - последовательность логически связанных событий, описывающих ход выполнения какого-то процесса. Регистрация выполняется всегда в контексте последней незакрытой операции.

НеЗависитОтТранзакции - определяет, зависят ли действия, отраженные в событии, от завершения транзакции или нет. Даже если событие фиксируется в рамках транзакции, то не всегда это означает, что действие отменяется вместе с отменой транзакции. Например, если фиксируется событие какого-либо внешнего вызова (печать, сохранение в файл и т.д.). Несмотря на то, что транзакция будет отменена и изменение данных в системе не выполнится, такое внешнее событие все равно будет выполнено (так как не зависит от контекста транзакции). Также может возникнуть ситуация, когда в ходе работы транзакции данные изменяются и в таком виде отправляются во внешний сервис (отчет, файл, web-сервис и т.д.), где сразу становятся частью другой бизнес-логики. Но текущая транзакция либо отменяется (и данные не сохраняются вообще), либо фиксируется спустя какое-то время (существенно позже передачи измененных данных во внешние сервисы).

Примеры

ЖурналСобытий.Зарегистрировать("РезультатИмпорта", ВажностьСобытия.Обычная, {"НовыхОбъектов": 10})

ЗарегистрироватьНачалоОперации

ЗарегистрироватьНачалоОперации(
  Событие: ОписаниеСобытия,
  НеЗависитОтТранзакции: Булево = Ложь
): КонтекстОперации
Доступность: Сервер
Перегрузка:
ЗарегистрироватьНачалоОперации(Имя: Строка, Важность: ВажностьСобытия, Свойства: ЧитаемоеСоответствие<Строка, Объект>? = Неопределено, НеЗависитОтТранзакции: Булево = Ложь): КонтекстОперации

Регистрирует событие начала операции с описанием Событие в журнале событий. Возвращает контекст операции. Под операцией понимается последовательность действий, выполняемых системой, каждое из которых может порождать события журнала событий, связанные логически. Например, это могут быть этапы выполнения алгоритма или периодически возникающие результаты длительного процесса.

НеЗависитОтТранзакции - определяет, зависят ли действия, отраженные в событии, от завершения транзакции или нет. Даже если событие фиксируется в рамках транзакции, то не всегда это означает, что действие отменяется вместе с отменой транзакции. Например, если фиксируется событие какого-либо внешнего вызова (печать, сохранение в файл и т.д.). Несмотря на то, что транзакция будет отменена и изменение данных в системе не выполнится, такое внешнее событие все равно будет выполнено (так как не зависит от контекста транзакции). Также может возникнуть ситуация, когда в ходе работы транзакции данные изменяются и в таком виде отправляются во внешний сервис (отчет, файл, web-сервис и т.д.), где сразу становятся частью другой бизнес-логики. Но текущая транзакция либо отменяется (и данные не сохраняются вообще), либо фиксируется спустя какое-то время (существенно позже передачи измененных данных во внешние сервисы).

Примеры

область
    пер НовыхОбъектов = 0
    исп ЖурналСобытий.ЗарегистрироватьНачалоОперации("Импорт", ВажностьСобытия.Обычная)
    // ...
    // событие регистрируется в контексте операции "Импорт"
    ЖурналСобытий.Зарегистрировать("РезультатИмпорта", ВажностьСобытия.Обычная, {"НовыхОбъектов": НовыхОбъектов})
;
// событие регистрируется не в контексте операции
ЖурналСобытий.Зарегистрировать("Состояние", ВажностьСобытия.Обычная)


ЗарегистрироватьНачалоОперации

ЗарегистрироватьНачалоОперации(
  Имя: Строка,
  Важность: ВажностьСобытия,
  Свойства: ЧитаемоеСоответствие<Строка, Объект>? = Неопределено,
  НеЗависитОтТранзакции: Булево = Ложь
): КонтекстОперации
Доступность: Сервер
Перегрузка:
ЗарегистрироватьНачалоОперации(Событие: ОписаниеСобытия, НеЗависитОтТранзакции: Булево = Ложь): КонтекстОперации

Регистрирует событие начала операции с именем Имя, важностью Важность и свойствами Свойства в журнале событий. Возвращает контекст операции. Под операцией понимается последовательность действий, выполняемых системой, каждое из которых может порождать события журнала событий, связанные логически. Например, это могут быть этапы выполнения алгоритма или периодически возникающие результаты длительного процесса.

НеЗависитОтТранзакции - определяет, зависят ли действия, отраженные в событии, от завершения транзакции или нет. Даже если событие фиксируется в рамках транзакции, то не всегда это означает, что действие отменяется вместе с отменой транзакции. Например, если фиксируется событие какого-либо внешнего вызова (печать, сохранение в файл и т.д.). Несмотря на то, что транзакция будет отменена и изменение данных в системе не выполнится, такое внешнее событие все равно будет выполнено (так как не зависит от контекста транзакции). Также может возникнуть ситуация, когда в ходе работы транзакции данные изменяются и в таком виде отправляются во внешний сервис (отчет, файл, web-сервис и т.д.), где сразу становятся частью другой бизнес-логики. Но текущая транзакция либо отменяется (и данные не сохраняются вообще), либо фиксируется спустя какое-то время (существенно позже передачи измененных данных во внешние сервисы).

Примеры

область
    пер НовыхОбъектов = 0
    исп ЖурналСобытий.ЗарегистрироватьНачалоОперации("Импорт", ВажностьСобытия.Обычная)
    // ...
    // событие регистрируется в контексте операции "Импорт"
    ЖурналСобытий.Зарегистрировать("РезультатИмпорта", ВажностьСобытия.Обычная, {"НовыхОбъектов": НовыхОбъектов})
;
// событие регистрируется не в контексте операции
ЖурналСобытий.Зарегистрировать("Состояние", ВажностьСобытия.Обычная)


Найти

Найти(
  ДатаНачала: Момент? = Неопределено,
  ДатаОкончания: Момент? = Неопределено,
  Пропустить: Число? = Неопределено,
  Ограничить: Число? = Неопределено,
  ПрямойПорядок: Булево? = Неопределено
): РезультатПоискаСобытий
Доступность: Сервер

Ищет в журнале события, зарегистрированные в указанный интервал времени. Возвращает объект, позволяющий итерационно обработать все найденные события.

ДатаНачала - начало временного интервала. Если не указано, то ищутся все события журнала. ДатаОкончания - конец временного интервала. Пропустить - определяет, сколько событий от начала нужно пропустить.
Ограничить - определяет, сколько событий нужно включить в результат. ПрямойПорядок - порядок событий в результатах поиска. Истина - прямой, как вернет хранилище, Ложь - обратный.

Примеры

знч До = Момент.Сейчас()
знч От = До - 

пер Количество = 0
исп Результат = ЖурналСобытий.Найти(От, До)
пока Результат.Следующий()
    Количество += 1
;


Список унаследованных методов

Объект