Rules engine for troubleshooting video content delivery network
First Claim
1. A rules filter operative on a controller, the rules filter for detection and presentation of error conditions, the rules filter having:
- a plurality of rules, each rule having a log identifier specifying a log or event source for application of the rule, one or more match conditions, each said match condition comparing one or more log or event fields with associated match values, and an action to be performed if said rule match condition comparison is satisfied;
a rules processing thread for applying said plurality of rules to a merged queue of log and event messages, said merged queue of log and event messages generated by a plurality of message log threads, each said log thread operative on a different message log source;
each said message log thread detecting the arrival of a new log or event messages from a particular source and forwarding said new log or event message to said merged log and event message queue;
said merged queue of log and event messages sequentially ordered by timestamp prior to application of said rules;
at least one of said rules comprising a first subset of rules verifying network connectivity, a second subset of rules verifying server configuration, said second subset of rules identifying a non-responsive server, said first subset of rules and said second subset of rules executed prior to a third subset of rules which identifies a failure which requires said first subset of rules and said second subset of rules identify correct operation prior to application of said third subset of rules;
where said action includes the generation of a message which contains information extracted from the associated said log or event which generated said match condition.
1 Assignment
0 Petitions
Accused Products
Abstract
A rules engine for application of rules to a plurality of log events from a plurality of log and event sources has separate threads for the collection of log entries and events, which logs and events are merged together to form a merged log events. A rules thread applies the merged events to a series of rules in search of a match condition, where the match condition involves a log source and one or more fields selected from a particular log or event. When a match condition occurs according to criteria specified by the rule, an action is performed. In one example, the action is the presentation of a distilled message which indicates a corrective action or problem source based on the application of the rules to the merged stream of messages. In another example, multi-tab displays indicate unprocessed logs and the results of applied rules.
-
Citations
18 Claims
-
1. A rules filter operative on a controller, the rules filter for detection and presentation of error conditions, the rules filter having:
-
a plurality of rules, each rule having a log identifier specifying a log or event source for application of the rule, one or more match conditions, each said match condition comparing one or more log or event fields with associated match values, and an action to be performed if said rule match condition comparison is satisfied; a rules processing thread for applying said plurality of rules to a merged queue of log and event messages, said merged queue of log and event messages generated by a plurality of message log threads, each said log thread operative on a different message log source; each said message log thread detecting the arrival of a new log or event messages from a particular source and forwarding said new log or event message to said merged log and event message queue; said merged queue of log and event messages sequentially ordered by timestamp prior to application of said rules; at least one of said rules comprising a first subset of rules verifying network connectivity, a second subset of rules verifying server configuration, said second subset of rules identifying a non-responsive server, said first subset of rules and said second subset of rules executed prior to a third subset of rules which identifies a failure which requires said first subset of rules and said second subset of rules identify correct operation prior to application of said third subset of rules; where said action includes the generation of a message which contains information extracted from the associated said log or event which generated said match condition. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A process for a rules engine generating troubleshooting messages for a content delivery network, the rules engine operative on a stream of log events, the process having:
-
a rules generation step for generating rules, each rule having a log identifier, one or more rule match conditions, each rule match condition having a field identifier and a field value to compare, each said rule also having an action to perform on a match condition of said rule; at least one of said rules comprising a first subset of rules verifying network connectivity, a second subset of rules verifying server configuration, said second subset of rules identifying a non-responsive server, said first subset of rules and said second subset of rules executed prior to a third subset of rules which identifies a failure which requires said first subset of rules and said second subset of rules identify correct operation prior to application of said third subset of rules; a log aggregation step where a series of log entries from a plurality of logs are formed into a single stream of messages ordered according to the timestamp of each log entry; a rules application step where said rules are applied to said single stream of messages, thereby resulting in a plurality of actions associated with said match conditions; a display step whereby said match conditions for each said rule are placed into a display window which includes a summary part containing said actions and a log part containing said single stream of messages. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A rules engine for a video content delivery network, said rules engine having:
-
a processor; a non-signal computer readable medium that stores program instructions for the processor, the program instructions including; a plurality of rules, each said rule having; a log identifier, one or more a match conditions, each match condition including a string or substring match value; an action to take when said match condition is met, said action including a dependency identifier which causes subsequent rules to be executed which have a dependency which matches a particular said dependency identifier; at least one said rule comprising a first subset of rules verifying network connectivity, a second subset of rules verifying server configuration, said second subset of rules identifying a non-responsive server, said first subset of rules and said second subset of rules executed prior to a third subset of rules which identifies a failure which requires said first subset of rules and said second subset of rules identify correct operation prior to application of said third subset of rules; an action to take when said match condition is not met; an optional expiry timer value whereby said match condition is not tested until a time interval specified by said expiry timer value passes. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification