The windows event log is a common destination for applications to log errors and information messages. Of course company standards, operations preferences, and non-functional requirements all come in to play in deciding on a log destination.
It's perfectly valid to dump out informational or debug messages to the event log but typically this would be configuration based so that the log would not be filled with debug messages when they are not required. Common frameworks to do this would be log4net or Enterprise Library.
The event log does have some negatives:
- Usually the registry keys need to be setup in advance since many applications will not have permissions to create the keys at runtime (e.g. ASP.NET)
- The log can fill up preventing the logging of your messages
- The log can be set to roll over which can cause older entries to be lost
- The size of the log entry is limited (to 32767 characters, I think) so large entries will be truncated (e.g. if logging large WCF message)