March 05, 2004

Multi-server status logging

If you're like me, you visit more than one IRC network. And perhaps, for one reason or the other, you want to not only log channels and private messages, but the status window too. (For me, it's keeping track of all the oper notices that go by on the status window... kills, akills, globops, and so on.)
In its logging options, mIRC gives you the option to put each network's logs into a separate folder, named like the network is named. Sounds easy, right?

It is easy, too. All goes well if you limit yourself to logging only channels and private messages. But when you want to log the status window too, things get more complicated. I'm guessing it's because you have to turn on logging for that window by hand, and that messes it up somehow, it doesn't deal well with having a folder assigned. I don't know.

Either way, if you want to log the status window and have it be sorted into a folder depending on which network it's related to, it's not as easy as it looks. If you do it the "easy" way - the logging options - the status logs end up in a folder named after the network they're referring to, yes; but these folders end up being a subfolder of a network's folder (I have no idea which is picked for it, the one you connect to first, I think; I didn't experiment. So you end up having a folder for each network you connect to in your logs folder, each containing channel and private message logs for that network; and then, inside one of those folders, a folder for each network you connect to, containing the status window logs for that network.

All goes well if you don't try to put each network's logfiles into their own folder - if you elect to put the network name in the filename of the logfiles (ie. #help.Serenity-IRC.20040304.log), and have them all in the main logs folder, mIRC won't bat an eyelid and name the status logs appropriately.

But I'm stubborn, and I like subfolders. ;)

So, after a bit of experimenting, here is how you get mIRC to put status logfiles into their proper folder.

  1. Set the mIRC logging options like this:

    mIRC options

    The important part is the right-hand side... make sure you have "Include network" checked, "Make folder" unchecked, and "Except status" unchecked.

  2. Connect to an IRC network, doesn't matter which as long as the connection actually succeeds.

  3. Turn on logging for the status window (rightclick on the status window tab, select logging > on); save it in the main logs folder.

  4. Open the mIRC options again, and set them like this:

    mIRC options

    (In other words, check "Make folder".)

  5. Disconnect from the network, and reconnect to it. You should now have a subfolder inside your logs folder, named like the network, with a status log inside it.

  6. You're done :) From now on, whichever network you connect to will generate its own folder and log the status window inside it. Note, mIRC doesn't identify the network you are connecting to until you're actually connected to it, so if the connection fails for some reason you will likely find that bit of the status window log appended to another status log.

Posted by sailoreagle at March 5, 2004 12:02 AM | Tutorials