Many applications record errors and events in proprietary error logs, each with their own format and user interface. Data from different applications can't easily be merged into one complete report, requiring system administrators or support representatives to check a variety of sources to diagnose problems.
Event logging provides a standard, centralized way for applications (and the operating system) to record important software and hardware events. The event logging service records events from various sources and stores them in a single collection called an event log. The Event Viewer enables you to view logs; the programming interface also enables you to examine logs.
Event Viewer in Windows Vista+
Event Viewer in Windows XP
Applications can use the Event Logging API to report and view events. While any application can log events with Event Logging API, Win32 service applications use Event Logging most commonly.
Note: while it is recommended to use System Log for Win32 service applications, it is not strictly required. Win32 service applications can use typical EurekaLog bug report files instead of System Log.