.TH lcm-logger 1 2009-07-28 "LCM" "Lightweight Communications and Marshalling (LCM)" .SH NAME lcm-logger \- data logger .SH SYNOPSIS .TP 5 \fBlcm-logger \fI[options]\fR \fI[FILE]\fR .SH DESCRIPTION .PP LCM message logging utility. Subscribes to all channels on an LCM network, and records all messages received to \fIFILE\fR. If \fIFILE\fR is not specified, then a filename is automatically chosen. .SH OPTIONS The following options are provided by \fBlcm-logger\fR .TP .B \-c, \-\-channel=\fICHAN\fR Channel string to pass to lcm_subscribe. (default: ".*") .TP .B \-\-flush\-interval=\fIMS\fR Flush the log file to disk every MS milliseconds. (default: 100) .TP .B \-f, \-\-force Overwrite existing files. The default behavior is to fail if the output file already exists. .TP .B \-h, \-\-help Shows some help text and exits .TP .B \-i, \-\-increment Automatically append a suffix to \fIFILE\fR such that the resulting filename does not already exist. This option precludes -f and --rotate. .TP .B \-l, \-\-lcm\-url=\fIURL\fR Log messages on the specified LCM URL .TP .B \-m, \-\-max\-unwritten-mb=\fISIZE\fR Maximum size of received but unwritten messages to store in memory before dropping messages. (default: 100 MB) .TP .B \-\-rotate=\fINUM\fR When creating a new log file, rename existing files out of the way and always write to FILE.0. If FILE.0 already exists, it is renamed to FILE.1. If FILE.1 exists, it is renamed to FILE.2, etc. If FILE.NUM exists, then it is deleted. This option precludes -i. .TP .B \-\-split\-mb=\fIN\fR Automatically start writing to a new log file once the log file exceeds N MB in size (can be fractional). This option requires -i or --rotate. .TP .B \-q, \-\-quiet Suppress normal output and only report errors. .TP .B \-s, \-\-strftime Format \fIFILE\fR with strftime. .TP .B \-v, \-\-invert-channels Invert channels. Log evertyhing that \fICHAN\fR does not match. .SH ROTATING AND SPLITTING .PP For long-term logging, lcm-logger can rotate through a fixed number of log files, moving to a new log file as existing files reach a maximum size. To do this, use --rotate and --split-mb. For example: # Rotate through logfile.0, logfile.1, ... logfile.4 lcm-logger --rotate=5 --split-mb=2 logfile Moving to a new file happens either when the current log file size exceeds the limit specified by --split-mb, or when lcm-logger receives a SIGHUP. .SH SIGNALS .PP On platforms defining SIGHUP, lcm-logger will react to HUP by closing the active log file and opening a new one. .SH SEE ALSO .BR strftime (3) .SH COPYRIGHT lcm-logger is part of the Lightweight Communications and Marshalling (LCM) project. Permission is granted to copy, distribute and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. See the file COPYING in the LCM distribution for more details regarding distribution. LCM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with LCM; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA .SH AUTHOR This manual page was written by Albert Huang.