class Aws::SageMaker::Types::MonitoringJobDefinition

Defines the monitoring job.

@note When making an API call, you may pass MonitoringJobDefinition

data as a hash:

    {
      baseline_config: {
        baselining_job_name: "ProcessingJobName",
        constraints_resource: {
          s3_uri: "S3Uri",
        },
        statistics_resource: {
          s3_uri: "S3Uri",
        },
      },
      monitoring_inputs: [ # required
        {
          endpoint_input: { # required
            endpoint_name: "EndpointName", # required
            local_path: "ProcessingLocalPath", # required
            s3_input_mode: "Pipe", # accepts Pipe, File
            s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key
            features_attribute: "String",
            inference_attribute: "String",
            probability_attribute: "String",
            probability_threshold_attribute: 1.0,
            start_time_offset: "MonitoringTimeOffsetString",
            end_time_offset: "MonitoringTimeOffsetString",
          },
        },
      ],
      monitoring_output_config: { # required
        monitoring_outputs: [ # required
          {
            s3_output: { # required
              s3_uri: "MonitoringS3Uri", # required
              local_path: "ProcessingLocalPath", # required
              s3_upload_mode: "Continuous", # accepts Continuous, EndOfJob
            },
          },
        ],
        kms_key_id: "KmsKeyId",
      },
      monitoring_resources: { # required
        cluster_config: { # required
          instance_count: 1, # required
          instance_type: "ml.t3.medium", # required, accepts ml.t3.medium, ml.t3.large, ml.t3.xlarge, ml.t3.2xlarge, ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.r5.large, ml.r5.xlarge, ml.r5.2xlarge, ml.r5.4xlarge, ml.r5.8xlarge, ml.r5.12xlarge, ml.r5.16xlarge, ml.r5.24xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge
          volume_size_in_gb: 1, # required
          volume_kms_key_id: "KmsKeyId",
        },
      },
      monitoring_app_specification: { # required
        image_uri: "ImageUri", # required
        container_entrypoint: ["ContainerEntrypointString"],
        container_arguments: ["ContainerArgument"],
        record_preprocessor_source_uri: "S3Uri",
        post_analytics_processor_source_uri: "S3Uri",
      },
      stopping_condition: {
        max_runtime_in_seconds: 1, # required
      },
      environment: {
        "ProcessingEnvironmentKey" => "ProcessingEnvironmentValue",
      },
      network_config: {
        enable_inter_container_traffic_encryption: false,
        enable_network_isolation: false,
        vpc_config: {
          security_group_ids: ["SecurityGroupId"], # required
          subnets: ["SubnetId"], # required
        },
      },
      role_arn: "RoleArn", # required
    }

@!attribute [rw] baseline_config

Baseline configuration used to validate that the data conforms to
the specified constraints and statistics
@return [Types::MonitoringBaselineConfig]

@!attribute [rw] monitoring_inputs

The array of inputs for the monitoring job. Currently we support
monitoring an Amazon SageMaker Endpoint.
@return [Array<Types::MonitoringInput>]

@!attribute [rw] monitoring_output_config

The array of outputs from the monitoring job to be uploaded to
Amazon Simple Storage Service (Amazon S3).
@return [Types::MonitoringOutputConfig]

@!attribute [rw] monitoring_resources

Identifies the resources, ML compute instances, and ML storage
volumes to deploy for a monitoring job. In distributed processing,
you specify more than one instance.
@return [Types::MonitoringResources]

@!attribute [rw] monitoring_app_specification

Configures the monitoring job to run a specified Docker container
image.
@return [Types::MonitoringAppSpecification]

@!attribute [rw] stopping_condition

Specifies a time limit for how long the monitoring job is allowed to
run.
@return [Types::MonitoringStoppingCondition]

@!attribute [rw] environment

Sets the environment variables in the Docker container.
@return [Hash<String,String>]

@!attribute [rw] network_config

Specifies networking options for an monitoring job.
@return [Types::NetworkConfig]

@!attribute [rw] role_arn

The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker
can assume to perform tasks on your behalf.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/MonitoringJobDefinition AWS API Documentation

Constants

SENSITIVE