Warning: Attempt to read property "date" on null in /usr/local/www/websvn.planix.org/blame.php on line 247

Warning: Attempt to read property "msg" on null in /usr/local/www/websvn.planix.org/blame.php on line 247
WebSVN – planix.SVN – Blame – /os/branches/planix-v0/sys/man/2/venti-log – Rev 2

Subversion Repositories planix.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
.TH VENTI-LOG 2
2
.SH NAME
3
VtLog,
4
VtLogChunk, 
5
vtlog,
6
vtlogclose,
7
vtlogdump,
8
vtlognames,
9
vtlogopen,
10
vtlogprint,
11
vtlogremove,
12
vtlogopen,
13
ventilogging \- Venti logs
14
.SH SYNOPSIS
15
.ft L
16
#include <u.h>
17
.br
18
#include <libc.h>
19
.br
20
#include <venti.h>
21
.ta +\w'\fLVtLog* 'u
22
.PP
23
.B
24
VtLog*	vtlogopen(char *name, uint size);
25
.PP
26
.B
27
void	vtlogprint(VtLog *log, char *fmt, ...);
28
.PP
29
.B
30
void	vtlogclose(VtLog *log);
31
.PP
32
.B
33
void	vtlog(char *name, char *fmt, ...);
34
.PP
35
.B
36
void	vtlogremove(char *name);
37
.PP
38
.B
39
char**	vtlognames(int *n);
40
.PP
41
.B
42
void	vtlogdump(int fd, VtLog *log);
43
.PP
44
.B
45
extern int ventilogging;    /* default 0 */
46
.PP
47
.B
48
extern char *VtServerLog;    /* "libventi/server" */
49
.SH DESCRIPTION
50
These routines provide an in-memory circular log
51
structure used by the Venti library and the Venti server
52
to record events for debugging purposes.
53
The logs are named by UTF strings.
54
.PP
55
.I Vtlogopen
56
returns a reference to the log with the given
57
.I name .
58
If a log with that name does not exist and
59
.I size 
60
is non-zero,
61
.I vtlogopen
62
creates a new log capable of holding at
63
least
64
.I size
65
bytes and returns it.
66
.I Vtlogclose
67
releases the reference returned by
68
.IR vtlogopen .
69
.PP
70
.I Vtlogprint
71
writes to
72
.IR log ,
73
which must be open.
74
.PP
75
.I Vtlog
76
is a convenient packaging of
77
.I vtlogopen
78
followed by
79
.I vtlogprint
80
and
81
.IR vtlogclose .
82
.PP
83
.I Vtlogremove
84
removes the log with the given
85
.IR name ,
86
freeing any associated storage.
87
.PP
88
.I Vtlognames
89
returns a list of the names of all the logs.
90
The length of the list is returned in
91
.BI * n \fR.
92
The list
93
should be freed
94
by calling
95
.I vtfree
96
on the returned pointer.
97
The strings in the list will be freed by this call as well.
98
(It is an error to call
99
.I vtfree
100
on any of the strings in the list.)
101
.PP
102
.I Vtlogdump
103
prints
104
.IR log ,
105
which must be open, to the file descriptor
106
.IR fd .
107
.PP
108
If
109
.I ventilogging
110
is set to zero (the default),
111
.I vtlognames
112
and
113
.I vtlogdump
114
can inspect existing logs, but
115
.I vtlogopen
116
always returns nil
117
and
118
.I vtlog
119
is a no-op.
120
The other functions are no-ops when
121
passed nil log structures.
122
.PP
123
The server library
124
(see
125
.IR venti-conn (2)
126
and
127
.IR venti-server (2))
128
writes debugging information to the log named
129
.IR VtServerLog ,
130
which defaults to the string
131
.RB ` libventi/server '.
132
.SH SOURCE
133
.B /sys/src/libventi
134
.SH SEE ALSO
135
.IR venti (2),
136
.IR venti (8)