trace.h.0p (7922B)
- '\" et
- .TH trace.h "0P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual"
- .\"
- .SH PROLOG
- This manual page is part of the POSIX Programmer's Manual.
- The Linux implementation of this interface may differ (consult
- the corresponding Linux manual page for details of Linux behavior),
- or the interface may not be implemented on Linux.
- .\"
- .SH NAME
- trace.h
- \(em tracing
- .SH SYNOPSIS
- .LP
- .nf
- #include <trace.h>
- .fi
- .SH DESCRIPTION
- The
- .IR <trace.h>
- header shall define the
- .BR posix_trace_event_info
- structure, which shall include at least the following members:
- .sp
- .RS 4
- .nf
- trace_event_id_t posix_event_id
- pid_t posix_pid
- void *posix_prog_address
- pthread_t posix_thread_id
- struct timespec posix_timestamp
- int posix_truncation_status
- .fi
- .P
- .RE
- .P
- The
- .IR <trace.h>
- header shall define the
- .BR posix_trace_status_info
- structure, which shall include at least the following members:
- .sp
- .RS 4
- .nf
- int posix_stream_full_status
- int posix_stream_overrun_status
- int posix_stream_status
- int posix_log_full_status
- int posix_log_overrun_status
- int posix_stream_flush_error
- int posix_stream_flush_status
- .fi
- .P
- .RE
- .P
- The
- .IR <trace.h>
- header shall define the following symbolic constants:
- .P
- .nf
- POSIX_TRACE_ALL_EVENTS
- POSIX_TRACE_APPEND
- POSIX_TRACE_CLOSE_FOR_CHILD
- POSIX_TRACE_FILTER
- POSIX_TRACE_FLUSH
- POSIX_TRACE_FLUSH_START
- POSIX_TRACE_FLUSH_STOP
- POSIX_TRACE_FLUSHING
- POSIX_TRACE_FULL
- POSIX_TRACE_LOOP
- POSIX_TRACE_NO_OVERRUN
- POSIX_TRACE_NOT_FLUSHING
- POSIX_TRACE_NOT_FULL
- POSIX_TRACE_INHERITED
- POSIX_TRACE_NOT_TRUNCATED
- POSIX_TRACE_OVERFLOW
- POSIX_TRACE_OVERRUN
- POSIX_TRACE_RESUME
- POSIX_TRACE_RUNNING
- POSIX_TRACE_START
- POSIX_TRACE_STOP
- POSIX_TRACE_SUSPENDED
- POSIX_TRACE_SYSTEM_EVENTS
- POSIX_TRACE_TRUNCATED_READ
- POSIX_TRACE_TRUNCATED_RECORD
- POSIX_TRACE_UNNAMED_USER_EVENT
- POSIX_TRACE_UNTIL_FULL
- POSIX_TRACE_WOPID_EVENTS
- .fi
- .P
- The
- .IR <trace.h>
- header shall define the
- .BR size_t ,
- .BR trace_attr_t ,
- .BR trace_event_id_t ,
- .BR trace_event_set_t ,
- and
- .BR trace_id_t
- types as described in
- .IR <sys/types.h> .
- .P
- The following shall be declared as functions and may also be defined
- as macros. Function prototypes shall be provided.
- .sp
- .RS 4
- .nf
- int posix_trace_attr_destroy(trace_attr_t *);
- int posix_trace_attr_getclockres(const trace_attr_t *,
- struct timespec *);
- int posix_trace_attr_getcreatetime(const trace_attr_t *,
- struct timespec *);
- int posix_trace_attr_getgenversion(const trace_attr_t *, char *);
- int posix_trace_attr_getinherited(const trace_attr_t *restrict,
- int *restrict);
- int posix_trace_attr_getlogfullpolicy(const trace_attr_t *restrict,
- int *restrict);
- int posix_trace_attr_getlogsize(const trace_attr_t *restrict,
- size_t *restrict);
- int posix_trace_attr_getmaxdatasize(const trace_attr_t *restrict,
- size_t *restrict);
- int posix_trace_attr_getmaxsystemeventsize(const trace_attr_t *restrict,
- size_t *restrict);
- int posix_trace_attr_getmaxusereventsize(const trace_attr_t *restrict,
- size_t, size_t *restrict);
- int posix_trace_attr_getname(const trace_attr_t *, char *);
- int posix_trace_attr_getstreamfullpolicy(const trace_attr_t *restrict,
- int *restrict);
- int posix_trace_attr_getstreamsize(const trace_attr_t *restrict,
- size_t *restrict);
- int posix_trace_attr_init(trace_attr_t *);
- int posix_trace_attr_setinherited(trace_attr_t *, int);
- int posix_trace_attr_setlogfullpolicy(trace_attr_t *, int);
- int posix_trace_attr_setlogsize(trace_attr_t *, size_t);
- int posix_trace_attr_setmaxdatasize(trace_attr_t *, size_t);
- int posix_trace_attr_setname(trace_attr_t *, const char *);
- int posix_trace_attr_setstreamfullpolicy(trace_attr_t *, int);
- int posix_trace_attr_setstreamsize(trace_attr_t *, size_t);
- int posix_trace_clear(trace_id_t);
- int posix_trace_close(trace_id_t);
- int posix_trace_create(pid_t, const trace_attr_t *restrict,
- trace_id_t *restrict);
- int posix_trace_create_withlog(pid_t, const trace_attr_t *restrict,
- int, trace_id_t *restrict);
- void posix_trace_event(trace_event_id_t, const void *restrict, size_t);
- int posix_trace_eventid_equal(trace_id_t, trace_event_id_t,
- trace_event_id_t);
- int posix_trace_eventid_get_name(trace_id_t, trace_event_id_t, char *);
- int posix_trace_eventid_open(const char *restrict,
- trace_event_id_t *restrict);
- int posix_trace_eventset_add(trace_event_id_t, trace_event_set_t *);
- int posix_trace_eventset_del(trace_event_id_t, trace_event_set_t *);
- int posix_trace_eventset_empty(trace_event_set_t *);
- int posix_trace_eventset_fill(trace_event_set_t *, int);
- int posix_trace_eventset_ismember(trace_event_id_t,
- const trace_event_set_t *restrict, int *restrict);
- int posix_trace_eventtypelist_getnext_id(trace_id_t,
- trace_event_id_t *restrict, int *restrict);
- int posix_trace_eventtypelist_rewind(trace_id_t);
- int posix_trace_flush(trace_id_t);
- int posix_trace_get_attr(trace_id_t, trace_attr_t *);
- int posix_trace_get_filter(trace_id_t, trace_event_set_t *);
- int posix_trace_get_status(trace_id_t,
- struct posix_trace_status_info *);
- int posix_trace_getnext_event(trace_id_t,
- struct posix_trace_event_info *restrict, void *restrict,
- size_t, size_t *restrict, int *restrict);
- int posix_trace_open(int, trace_id_t *);
- int posix_trace_rewind(trace_id_t);
- int posix_trace_set_filter(trace_id_t, const trace_event_set_t *, int);
- int posix_trace_shutdown(trace_id_t);
- int posix_trace_start(trace_id_t);
- int posix_trace_stop(trace_id_t);
- int posix_trace_timedgetnext_event(trace_id_t,
- struct posix_trace_event_info *restrict, void *restrict,
- size_t, size_t *restrict, int *restrict,
- const struct timespec *restrict);
- int posix_trace_trid_eventid_open(trace_id_t, const char *restrict,
- trace_event_id_t *restrict);
- int posix_trace_trygetnext_event(trace_id_t,
- struct posix_trace_event_info *restrict, void *restrict, size_t,
- size_t *restrict, int *restrict);
- .fi
- .P
- .RE
- .LP
- .IR "The following sections are informative."
- .SH "APPLICATION USAGE"
- None.
- .SH RATIONALE
- None.
- .SH "FUTURE DIRECTIONS"
- The
- .IR <trace.h>
- header may be removed in a future version.
- .SH "SEE ALSO"
- .IR "\fB<sys_types.h>\fP"
- .P
- .ad l
- The System Interfaces volume of POSIX.1\(hy2017,
- .IR "Section 2.11" ", " "Tracing",
- .IR "\fIposix_trace_attr_destroy\fR\^(\|)",
- .IR "\fIposix_trace_attr_getclockres\fR\^(\|)",
- .IR "\fIposix_trace_attr_getinherited\fR\^(\|)",
- .IR "\fIposix_trace_attr_getlogsize\fR\^(\|)",
- .IR "\fIposix_trace_clear\fR\^(\|)",
- .IR "\fIposix_trace_close\fR\^(\|)",
- .IR "\fIposix_trace_create\fR\^(\|)",
- .IR "\fIposix_trace_event\fR\^(\|)",
- .IR "\fIposix_trace_eventid_equal\fR\^(\|)",
- .IR "\fIposix_trace_eventset_add\fR\^(\|)",
- .IR "\fIposix_trace_eventtypelist_getnext_id\fR\^(\|)",
- .IR "\fIposix_trace_get_attr\fR\^(\|)",
- .IR "\fIposix_trace_get_filter\fR\^(\|)",
- .IR "\fIposix_trace_getnext_event\fR\^(\|)",
- .IR "\fIposix_trace_start\fR\^(\|)"
- .ad b
- .\"
- .SH COPYRIGHT
- Portions of this text are reprinted and reproduced in electronic form
- from IEEE Std 1003.1-2017, Standard for Information Technology
- -- Portable Operating System Interface (POSIX), The Open Group Base
- Specifications Issue 7, 2018 Edition,
- Copyright (C) 2018 by the Institute of
- Electrical and Electronics Engineers, Inc and The Open Group.
- In the event of any discrepancy between this version and the original IEEE and
- The Open Group Standard, the original IEEE and The Open Group Standard
- is the referee document. The original Standard can be obtained online at
- http://www.opengroup.org/unix/online.html .
- .PP
- Any typographical or formatting errors that appear
- in this page are most likely
- to have been introduced during the conversion of the source files to
- man page format. To report such errors, see
- https://www.kernel.org/doc/man-pages/reporting_bugs.html .