Amazon CodeGuru Profiler · JSON Structure

Amazon Codeguru Profiler Agent Configuration Structure

The response of ConfigureAgent that specifies if an agent profiles or not and for how long to return profiling data.

Type: object Properties: 3 Required: 2
AmazonApplication PerformanceProfilingDevOpsMachine Learning

AgentConfiguration is a JSON Structure definition published by Amazon CodeGuru Profiler, describing 3 properties, of which 2 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

agentParameters periodInSeconds shouldProfile

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-codeguru-profiler/refs/heads/main/json-structure/amazon-codeguru-profiler-agent-configuration-structure.json",
  "name": "AgentConfiguration",
  "description": " The response of <a href=\"https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html\"> <code>ConfigureAgent</code> </a> that specifies if an agent profiles or not and for how long to return profiling data. ",
  "type": "object",
  "properties": {
    "agentParameters": {
      "allOf": [
        {
          "$ref": "#/components/schemas/AgentParameters"
        },
        {
          "description": "<p> Parameters used by the profiler. The valid parameters are: </p> <ul> <li> <p> <code>MaxStackDepth</code> - The maximum depth of the stacks in the code that is represented in the profile. For example, if CodeGuru Profiler finds a method <code>A</code>, which calls method <code>B</code>, which calls method <code>C</code>, which calls method <code>D</code>, then the depth is 4. If the <code>maxDepth</code> is set to 2, then the profiler evaluates <code>A</code> and <code>B</code>. </p> </li> <li> <p> <code>MemoryUsageLimitPercent</code> - The percentage of memory that is used by the profiler.</p> </li> <li> <p> <code>MinimumTimeForReportingInMilliseconds</code> - The minimum time in milliseconds between sending reports. </p> </li> <li> <p> <code>ReportingIntervalInMilliseconds</code> - The reporting interval in milliseconds used to report profiles. </p> </li> <li> <p> <code>SamplingIntervalInMilliseconds</code> - The sampling interval in milliseconds that is used to profile samples. </p> </li> </ul>"
        }
      ]
    },
    "periodInSeconds": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Integer"
        },
        {
          "description": " How long a profiling agent should send profiling data using <a href=\"https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html\"> <code>ConfigureAgent</code> </a>. For example, if this is set to 300, the profiling agent calls <a href=\"https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html\"> <code>ConfigureAgent</code> </a> every 5 minutes to submit the profiled data collected during that period. "
        }
      ]
    },
    "shouldProfile": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Boolean"
        },
        {
          "description": " A <code>Boolean</code> that specifies whether the profiling agent collects profiling data or not. Set to <code>true</code> to enable profiling. "
        }
      ]
    }
  },
  "required": [
    "periodInSeconds",
    "shouldProfile"
  ]
}