TH VENTI-LOG 2
SH NAME
VtLog,
VtLogChunk,
vtlog,
vtlogclose,
vtlogdump,
vtlognames,
vtlogopen,
vtlogprint,
vtlogremove,
vtlogopen,
ventilogging \- Venti logs
SH SYNOPSIS
ft L
#include <u.h>
br
#include <libc.h>
br
#include <venti.h>
ta +\w'\fLVtLog* 'u
PP
B
VtLog* vtlogopen(char *name, uint size);
PP
B
void vtlogprint(VtLog *log, char *fmt, ...);
PP
B
void vtlogclose(VtLog *log);
PP
B
void vtlog(char *name, char *fmt, ...);
PP
B
void vtlogremove(char *name);
PP
B
char** vtlognames(int *n);
PP
B
void vtlogdump(int fd, VtLog *log);
PP
B
extern int ventilogging; /* default 0 */
PP
B
extern char *VtServerLog; /* "libventi/server" */
SH DESCRIPTION
These routines provide an in-memory circular log
structure used by the Venti library and the Venti server
to record events for debugging purposes.
The logs are named by UTF strings.
PP
I Vtlogopen
returns a reference to the log with the given
I name .
If a log with that name does not exist and
I size
is non-zero,
I vtlogopen
creates a new log capable of holding at
least
I size
bytes and returns it.
I Vtlogclose
releases the reference returned by
IR vtlogopen .
PP
I Vtlogprint
writes to
IR log ,
which must be open.
PP
I Vtlog
is a convenient packaging of
I vtlogopen
followed by
I vtlogprint
and
IR vtlogclose .
PP
I Vtlogremove
removes the log with the given
IR name ,
freeing any associated storage.
PP
I Vtlognames
returns a list of the names of all the logs.
The length of the list is returned in
BI * n \fR.
The list
should be freed
by calling
I vtfree
on the returned pointer.
The strings in the list will be freed by this call as well.
(It is an error to call
I vtfree
on any of the strings in the list.)
PP
I Vtlogdump
prints
IR log ,
which must be open, to the file descriptor
IR fd .
PP
If
I ventilogging
is set to zero (the default),
I vtlognames
and
I vtlogdump
can inspect existing logs, but
I vtlogopen
always returns nil
and
I vtlog
is a no-op.
The other functions are no-ops when
passed nil log structures.
PP
The server library
(see
IR venti-conn (2)
and
IR venti-server (2))
writes debugging information to the log named
IR VtServerLog ,
which defaults to the string
RB ` libventi/server '.
SH SOURCE
B /sys/src/libventi
SH SEE ALSO
IR venti (2),
IR venti (8)