Функция ClogLog()
выполняет запись в журнал.
Функция ClogLog()
предназначена для использования в программах на языке C. В программах на языке C++ используйте функцию Logger::Log() или макросы LOG_*.
Описание функции ClogLog()
и макросов для быстрого доступа к ней представлено в файле /opt/KasperskyOS-Community-Edition-<version>/sysroot-*-kos/include/component/logrr/clog/clog.h
.
component/logrr/clog/clog.h (фрагмент)
__attribute__((format(printf, 6, 7)))
void ClogLog(const char *module, LogLevel level, const char *file, int line, const char *func, const char *message, ...);
#define CLOG_TRACE_IMPL_EX(level, file, line, func, ...) \
ClogLog(LOG_MODULE, level, file, line, func, __VA_ARGS__)
#define CLOG_TRACE_IMPL(level, ...) \
CLOG_TRACE_IMPL_EX((level), \
__FILENAME__, \
__LINE__, \
__func__, \
__VA_ARGS__)
#define __CLOG_LEVEL_TRACE__ LogrrLogLevel_Trace
#define __CLOG_LEVEL_DEBUG__ LogrrLogLevel_Debug
#define __CLOG_LEVEL_INFO__ LogrrLogLevel_Info
#define __CLOG_LEVEL_WARNING__ LogrrLogLevel_Warning
#define __CLOG_LEVEL_ERROR__ LogrrLogLevel_Error
#define __CLOG_LEVEL_CRITICAL__ LogrrLogLevel_Critical
#define CLOG(level, ...) CLOG_TRACE_IMPL(__CLOG_LEVEL_ ## level ## __, __VA_ARGS__)
Параметры функции ClogLog()
:
level
Уровень журналирования LogrrLogLevel
.
file
Имя файла.
line
Номер строки в файле.
func
Имя функции.
message
Текст сообщения или строка форматирования текста сообщения.
...
Параметры для подстановки в строку форматирования message
.
Макрос быстрого доступа к функции ClogLog()
Вместо вызова функции ClogLog()
вы можете использовать макрос, описание которого представлено в файле component/logrr/clog/clog.h
. Этот макрос является вариационным (принимает переменное число параметров), что позволяет не указывать все параметры функции ClogLog()
. При вызове макроса достаточно указать уровень журналирования и текст сообщения или строку форматирования сообщения со значениями параметров. Используемый уровень журналирования level
определяется первым параметром макроса. Пример использования этого макроса представлен в разделе "Отправка сообщений в журнал с помощью макросов".