I have been occasionally using chainsaw to analyze log files generated from
python. I use the LogFilePatternReceiver with a file:// url and it worked
fairly well for the python log format of "%(asctime)s %(name)-12s
%(levelname)-8s %(message)s" and chainsaw pattern of "TIMESTAMP LOGGER LEVEL
MESSAGE".

I am now trying to get it working with the threadname in the pattern, but
chainsaw doesn't seem to match the pattern properly. I changed the python
format to "%(asctime)s %(name)-12s %(threadName)s %(levelname)-8s
%(message)s" and chainsaw pattern to "TIMESTAMP LOGGER THREAD LEVEL
MESSAGE", however, chainsaw doesn't recognize the threadname in most of the
cases. In fact, it fails to recognize the level in most cases. It appears as
though, when the level is INFO, I can see the threadname and level
recognized, otherwise, THREAD and LEVEL are clubbed into MSG.

I then tried assigning fixed width to threadname (%(threadName)-40s), in
case that is what is causing the confusion, but this actually made it even
worse. Is there a way to fine tune how LogFilePatternReceiver recognizes
different fields in the log? May be a way to specify the field widths? I am
using v2. I would appreciate any help.

Reply via email to