Blame


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