US 12,455,809 B1
Real-time reporting based on instrumentation of software
Phillip Liu, Palo Alto, CA (US); Arijit Mukherji, Fremont, CA (US); Rajesh Raman, Palo Alto, CA (US); Kris Grandy, San Carlos, CA (US); and Jack Lindamood, San Mateo, CA (US)
Assigned to Cisco Technology, Inc., San Jose, CA (US)
Filed by Cisco Technology, Inc., San Jose, CA (US)
Filed on Apr. 21, 2021, as Appl. No. 17/236,388.
Application 17/236,388 is a continuation of application No. 16/542,318, filed on Aug. 16, 2019, granted, now 11,010,278.
Application 16/542,318 is a continuation of application No. 15/845,991, filed on Dec. 18, 2017, granted, now 10,437,705, issued on Oct. 8, 2019.
Application 15/845,991 is a continuation of application No. 14/800,677, filed on Jul. 15, 2015, granted, now 9,846,632, issued on Dec. 19, 2017.
Claims priority of provisional application 62/109,308, filed on Jan. 29, 2015.
Claims priority of provisional application 62/094,935, filed on Dec. 19, 2014.
Claims priority of provisional application 62/061,616, filed on Oct. 8, 2014.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 11/362 (2025.01); G06F 11/30 (2006.01); G06F 11/34 (2006.01)
CPC G06F 11/3644 (2013.01) [G06F 11/3082 (2013.01); G06F 11/3466 (2013.01); G06F 2201/865 (2013.01); G06F 2201/88 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method for combining data of data streams received from multiple sources, comprising:
receiving, over a time interval, data from one or more data streams, each data stream comprising data values generated by one or more sensors associated with one or more external systems;
quantizing the data received for each data stream for the time interval;
generating a quantized aggregate value based on a data value of each data stream received during the time interval;
receiving modifications to at least part of metadata describing attributes of the one or more data streams, the metadata being arranged in a data structure having a hierarchy of a plurality of levels, wherein a modification to metadata at a first level in the plurality of levels causes metadata at a second level in the plurality of levels to be modified, the second level being lower than the first level in the hierarchy of the plurality of levels, the metadata being specified by an application system that is different than the one or more external system from which the one or more data streams received;
selecting a modified set of data streams in response to the modifications causing a change in a set of data streams from the one or more data streams applicable to an expression;
determining, based on the modified set of data streams, an instance of a metadata object representing a set of properties and the modified set of data streams applicable to the expression based on modified metadata associated with the modifications;
evaluating the expression, specified using the modified metadata, that aggregates multiple quantized aggregate values corresponding to the modified set of data streams associated with the metadata object for the time interval and at least one other quantized aggregate value from another set of data streams received over a preceding time interval having matching properties with the modified set of data streams;
generating, in real time, reports including result values describing an instrumented software executed on the one or more external systems, based on the evaluating of the expression;
and causing display of the result values of the reports through a user interface wherein the displayed result values are updated in real time as the data of the one or more data streams is received.