A computer-implemented method for model-based event processing in a managed computing system as a collection of one or more hardware and / or software components that provides for correlation of events, the events being associated with a variety of managed entities and the model storing relationships between the managed entities, the method comprising: retrieving an abstract model including one or more types of managed entities modeled as components, one or more types of relationships between the components representing managed entities, and the abstract model further encoding methods for discovering concrete instances of the types of managed entities and types of relationships, wherein each type of managed entity is a hardware and / or software component; creating a concrete model of a system of managed entities as a collection of one or more hardware and / or software components by discovering, using the methods encoded in the abstract model, concrete instances of the managed entities defined in the abstract model, types of relationships between managed entities and the relationships between the discovered managed entities, wherein each managed entity of the system is represented by a modeled component; selecting events associated with the managed entities by collecting reported events, each event including a snapshot of a condition and / or an error report of a managed entity, and associating each of the selected events with their corresponding managed entities in the concrete model; determining that the identified events are correlated if their corresponding managed entities, with which the identified events are associated, are related according to the abstract and / or the concrete model; and issuing, in response to the determining, communication indicating the discovery of correlated events, including information from event records of the correlated events. retrieving an abstract model including one or more types of managed entities modeled as components, one or more types of relationships between the components representing managed entities, and the abstract model further encoding methods for discovering concrete instances of the types of managed entities and types of relationships, wherein each type of managed entity is a hardware and / or software component; creating a concrete model of a system of managed entities as a collection of one or more hardware and / or software components by discovering, using the methods encoded in the abstract model, concrete instances of the managed entities defined in the abstract model, types of relationships between managed entities and the relationships between the discovered managed entities, wherein each managed entity of the system is represented by a modeled component; selecting events associated with the managed entities by collecting reported events, each event including a snapshot of a condition and / or an error report of a managed entity, and associating each of the selected events with their corresponding managed entities in the concrete model; determining that the identified events are correlated if their corresponding managed entities, with which the identified events are associated, are related according to the abstract and / or the concrete model; and issuing, in response to the determining, communication indicating the discovery of correlated events, including information from event records of the correlated events.