posix_trace_attr_getlogfullpolicy 子例程

用途

检索跟踪流的日志完整策略。

Posix 跟踪库 (libposixtrace.a)

语法

#include <trace.h>
int posix_trace_attr_getlogfullpolicy(attr,logpolicy)
const trace_attr_t *restrict;
int *restrict logpolicy;

描述

posix_trace_attr_getlogfullpolicy 子例程获取存储在 attr 对象的 log-full-policy 属性中的跟踪日志完整策略。 attr 对象指向属性对象以获取日志完整策略。

attr 对象的 log-full-policy 属性设置为 trace.h 头文件中的清单常量定义的下列其中一个值:
描述
posix_trace_loop 跟踪日志循环,直到关联的跟踪流停止为止。 当跟踪日志已满时,文件系统将复用分配给记录的最旧跟踪事件的资源。 通过这种方式,跟踪日志始终包含最近清空的跟踪事件。
posix_trace_until_full 将跟踪流清空到跟踪日志,直到跟踪日志已满为止。 可以从 posix_log_full_status 成员状态推断此条件 (请参阅 trace.h 头文件中定义的 posix_trace_status_info 结构)。 最后记录的跟踪事件是 POSIX_TRACE_STOP 跟踪事件。
posix_trace_append 将关联的跟踪流清空到跟踪日志,而没有日志大小限制。 如果应用程序指定 POSIX_TRACE_APPEND 值,那么将忽略 log-max-size 属性。

log-full-policy 属性的缺省值为 POSIX_TRACE_LOOP

如果使用未初始化的属性对象作为参数来调用此子例程,那么不会指定结果。

参数

表 1. 参数
描述
attr 指定跟踪属性对象。
日志策略 指定实现或存储 attr 参数的 log-full-policy 属性的位置。

返回值

成功完成后,将返回值 0。 否则,将返回相应的错误号。

如果成功, posix_trace_attr_getlogfullpolicy 子例程会将 log-full-policy 属性的值存储在 logpolicy 参数指定的对象中。 否则,不会修改此对象的内容。

错误

如果返回以下错误号,那么 posix_trace_attr_getlogfullpolicy 子例程将失败:
表 2。 错误
描述
EINVAL 参数的对象为空或无效。

文件

Files Reference 中的 trace.h 文件