Patent ID: 9251028
Filing Date: 2016-02-02
CPC Classification: G06F

Claim Text:
1. A method for managing code instrumentation in a production computer program, said method comprising: receiving, by a first computer, performance data from instrumentation code associated with a portion of code of a production computer program that is running in a second computer, wherein said instrumentation code comprises multiple code portions of instrumentation code, wherein said instrumentation code comprises code coverage code, wherein said performance data comprises code coverage data for said portion of code, wherein said code coverage data describes a quantity of times that the portion of code is executed and evaluated by the instrumentation code, wherein a predetermined performance threshold comprises a predetermined measure of code coverage, wherein said instrumentation code is provided in said portion of code in response to the performance data for said portion of code failing to meet a predetermined performance threshold, wherein said performance data is determined prior to an incorporation of said portion of code into said production computer program, and wherein said performance data is collected by a code coverage data reporting module (CCDRM) in the second computer; pooling, by one or more processors, the code coverage data from multiple production computer programs; comparing, by one or more processors, said performance data to said predetermined performance threshold, wherein the performance data describes a quantity of times that the portion of code is executed in the multiple production computer programs; in response to said performance data meeting said predetermined performance threshold, removing, by one or more processors, said multiple code portions of instrumentation code from said portion of code in the multiple production computer programs; determining, by one or more processors, whether or not an error has been reported for said production computer program; in response to an error being reported for said production computer program, determining, by one or more processors, whether said portion of code is affected by a fix provided for said error; identifying, by one or more processors, code portions in the production computer program that are unaffected by the fix; in response to said portion of code being unaffected by said fix, comparing, by one or more processors, said performance data against the predetermined performance threshold; in response to said performance data meeting said predetermined performance threshold, removing, by one or more processors, said instrumentation code for said portion of code; in response to said performance data meeting said predetermined performance threshold, removing, by one or more processors, said instrumentation code and said CCDRM from one or more corresponding instances of said portion of code in other production computer programs; and in response to all instances of instrumentation code being removed from the production computer program, issuing a patch that is made up of the production computer program with all instances of the instrumentation code removed.