It is a fairly well documented fact that exceptions raised during the logging process is swallowed by NLog by default (can be configured using the "throwsExceptions" parameter). I have since discovered that NLog does throw exceptions by default if it encounters any issues during the stage where configuration is being loaded up (for instance, when the log level specified for the "minLevel" rule parameter is not recognized i.e. "Warning" instead of "Warn").
I realise that the crashes that I am currently having can be easily handled by covering my GetLogger statements with try ... catch constructs to properly handle any exceptions that are thrown; however I am curious as to why there is this apparent inconsistency in the way errors are handled (i.e. exceptions are thrown on the one hand by default but are swallowed on the other).
I also noticed an internal switch called ignoreErrors which would stop NLog from throwing any exceptions during the process of forming the configuration - it doesn't appear to be used currently (at least in the code that I have been looking at i.e. the latest 1.0 stuff, I've not looked at 2.0 yet).