1. A monitoring method for monitoring a computer system, the monitoring method comprising steps of: defining one or more events to provide a unified specification, at runtime; registering at least one of the one or more events to be detected, wherein the event is selected from a group consisting of logging the events to a single logical entity, gathering statistics of the events to the single logical entity, and handling of the events in a customized manner; creating a consumer of the at least one of the one or more events registered using the unified specification; gathering statistics of the one or more events registered, the statistics selected from a group consisting of a count, a maximum, a minimum, an average, a median, a standard deviation, and a variance; handling the one or more events registered in a customized way by allowing the definition of a callback routine to be invoked when the one or more events occurs; registering an entry specifying events to occur only within a specific context, wherein the context is selected from the group consisting of a partition, an operating system, a process, and a thread; detecting an occurrence of at least one of the one or more events registered; generating a monitoring entry each time at least one of the one or more events is detected; determining the performance of the system; monitoring the performance of the system; dynamically enabling and disabling the step of generating monitoring entries based on the performance determination; dynamically enabling and disabling the step of detecting of an occurrence based on the performance determination; determining security violations; specifying the events registered to occur at intervals, specific frequencies, or based on triggers; deregistering the event registered; and entering each monitoring entry generated into a single logical entity.