amos@taux01.UUCP (Amos Shapir) (09/05/89)
In a normal BSD kernel, repeated kernel messages (such as 'disk out of space') are not printed verbatim; instead, just a count of repeated identical messages is printed for each set. In dynix, however, kernel messages contain the CPU number; since a repeated error condition is usually encountered by different processes running on different CPU's, this causes messages not to be identical, so each one is printed separately and also stored in /usr/adm/messages. If you hate to wade through hundreds of identical messages, you can remove redundant messages by piping the output of /etc/dmesg through 'uniq' - in /usr/lib/crontab, replace the line that runs it by: 0,10,20,30,40,50 * * * * /etc/dmesg - | uniq -c +2 >>/usr/adm/messages This will have the effect of ignoring the CPU number, and preceding each line by the number of times it was repeated. If you really have to see the CPU numbers, /etc/dmesg can still print the original messages as stored in the kernel's buffer, and of course the printing on the console is still unchanged. -- Amos Shapir amos@taux01.nsc.com or amos@nsc.nsc.com National Semiconductor (Israel) P.O.B. 3007, Herzlia 46104, Israel Tel. +972 52 522261 TWX: 33691, fax: +972-52-558322 34 48 E / 32 10 N (My other cpu is a NS32532)
csg@pyramid.pyramid.com (Carl S. Gutekunst) (09/07/89)
In article <2521@taux01.UUCP> amos@taux01.UUCP (Amos Shapir) writes: >In a normal BSD kernel, repeated kernel messages (such as 'disk out of >space') are not printed verbatim; instead, just a count of repeated >identical messages is printed for each set. That's a feature of the 4.3BSD syslogd(8), not the kernel. Since Dynix uses the 4.2BSD syslog, you can't get "repeat counting" even if you didn't also have the problem of the CPU number being printed out. <csg>