Getting debugging info out of BitlBee
Be careful when posting debug logs. The output might have private info like your IM passwords, contact email addresses, user IDs, access tokens, etc.
If you're sharing info on something like pastebin, make sure you strip out private info first.
First of all, ignore the debug setting. It's useless. It should probably be removed.
Getting debug logs
To get debug output, you have to launch BitlBee by hand instead of from the init script, with the BITLBEE_DEBUG=1 environment variable set. Also, you should pass some flags so it won't daemonise (and close stdout, stderr, etc.).
In short, something like this:
BITLBEE_DEBUG=1 bitlbee -Dnv
This may not be very useful, as not all protocols use this method of debugging. Good luck!
Again, be careful when sharing this output on the bug tracker/pastebin/etc as it may contain your password.
A note on libpurple
With bitlbee-libpurple, you can't use daemon mode (-D), and using forkdaemon mode (-F) makes debugging difficult.
Using the BITLBEE_DEBUG=1 environment variable as mentioned in the previous section workarounds this, letting you use daemon mode with libpurple, but it will only work for the first connection from your irc client, and will abort if you try to connect more than once to the same bitlbee instace. Just restart it if you need more than one connection.
This one's easy, and works even if you're on a public server. It won't work if you use libpurple's jabber, see the previous sections for that.
Before connecting, you can enable xmlconsole to get raw XMPP traffic in a PM window from the _xmlconsole contact:
account jabber set xmlconsole true
This will show the whole login sequence. The packet that sends the password is censored with stars.
Or, if already connected, you can add and remove the _xmlconsole contact like this:
add jabber _xmlconsole remove _xmlconsole
Also, it will let you send raw XML to the server yourself. But be careful, if you send something invalid the server on the other end will probably disconnect you!