Distributed build and compile statistics
AssigneeCisco Technology, Inc.
InventorAndrew Patrick Buteau
Life of this patent
Estimating the term…
Abstract
The present technology adds code to a top level build configuration file of a configuration program that will gather metrics for each invocation of a build. These metrics are sent to a commonly accessible metric server for future analysis. The metrics are collected for a distributed engineering team over several machines. Compilation time metrics may then be collected for each compilation event and those metrics are analyzed by a common aggregator.
Claims15
A method for processing data regarding a plurality of program builds or compilations from a plurality of distributed computing devices, the method including:
- receiving, at an aggregator on a server in a computer network, build data and local machine data associated with one or more program builds being executed on the plurality of distributed computing devices, wherein the build data includes time stamp data representing start and end times for completing the build of each program, the build data and local machine data providing context for completing the plurality of program builds across the plurality of distributed computing devices;
- creating, by the aggregator, aggregated groups of data based on dimensions of the received build data and local machine data associated with the plurality of program builds at the distributed computing devices;
- determining, by the server, a time for completing at least one build of the plurality of program builds;
- receiving, from an administrator computing device, a query for a particular slice of the aggregated groups of data;
- and
- generating, by the server, a response to the receive query to return the requested particular slice of the aggregated groups of data, the response causing the administrator computing device to display, through an interface, a tree of the dimensions of the received build data and local machine data associated with the plurality of program builds at the distributed computing devices.
A system for processing data regarding a plurality of program builds at a plurality of distributed computing devices, the system including:
- a processor;
- a memory;
- and
- one or more modules stored in the memory and executable by the processor to perform operations including:
- receive build data and local machine data associated with one or more program builds being executed on the plurality of distributed computing devices, wherein the build data includes time stamp data representing start and end times for completing the build of each program, the build data and local machine data providing context for completing the plurality of program builds across the plurality of distributed computing devices;
- create aggregated groups of data based on dimensions of the received build data and local machine data associated with the plurality of program builds at the distributed computing devices;
- determine a time for completing at least one build of the plurality of program builds;
- receive, from an administrator computing device, a query for a particular slice of the aggregated groups of data;
- and
- generate a response to the receive query to return the requested particular slice of the aggregated groups of data, the response causing the administrator computing device to display, through an interface, a tree of the dimensions of the received build data and local machine data associated with the plurality of program builds at the distributed computing devices.
A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform operations for collecting data regarding a program build including:
- receiving build data and local machine data associated with one or more program builds being executed on the plurality of distributed computing devices, wherein the build data includes time stamp data representing start and end times for completing the build of each program, the build data and local machine data providing context for completing the plurality of program builds across the plurality of distributed computing devices;
- creating aggregated groups of data based on dimensions of the received build data and local machine data associated with the plurality of program builds at the distributed computing devices;
- determining a time for completing at least one build of the plurality of program builds
- receiving, from an administrator computing device, a query for a particular slice of the aggregated groups of data;
- and
- generating a response to the receive query to return the requested particular slice of the aggregated groups of data, the response causing the administrator computing device to display, through an interface, a tree of the dimensions of the received build data and local machine data associated with the plurality of program builds at the distributed computing devices.
Dependencies are inferred from the claim text.