LAM_RTRSTORE(2) LAM REMOTE LIBRARY LAM_RTRSTORE(2)NAME
lam_rtrstore - Store LAM trace data.
SYNOPSIS
int lam_rtrstore (int node, int list, char *buffer, int length);
DESCRIPTION
The client function, lam_rtrstore(), delivers trace data from a local
buffer to the trace daemon. In theory, the trace transport system can
be used for any random data. In practice, it is used to move trace
data between the monitored processes and a trace visualization system.
Any process can transfer trace data at any time and any number of
times. In theory, the trace daemon on any node can be used. In prac‐
tise, always use the local trace daemon, and set the node argument to
LOCAL.
Traces are organized within the daemon in lists. The list argument
selects the list. This enables trace readers to selectively read trace
data. Trace data is read out of the daemon with rtrget(2) and related
functions.
Any length of buffer is accepted and lam_rtrstore() will send messages
to the trace daemon in MAXNMSGLEN (the network packet size) byte pack‐
ets.
The trace daemon will accept trace data and store it until the total
currently stored exceeds a pre-compiled maximum. At that point, if an
existing list with a positive number is selected, oldest traces are
dropped. If a new list with a positive number is selected, the current
traces are ignored and lam_rtrstore() has no effect.
BUGS
By packetizing a large buffer in smaller messages, the trace daemon
remains totally stateless but daemon requests from other sources may be
interspersed between the packets. To be completely safe, a trace
record should not span a MAXNMSGLEN boundary in the trace buffer.
SEE ALSOlam_rtrget(2)LAM 7.1.2 March, 2006 LAM_RTRSTORE(2)