{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-managed-apache-flink/refs/heads/main/json-structure/amazon-managed-apache-flink-monitoring-configuration-structure.json",
  "name": "MonitoringConfiguration",
  "description": "Describes configuration parameters for Amazon CloudWatch logging for an application. For more information about CloudWatch logging, see <a href=\"https://docs.aws.amazon.com/kinesisanalytics/latest/java/monitoring-overview.html\">Monitoring</a>.",
  "type": "object",
  "properties": {
    "ConfigurationType": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ConfigurationType"
        },
        {
          "description": "Describes whether to use the default CloudWatch logging configuration for an application. You must set this property to <code>CUSTOM</code> in order to set the <code>LogLevel</code> or <code>MetricsLevel</code> parameters."
        }
      ]
    },
    "MetricsLevel": {
      "allOf": [
        {
          "$ref": "#/components/schemas/MetricsLevel"
        },
        {
          "description": "Describes the granularity of the CloudWatch Logs for an application. The <code>Parallelism</code> level is not recommended for applications with a Parallelism over 64 due to excessive costs."
        }
      ]
    },
    "LogLevel": {
      "allOf": [
        {
          "$ref": "#/components/schemas/LogLevel"
        },
        {
          "description": "Describes the verbosity of the CloudWatch Logs for an application."
        }
      ]
    }
  },
  "required": [
    "ConfigurationType"
  ]
}