[Crash-utility] RFE: add '-l' option to dmesg command
Dave Wysochanski
dwysocha at redhat.com
Sat May 30 15:48:12 UTC 2015
On Sat, 2015-05-30 at 11:45 -0400, Dave Anderson wrote:
>
> ----- Original Message -----
> > It would be useful to have the ability to dump out only certain log
> > levels of the kernel log. I know dmesg has '-m' which prepends the log
> > level and then you can always use some script logic but would it be easy
> > to add another option in crash to do this automatically?
>
> Not particularly easy. In the case of the older pre-variable-length-record format,
> the code walks through the log buffer character by character, and prunes any
> code between the angle-brackets unless -m is in play. So there's no line-by-line
> handling involved for the older kernels. And it would be trival to use -m and simply
> grep for the relevant "<#>" at the beginning of each output line.
>
> In the case of variable-length records, it's even uglier because the structure format
> used has changed several times, where it used to have its own structure member, and
> then was changed to use multiple different bitmaps-inside-integers. For that reason
> alone, I purposely decided to throw in the towel and go with a hexadecimal dump of the
> relevant field or all-inclusive member with -m, whichever is applicable. It would be
> a PITA to have to handle all the different structural differences.
>
> So in both cases, it's obviously not impossible, but would be kind of ugly.
>
> Dave
>
>
> > -l level Only display log messages matching 'level', which may be specified
> > as a single number (3) or a range (0-3).
>
Ok yeah I'm using this right now:
crash> dmesg -m | grep ^\<[01234]\>
Trying to get away from the extra commands where possible but if it's
too much trouble no biggie.
Thanks for looking / explaining.
More information about the Crash-utility
mailing list