NON-INTRUSIVE DATA LOGGING
First Claim
1. A non-transitory computer-readable medium storing computer readable instructions for:
- creating a first object;
the first object interacting with a first logging location in an arbitrary model,the first object including a first reference,the first object having a first counter,the first object creating a first vector having a first data point for the first object;
creating a second object;
the second object interacting with a second logging point in an arbitrary model,the second object including a second reference, andthe second object having a counter for indexing into a vector;
determining whether the second object shares at least the first data point of the data in the first vector with the first object;
indexing the counter when the second object shares the first data point; and
creating a second vector when the second object does not share the first data point.
1 Assignment
0 Petitions
Accused Products
Abstract
Mediums, methods, and systems are provided for efficiently logging data. A model may include one or more logging points which process data, the data being stored in a log associated with the logging point. The logging point may request that a logging object store the data point. The logging object may include a reference to a vector for storing the data point. When two or more logging objects are associated with the same logged data points, the two or more logging objects may share the same vector. If an object logs a point which is not present in a shared vector, the object may update the object'"'"'s reference so that the object references a different existing vector, or the object may create a new vector. The vectors may be compressed and/or made circular to achieve improved efficiency.
7 Citations
24 Claims
-
1. A non-transitory computer-readable medium storing computer readable instructions for:
-
creating a first object; the first object interacting with a first logging location in an arbitrary model, the first object including a first reference, the first object having a first counter, the first object creating a first vector having a first data point for the first object; creating a second object; the second object interacting with a second logging point in an arbitrary model, the second object including a second reference, and the second object having a counter for indexing into a vector; determining whether the second object shares at least the first data point of the data in the first vector with the first object; indexing the counter when the second object shares the first data point; and creating a second vector when the second object does not share the first data point. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer implemented method comprising:
-
creating a first object; the first object interacting with a first logging location in an arbitrary model, the first object including a first reference, the first object having a first counter, the first object creating a first vector having a first data point for the first object; creating a second object; the second object interacting with a second logging point in an arbitrary model, the second object including a second reference, and the second object having a counter for indexing into a vector; determining whether the second object shares at least the first data point of the data in the first vector with the first object; indexing the counter when the second object shares the at least a portion of the data; and creating a second vector when the second object does not share the at least a portion of the data.
-
-
9. A system comprising:
-
a storage for storing; a first object; the first object interacting with a first logging location in an arbitrary model, the first object including a first reference, the first object having a first counter, the first object creating a first vector having a first data point for the first object; a second object; the second object interacting with a second logging point in an arbitrary model, the second object including a second reference, and the second object having a counter for indexing into a vector; and a processor for; determining whether the second object shares at least the first data point of the data in the first vector with the first object; indexing the counter when the second object shares the at least a portion of the data; and creating a second vector when the second object does not share the at least a portion of the data.
-
-
10. A non-transitory computer-readable medium storing computer readable instructions for:
-
monitoring a plurality of objects, the objects for logging data from a plurality of logging locations in a model; monitoring a plurality of log vectors, where the plurality of log vectors is fewer than the plurality of objects; receiving a logging request at one of the plurality of objects, the request being for a data point to be logged with data in one of the plurality of log vectors; determining whether the data point is in one of the plurality of log vectors; and sharing a log vector having the data point with the one of the plurality of objects at which the logging request was received.
-
-
11. A non-transitory computer-readable medium storing computer readable instructions for:
-
creating a plurality of logging objects, the plurality of logging objects; comprising a first logging object and a second logging object, and being exposed to an environment that generates information to be stored in a log; creating one or more vectors, the one or more vectors; comprising a first vector, and storing the information; accepting a request from the environment that the first logging object log a data point; logging the data point in the first vector; identifying that the first logging object can share the first vector with the second logging object; and sharing the first vector with the second logging object. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A computer-implemented method comprising:
-
creating a plurality of logging objects, the plurality of logging objects; comprising a first logging object and a second logging object, and being exposed to an environment that generates information to be stored in a log; creating one or more vectors, the one or more vectors; comprising a first vector, and storing the information; accepting a request from the environment that the first logging object log a data point; logging the data point in the first vector; identifying that the first logging object can share the first vector with the second logging object; and sharing the first vector with the second logging object.
-
-
24. A non-transitory computer-readable medium storing computer readable instructions for:
-
creating a first object; the first object interacting with a first logging location in a first arbitrary model, the first object including a first reference, the first object having a first counter, the first object creating a first vector having a first data point for the first object; creating a second object; the second object interacting with a second logging point in a second arbitrary model, the second object including a second reference, and the second object having a counter for indexing into a vector; determining whether the second object shares at least the first data point of the data in the first vector with the first object; indexing the counter when the second object shares the first data point; and creating a second vector when the second object does not share the first data point.
-
Specification