venti, now with documentation!
This commit is contained in:
parent
a0d146edd7
commit
be7cbb4ef2
14 changed files with 2843 additions and 0 deletions
133
man/man3/venti-log.3
Normal file
133
man/man3/venti-log.3
Normal file
|
|
@ -0,0 +1,133 @@
|
|||
.TH VENTI-LOG 3
|
||||
.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 have textual names represented as UTF strings.
|
||||
.PP
|
||||
.I Vtlogopen
|
||||
returns a reference to the log named
|
||||
.I name .
|
||||
If a log with that name does not exist and
|
||||
.I size
|
||||
is non-zero, a new log capable of holding at
|
||||
least
|
||||
.I size
|
||||
bytes is allocated and returned.
|
||||
.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 (3)
|
||||
and
|
||||
.IR venti-server (3))
|
||||
writes debugging information to the log named
|
||||
.IR VtServerLog ,
|
||||
which defaults to the string
|
||||
.LR libventi/server .
|
||||
.SH SOURCE
|
||||
.B \*9/src/libventi
|
||||
.SH SEE ALSO
|
||||
.IR venti (3)
|
||||
Loading…
Add table
Add a link
Reference in a new issue