System and method for logging messages in an embedded computer system
First Claim
1. A method for logging messages in an embedded computer system, comprising the steps of:
- constructing a log message that includes a plurality of data fields, possibly of different data types, collected in a single log message data structure;
logging said log message in a logger queue;
forwarding said logged message from said queue to a log message forwarder, that executes on a separate operating system thread or task, and executes code that the application software may install; and
determining whether to forward said log message to one or more destinations depending upon the results from said log message data field.
10 Assignments
0 Petitions
Accused Products
Abstract
A logging system which accepts logged messages concurrently from any number of parts of the application software. Each message is written to a message queue and then read and passed to a message forwarder, which the message forwarder analyzes one or more of the data fields of the message in order to decide whether to forward a particular message. In the event that the message will be forwarded, the forwarder also determines which destination or destinations to forward it to, which data fields from the logged message will be forwarded, and how those fields will be formatted when forwarded.
The forwarder code executes on its own Operating System thread or task to decouple the continued execution of the application from the process of forwarding the messages to their destination or destinations.
45 Citations
15 Claims
-
1. A method for logging messages in an embedded computer system, comprising the steps of:
-
constructing a log message that includes a plurality of data fields, possibly of different data types, collected in a single log message data structure;
logging said log message in a logger queue;
forwarding said logged message from said queue to a log message forwarder, that executes on a separate operating system thread or task, and executes code that the application software may install; and
determining whether to forward said log message to one or more destinations depending upon the results from said log message data field. - View Dependent Claims (2, 3, 4)
-
-
5. A method for logging messages in an embedded computer system, comprising the steps of:
-
constructing a log message that includes a plurality of data fields of one or more different data types that are collected in a single log message data structure;
queuing the log message in a logger queue;
executing a log message forwarder on a separate operating system thread or task, the log message forwarder having a priority associated with it;
providing the log message from the logger queue to the log message forwarder;
determining one or more destinations for the log message by analyzing at least one of the plurality of data fields;
forwarding the log message to the one or more destinations using the log message forwarder; and
controlling the priority associated with the log message forwarder relative to priorities of other threads or tasks in the embedded computer system. - View Dependent Claims (6, 7, 8, 9, 10)
-
-
11. A method for logging a log message having at least one log value to one or more destinations, comprising the steps of:
-
performing a memory allocation query to determine whether there is enough free memory to successfully store the at least one log value within an embedded computer system;
creating a log message in memory;
copying the at least one value into the log message;
queuing a reference to the log message into a logger queue;
analyzing the log message to determine the one or more destinations for forwarding the log message; and
forwarding at least part of the log message to the one or more destinations. - View Dependent Claims (12, 13, 14, 15)
-
Specification