I have been trying to deal with some syslog files to store them in a DB but the format has just been too variable so I had another idea how to deal with them
My lines look like the following
May 2 04:06:15 lon-pop.mail.mydom.com pop3login: LOGOUT, user=gonenow, ip=[::ffff:127.0.0.1], top=0, retr=0, rcvd=24, sent=5560, time=1
The first three parts are pretty standard i.e. datetime( though with no year ) sysloghost, progname then the very variable message.
What I would like to do is convert this to a csv line as follows where its broken into at least four parts but if the string user=gonenow appears then add gonenow ( or whatever the users name was ) as an extra field, same for ip=
02/05/2012 04:06:15,lon-pop.mail.mydom.com,pop3login,"LOGOUT, user=gonenow, ip=[::ffff:127.0.0.1], top=0, retr=0, rcvd=24, sent=5560, time=1",gonenow,::ffff:127.0.0.1
I dont mind either way if I end up with empty fields or no fields at the end i.e. ,, or it just ends after the end quote of the message, but I have been banging my head trying to figure this for a few days