I couldn't find a definitive recommendation for event logging so some time ago I simply started logging exceptions using:
new EventLogProvider().LogEvent("ControlName", "EXCEPTION", exceptionObject);
For some of our sites this works as expected and the event does appear in the event log in CMSDesk/CMSSiteManager. One site in particular, it does not seem to write to the log, ever, and it seems it does not work in all circumstances even in a site where it normally does.
Is the EventLogProvider the appropriate class to use or is there another higher level class we should be using? Is there some other way we should be logging events to the CMS Event Log?