trace_logbc()

Поместить событие трассировки произвольного класса и типа с произвольными данными

Прототип:

#include <sys/neutrino.h>
#include <sys/trace.h>
int trace_logbc( int class,
int event,
const void *data,
size_t nbytes );

Аргументы:

class
Класс события, которое нужно поместить.
event
Тип события, которое нужно поместить.
data
Указатель на данные, которые нужно включить в событие.
nbytes
Длина данных, в байтах. Функция преобразует это значение в 32-битное целое число.

Библиотека:

libc

Описание:

Функция trace_logbc() вызывает TraceEvent() для помещения события указанного класса и типа с указанными данными в лог трассировки.


Note: Если длина данных не является чётным, кратным 32-битному значнию или адрес данных не является выровненным по 32-битам, функция создаёт временную копию данных.

Возвращаемое значение:

0
Успешное завершение.
-1
Возникла ошибка. Код ошибки записан в errno.

Коды ошибок:

ECANCELED
Запрошенное действие было отменено.
EFAULT
Некорректный адрес внутреннего буфера трассировки. Запрошенное действие было указано не по порядку.
ENOMEM
Недостаточно памяти для выделения буферов трассировки.
ENOTSUP
Запрошенное действие не поддерживается.
EPERM
У приложения недостаточно прав для исполнения этого действия.

Классификация:

ЗОСРВ «Нейтрино»

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Да
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

trace_func_enter(), trace_func_exit(), trace_here(), trace_logb(), trace_logf(), trace_logi(), trace_nlogf(), trace_vnlogf(), TraceEvent()

tracelogger в Справочнике по Утилитам




Предыдущий раздел: Описание API системной библиотеки