1: .TH "bmon" "8" "" "Bandwidth Monitor" "bmon"
2: .SH "NAME"
3: bmon \- bandwidth monitor and rate estimator
4: .SH "SYNOPSIS"
5: .B bmon
6: [\fB\-\-show\-all\fR]
7: [\fB\-\-use\-si\fR]
8: [\fB\-\-input\fR=\fIMODULE\fR]
9: [\fB\-\-output\fR=\fIMODULE\fR]
10: [OPTIONS...]
11:
12: .SH "DESCRIPTION"
13: bmon is a monitoring and debugging tool to capture networking related
14: statistics and prepare them visually in a human friendly way. It
15: features various output methods including an interactive curses user
16: interface and a programmable text output for scripting.
17:
18: .SH "OPTIONS"
19: .PP
20: \fB \-h\fR, \fB\-\-help\fR
21: .RS 4
22: Prints a short help text and exits\&.
23: .RE
24: .PP
25: \fB \-V\fR, \fB\-\-version\fR
26: .RS 4
27: Prints the versioning identifier and exits\&.
28: .RE
29: .PP
30: \fB \-i\fR, \fB\-\-input=\fRMODULE[:OPTIONS][,MODULE...]
31: .RS 4
32: Set list of input modules to load and use. Multiple modules can be used
33: in parallel. bmon automatically loads a useful and working input module
34: by default. See INPUT MODULES for more details.
35: .RE
36: .PP
37: \fB \-o\fR, \fB\-\-output\fRMODULE[:OPTIONS][,MODULE...]
38: .RS 4
39: Set list of output modules to load and use. Multiple modules can be used
40: in parallel. By default, bmon will use the curses output mode, if that is
41: not available due to an incompatible console it will fall back to a simple
42: text mode. See OUTPUT MODULES for more details.
43: .RE
44: .PP
45: \fB \-U\fR, \fB\-\-use\-si\fR
46: .RS 4
47: Use SI unit system (1KB = 1'000 bytes) instead of 1KB = 1'024 bytes.
48: .RE
49: .PP
50: \fB \-f\fR, \fB\-\-configfile=\fRFILE
51: .RS 4
52: Set alternative path to configuration file.
53: .RE
54: .PP
55: \fB \-p\fR, \fB\-\-policy=\fRPOLICY
56: .RS 4
57: Set policy defining which network interfaces to display. See
58: INTERFACE SELECTION for more details.
59: .RE
60: .PP
61: \fB \-a\fR, \fB\-\-show\-all=\fR
62: .RS 4
63: Display all interfaces, even interface that are administratively down.
64: .RE
65: .PP
66: \fB \-r\fR, \fB\-\-read\-interval=\fRFLOAT
67: .RS 4
68: Set interval in seconds in which input modules read statistics from their
69: source. The default is 1.0 seconds.
70: .RE
71: .PP
72: \fB \-R\fR, \fB\-\-rate\-interval=\fRFLOAT
73: .RS 4
74: Set interval in seconds in which the rate per counter is calculated.
75: The default is 1.0 seconds.
76: .RE
77: .PP
78: \fB \-b\fR, \fB\-\-use\-bit\fR
79: .RS 4
80: Show rates in bits per second instead of bytes per second.
81: .RE
82: .PP
83: \fB \-L\fR, \fB\-\-lifetime=\fRFLOAT
84: .RS 4
85: Set lifetime of an element in seconds before it is no longer displayed
86: without receiving any statistical updates. The default is 30 seconds.
87: .RE
88:
89: .SH "INPUT MODULES"
90: .PP
91: Input modules provide statistical data about elements. Each element consists
92: of attributes which represents a counter, a rate, or a percentage. Elements
93: may carry additional child elements to represent a hierarchy. Each element is
94: assigned to a group defined by the input module. Input modules are polled in
95: the frequence of the configured read interval.
96: .PP
97: The following input modules are available:
98: .TP
99: \fBnetlink\fR
100: Uses the Netlink protocol to collect interface and traffic control statistics
101: from the kernel. This is the default input module.
102:
103: .TP
104: \fBproc\fR
105: Reads interface statistics from the /proc/net/dev file. This is considered a
106: legacy interface and provided for backwards compatibily reasons. This is a
107: fallback module if the Netlink interface is not available.
108:
109: .TP
110: \fBdummy\fR
111: Programmable input module for debugging and testing purposes.
112:
113: .TP
114: \fBnull\fR
115: No data collected.
116:
117: .PP
118: To receive additional information about a module, run the module with the
119: "help" option set like this:
120:
121: .PP
122: .RS 4
123: bmon \-i netlink:help
124: .RE
125:
126: See MODULE CONFIGURATION for more details.
127:
128: .SH "OUTPUT MODULES"
129: .PP
130: Output modules display or export the statistical data collected by input
131: modules. Multiple output modules can be run at the same time. bmon will
132: not prevent possible conflicts such as multiple output modules writing to
133: the console.
134: .PP
135: The following output modules exist:
136:
137: .TP
138: \fBcurses\fR
139: Interactive curses based text user interface providing real time rate
140: estimations and a graphical representatio nof each attribute. Press '?'
141: to display the quick reference guide. This is the default output mode.
142:
143: .TP
144: \fBascii\fR
145: Simple programmable text output intended for human consumption. Capable
146: of printing list of interfaces, detailed counters and graphs to the
147: console. This is the default fallback output mode if curses is not
148: available.
149:
150: .TP
151: \fBformat\fR
152: Fully scriptable output mode inteded for consumption by other programs.
153: See the module help text for additional information.
154:
155: .TP
156: \fBnull\fR
157: Disable output.
158:
159: .PP
160: To receive additional information about a module, run the module with the
161: "help" option set like this:
162:
163: .PP
164: .RS 4
165: bmon \-o curses:help
166: .RE
167:
168: See MODULE CONFIGURATION for more details.
169:
170: .SH "MODULE CONFIGURATION"
171: .PP
172: The syntax to configure modules is as follows:
173: .PP
174: .RS 4
175: ARGUMENT ::= mod1[:OPTS][,mod2[:OPTS]...]
176: .br
177: OPTS ::= OPTION[;OPTION...]
178: .br
179: OPTION ::= option[=value]
180: .RE
181:
182: .PP
183: Run the module with option "help" to receive the list of options for each
184: module:
185:
186: .PP
187: .RS 4
188: bmon \-i module:help
189: .RE
190:
191: .SH "INTERFACE SELECTION"
192: .PP
193: The following syntax is used to define the interface selection policy:
194: .PP
195: .RS 4
196: SELECTION ::= NAME[,NAME[,...]]
197: .br
198: NAME ::= [!]interface
199: .RE
200:
201: .PP
202: The interface name may contain the character '*' which will act as a wildcard
203: and represents any number of any character type, e.g. eth*, h*0, ...
204:
205: .PP
206: Examples:
207:
208: .PP
209: .RS 4
210: lo,eth0,eth1
211: .br
212: eth*,!eth0
213: .RE
214:
215: .SH "EXAMPLES"
216: .PP
217: To run bmon in curses mode monitoring the interfaces eth0
218: and eth1:
219: .PP
220: .RS 4
221: \fBbmon \-p eth0,eth1 \-o curses\fP
222: .RE
223: .PP
224: To run bmon in format mode, monitoring any eth* interfaces, with a specified
225: format string:
226: .PP
227: .RS 4
228: \fBbmon \-p \(aqeth*\(aq \-o format:fmt=\(aq$(element:name) $(attr:rxrate:packets)\en\(aq\fP
229: .RE
230: .PP
231:
232: .SH "FILES"
233: /etc/bmon.conf
234: .br
235: $HOME/.bmonrc
236:
237: .SH "SEE ALSO"
238: .PP
239: \fBip\fR(8),
240: \fBnetstat\fR(8),
241: \fBifconfig\fR(8),
242: \fBnetlink\fR(7),
243:
244: .SH "AUTHOR"
245: Thomas Graf <tgraf@suug.ch> among others
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>