Добавление сервера журналирования и каналов вывода в решение

Программа LogrrServer отправляет сообщения одному или нескольким каналам вывода. Вы можете записывать сообщения журнала в файлы, используя канал вывода FsOutputChannel.

Если вам не требуется централизованно обрабатывать и хранить журналы, то вы можете не добавлять сервер журналирования и каналы вывода в ваше решение и использовать API компонента LogRR для журналирования. В таком случае, вы сможете добавить сервер журналирования и каналы вывода в любое время, если они потребуются.

Добавление и настройка сервера журналирования

Команда создания и настройки сервера журналирования create_logrr_server() может содержать следующие параметры:

Чтобы добавить программу LogrrServer в решение,

отредактируйте корневой файл с CMake-командами сборки решения или файл с CMake-командами сборки инициализирующей программы Einit:

CMakeLists.txt

include (logrr_server/configure)

include (logrr_fs_output_channel/configure)

# ...

set (TASKS

# ...

ClientOne)

# ...

# Добавление сервера, использующего канал вывода FsOutputChannel

create_logrr_server(

LOG_LEVEL DEBUG

WRITE_TO_CORE ON

OUTPUT_CHANNELS

logrr.FsOutputChannel)

# Добавление сервера и канала вывода в решение

list(APPEND TASKS

logrr_server::default_entity

logrr_fs_output_channel::default_entity)

# Создание статических IPC-каналов для программ-источников с сервером

connect_to_logrr_server (ENTITIES ClientOne)

build_kos_qemu_image (kos-qemu-image

CONNECTIONS_CFG ${INIT_YAML_FILE}

SECURITY_PSL ${SECURITY_PSL_FILE}

PACK_DEPS_COPY_ONLY ON

PACK_DEPS_LIBS_PATH path_to_libs_dir

PACK_DEPS_COPY_TARGET copylibs

${TASKS})

Опции PACK_DEPS_COPY_ONLY, PACK_DEPS_LIBS_PATH и PACK_DEPS_COPY_TARGET требуется включить при вызове команды build_kos_qemu_image() или build_kos_hw_image() для автоматического поиска и сборки в образ диска динамических библиотек logrr_clog и logrr_cpp.

Добавление и настройка каналов вывода

Команда создания и настройки канала вывода журналов в файлы create_logrr_fs_output_channel() может содержать следующие параметры:

Чтобы добавить канал вывода FsOutputChannel в решение,

отредактируйте корневой файл с CMake-командами сборки решения или файл с CMake-командами сборки инициализирующей программы Einit:

CMakeLists.txt

find_package (logrr_fs_output_channel REQUIRED COMPONENTS ENTITY)

# Добавление канала вывода FsOutputChannel пишущего в файл

create_logrr_fs_output_channel (

LOG_DIR "/log")

Создание IPC-каналов и разрешение взаимодействия программ

Система сборки обеспечивает автоматическое создание IPC-каналов, необходимых для работы системы журналирования, а также генерирует описание политики безопасности в части, которая разрешает взаимодействие между процессами.

Для создания статического подключения к серверу журналирования, вы можете использовать CMake-команду connect_to_logrr_server (ENTITIES <имена_программ_для_подключения>).

В начало