seriallogger Code
Status: Beta
Brought to you by:
hnc
File | Date | Author | Commit |
---|---|---|---|
htdocs | 2008-05-03 | hnc | [r8] Made the home page valid XHTML. |
AUTHORS | 2008-04-16 | hnc | [r3] Added config.h.in and some info files. |
COPYING | 2008-04-16 | hnc | [r4] Added package info. Added COPYING and Changelo... |
ChangeLog | 2008-05-02 | hnc | [r5] Made pid file path configurable. Release 0.2. |
Makefile.am | 2008-04-16 | hnc | [r1] Initial import. |
README | 2008-08-13 | hnc | [r10] README update. |
config.h.in | 2008-04-16 | hnc | [r3] Added config.h.in and some info files. |
configure.ac | 2008-05-02 | hnc | [r5] Made pid file path configurable. Release 0.2. |
seriallogger.c | 2008-08-21 | hnc | [r11] Fixed typo in comment. |
seriallogger.h | 2008-04-16 | hnc | [r1] Initial import. |
util.c | 2008-04-16 | hnc | [r1] Initial import. |
util.h | 2008-04-16 | hnc | [r1] Initial import. |
seriallogger - Copyright (C) 2008 Heath Caldwell ------------ seriallogger is a simple utility to log data that comes in on a serial port. It runs as a daemon that opens a serial device and reads whatever data comes in, writing that data to a log file. It will also rotate the log into an archive directory. Options (defaults in parentheses): -d <device>, --device=<device> Device file for serial port (/dev/ttyS0) -b <speed>, --baudrate=<speed> Bits per second to use for the serial connection (9600) -p <parity>, --parity=<parity> Parity: 'e' for even, 'o' for odd, 'n' for none (n) -t <bits>, --data=<bits> Number of data bits per character: 5, 6, 7 or 8 (8) -s <times>, --stop=<times> Number of stop bit-times: 1 or 2 (1) -u <chars>, --buffer=<chars> Max number of characters to read at a time (256) -l <path>, --log=<path> Location of log file (/var/log/seriallogger.log) -m <bytes>, --max_log_size=<bytes> Size log file should be before rotation, in bytes (409600) -a <directory>, --archive=<directory> Location to store archived logs (/var/log/archive) -n <num>, --max_logs=<num> Maximum umber of rotated logs to keep archived (2) -i <path>, --pid_file=<path> Location of pid file (/var/run/seriallogger.pid) -h, --help Print this message This program was originally written to run on the service processor of Sun hardware that lacks a console history. It should be useful, however, for logging any kind of data that comes in through a serial port. ----- If you intend to run this on the SP of a Sun x4100 or similar and want to have it log the machine's console messages, rotating the log into /coredump once it reaches 204800 bytes, keeping only the 4 most recent archived logs, and use /var/lock/LCK..ttyS1 as its pid file (this will cause the SP to think that the serial console is already in use if you try something like "start SP/console"), you can do something like this (you should place seriallogger in /conf so that it will stay there across boots): /conf/seriallogger -d /dev/ttyS1 -a /coredump -m 204800 -n 4 -i /var/lock/LCK..ttyS1 In order to have it start up when the SP boots, you might also want to add something like this to /conf/crontab: @reboot root /conf/seriallogger -d /dev/ttyS1 -a /coredump -m 204800 -n 4 -i /var/lock/LCK..ttyS1 You can get a precompiled cross toolchain that will work for building this for the SP (which is ppc architecture) here: http://buffalo.nas-central.org/index.php/Precompiled_C_Cross-Toolchain Just put the path to the binaries in PATH and configure with: configure --host=powerpc-hdhglan-linux If you intend to run this on the SP of a Sun x4150, you can run seriallogger with something like this: /conf/seriallogger -d /dev/ttyS0 -a /var/log -m 204800 -n 4 -i /var/lock/LCK..ttyS0 To make it start at boot, you can add a line like this to /conf/interfaces (this is probably not the best way to do this, but it is the only thing that we could think of): up /conf/seriallogger -d /dev/ttyS0 -a /var/log -m 204800 -n 4 -i /var/lock/LCK..ttyS0 ----- Author: Heath Caldwell <hncaldwell@csupomona.edu> Homepage: http://sourceforge.net/projects/seriallogger/