1. A computer system comprising: a second computing device; and a first computing device comprising: a first memory device; a resource allocation module; a first shared computing resource; and a first processing device coupled to the first memory device and configured to perform, based on instructions stored in the first memory device: managing a first load level and a second load level of the first shared computing resource by a first software application and a second software application, respectively; mapping a plurality of policies to a plurality of previous event patterns,. wherein the plurality of policies comprises a first policy and a second policy; determining a first load level and a second load level of the first shared computing resource by the first software application and the second software application, respectively, that are executing on the first computing device; when the first load level exceeds a first predetermined threshold, obtaining a first event data stream for the first software application; selecting a first filter from a plurality of filters for the first software application; transforming the first event data stream with the first filter to obtain a first detected event pattern; and when the first detected event pattern matches a first previous event pattern of the plurality of previous event patterns, instructing the resource allocation module to apply the first policy to the first software application for the first shared computing resource, wherein the plurality; and when the second load level exceeds a second predetermined threshold, obtaining a second event data stream for the second software application; selecting a second filter from a plurality of filters for the second software application, wherein the second filter is different from the first filter; transforming the second event data stream to obtain a second detected event pattern; and when the second detected event pattern matches a second previous event pattern of the plurality of previous event patterns, instructing the resource allocation module to apply the second policy to the second software application for the first shared computing resource.