Logging as the main troubleshooting measure
If something goes wrong and you get an error or something doesn't work as expected, the most helpful troubleshooting measure is enabling logging, reproducing the issue and analyzing the log file. There are two types of logging.
E-mail protocols logging is used for troubleshooting in user area of WebMail. It can be enabled in Admin Panel / WebMail / Debug Settings / Enable Logging. For example, if sending a message fails or new messages are not received from mail server, you should enable logging, reproduce the issue and analyze the log file (or provide us with it for examination).
Special debug logging is used for deep troubleshooting. To enable it, uncomment the following line in web.config file located in WebMail folder:
<!--<add name="MyListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="C:\temp\webmail.log"/>-->
So that it looks like:
<add name="MyListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="C:\temp\webmail.log"/>
Make sure IIS has write permissions over the specified location.
To avoid irrelevant records in the log file (may significantly complicate analyzing), it's important to enable logging right before reproducing the issue and disable right after that.
Another reason of appearing irrelevant records is simultaneous access of multiple users to the same WebMail installation. If hundreds of users working with your WebMail installation at the moment when you're capturing the log file, all their actions will be logged and it'll be not possible to distinguish between relevant and irrelevant records. So, you should make sure you're the sole user working with your WebMail installation for that moment.