MWAA

Client

class MWAA.Client

A low-level client representing AmazonMWAA

This section contains the Amazon Managed Workflows for Apache Airflow (MWAA) API reference documentation. For more information, see What Is Amazon MWAA? .

Endpoints
Regions

For a list of regions that Amazon MWAA supports, see Region availability in the Amazon MWAA User Guide .

client = session.create_client('mwaa')

These are the available methods:

can_paginate(operation_name)

Check if an operation can be paginated.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Returns
True if the operation can be paginated, False otherwise.
close()

Closes underlying endpoint connections.

create_cli_token(**kwargs)

Creates a CLI token for the Airflow CLI. To learn more, see Creating an Apache Airflow CLI token .

See also: AWS API Documentation

Request Syntax

response = client.create_cli_token(
    Name='string'
)
Parameters
Name (string) --

[REQUIRED]

The name of the Amazon MWAA environment. For example, MyMWAAEnvironment .

Return type
dict
Returns
Response Syntax
{
    'CliToken': 'string',
    'WebServerHostname': 'string'
}

Response Structure

  • (dict) --
    • CliToken (string) --

      An Airflow CLI login token.

    • WebServerHostname (string) --

      The Airflow web server hostname for the environment.

Exceptions

create_environment(**kwargs)

Creates an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

See also: AWS API Documentation

Request Syntax

response = client.create_environment(
    AirflowConfigurationOptions={
        'string': 'string'
    },
    AirflowVersion='string',
    DagS3Path='string',
    EnvironmentClass='string',
    ExecutionRoleArn='string',
    KmsKey='string',
    LoggingConfiguration={
        'DagProcessingLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'SchedulerLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'TaskLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'WebserverLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'WorkerLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        }
    },
    MaxWorkers=123,
    MinWorkers=123,
    Name='string',
    NetworkConfiguration={
        'SecurityGroupIds': [
            'string',
        ],
        'SubnetIds': [
            'string',
        ]
    },
    PluginsS3ObjectVersion='string',
    PluginsS3Path='string',
    RequirementsS3ObjectVersion='string',
    RequirementsS3Path='string',
    Schedulers=123,
    SourceBucketArn='string',
    Tags={
        'string': 'string'
    },
    WebserverAccessMode='PRIVATE_ONLY'|'PUBLIC_ONLY',
    WeeklyMaintenanceWindowStart='string'
)
Parameters
  • AirflowConfigurationOptions (dict) --

    A list of key-value pairs containing the Apache Airflow configuration options you want to attach to your environment. To learn more, see Apache Airflow configuration options .

    • (string) --
      • (string) --
  • AirflowVersion (string) -- The Apache Airflow version for your environment. If no value is specified, it defaults to the latest version. Valid values: 1.10.12 , 2.0.2 , and 2.2.2 . To learn more, see Apache Airflow versions on Amazon Managed Workflows for Apache Airflow (MWAA) .
  • DagS3Path (string) --

    [REQUIRED]

    The relative path to the DAGs folder on your Amazon S3 bucket. For example, dags . To learn more, see Adding or updating DAGs .

  • EnvironmentClass (string) -- The environment class type. Valid values: mw1.small , mw1.medium , mw1.large . To learn more, see Amazon MWAA environment class .
  • ExecutionRoleArn (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) of the execution role for your environment. An execution role is an Amazon Web Services Identity and Access Management (IAM) role that grants MWAA permission to access Amazon Web Services services and resources used by your environment. For example, arn:aws:iam::123456789:role/my-execution-role . To learn more, see Amazon MWAA Execution role .

  • KmsKey (string) -- The Amazon Web Services Key Management Service (KMS) key to encrypt the data in your environment. You can use an Amazon Web Services owned CMK, or a Customer managed CMK (advanced). To learn more, see Create an Amazon MWAA environment .
  • LoggingConfiguration (dict) --

    Defines the Apache Airflow logs to send to CloudWatch Logs.

    • DagProcessingLogs (dict) --

      Publishes Airflow DAG processing logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • SchedulerLogs (dict) --

      Publishes Airflow scheduler logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • TaskLogs (dict) --

      Publishes Airflow task logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • WebserverLogs (dict) --

      Publishes Airflow web server logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • WorkerLogs (dict) --

      Publishes Airflow worker logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

  • MaxWorkers (integer) -- The maximum number of workers that you want to run in your environment. MWAA scales the number of Apache Airflow workers up to the number you specify in the MaxWorkers field. For example, 20 . When there are no more tasks running, and no more in the queue, MWAA disposes of the extra workers leaving the one worker that is included with your environment, or the number you specify in MinWorkers .
  • MinWorkers (integer) -- The minimum number of workers that you want to run in your environment. MWAA scales the number of Apache Airflow workers up to the number you specify in the MaxWorkers field. When there are no more tasks running, and no more in the queue, MWAA disposes of the extra workers leaving the worker count you specify in the MinWorkers field. For example, 2 .
  • Name (string) --

    [REQUIRED]

    The name of the Amazon MWAA environment. For example, MyMWAAEnvironment .

  • NetworkConfiguration (dict) --

    [REQUIRED]

    The VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA .

  • PluginsS3ObjectVersion (string) -- The version of the plugins.zip file on your Amazon S3 bucket. A version must be specified each time a plugins.zip file is updated. To learn more, see How S3 Versioning works .
  • PluginsS3Path (string) -- The relative path to the plugins.zip file on your Amazon S3 bucket. For example, plugins.zip . If specified, then the plugins.zip version is required. To learn more, see Installing custom plugins .
  • RequirementsS3ObjectVersion (string) -- The version of the requirements.txt file on your Amazon S3 bucket. A version must be specified each time a requirements.txt file is updated. To learn more, see How S3 Versioning works .
  • RequirementsS3Path (string) -- The relative path to the requirements.txt file on your Amazon S3 bucket. For example, requirements.txt . If specified, then a file version is required. To learn more, see Installing Python dependencies .
  • Schedulers (integer) --

    The number of Apache Airflow schedulers to run in your environment. Valid values:

    • v2 - Accepts between 2 to 5. Defaults to 2.
    • v1 - Accepts 1.
  • SourceBucketArn (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG code and supporting files are stored. For example, arn:aws:s3:::my-airflow-bucket-unique-name . To learn more, see Create an Amazon S3 bucket for Amazon MWAA .

  • Tags (dict) --

    The key-value tag pairs you want to associate to your environment. For example, "Environment": "Staging" . To learn more, see Tagging Amazon Web Services resources .

    • (string) --
      • (string) --
  • WebserverAccessMode (string) -- The Apache Airflow Web server access mode. To learn more, see Apache Airflow access modes .
  • WeeklyMaintenanceWindowStart (string) -- The day and time of the week in Coordinated Universal Time (UTC) 24-hour standard time to start weekly maintenance updates of your environment in the following format: DAY:HH:MM . For example: TUE:03:30 . You can specify a start time in 30 minute increments only.
Return type

dict

Returns

Response Syntax

{
    'Arn': 'string'
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name (ARN) returned in the response for the environment.

Exceptions

create_web_login_token(**kwargs)

Creates a web login token for the Airflow Web UI. To learn more, see Creating an Apache Airflow web login token .

See also: AWS API Documentation

Request Syntax

response = client.create_web_login_token(
    Name='string'
)
Parameters
Name (string) --

[REQUIRED]

The name of the Amazon MWAA environment. For example, MyMWAAEnvironment .

Return type
dict
Returns
Response Syntax
{
    'WebServerHostname': 'string',
    'WebToken': 'string'
}

Response Structure

  • (dict) --
    • WebServerHostname (string) --

      The Airflow web server hostname for the environment.

    • WebToken (string) --

      An Airflow web server login token.

Exceptions

delete_environment(**kwargs)

Deletes an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

See also: AWS API Documentation

Request Syntax

response = client.delete_environment(
    Name='string'
)
Parameters
Name (string) --

[REQUIRED]

The name of the Amazon MWAA environment. For example, MyMWAAEnvironment .

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

Exceptions

get_environment(**kwargs)

Describes an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

See also: AWS API Documentation

Request Syntax

response = client.get_environment(
    Name='string'
)
Parameters
Name (string) --

[REQUIRED]

The name of the Amazon MWAA environment. For example, MyMWAAEnvironment .

Return type
dict
Returns
Response Syntax
{
    'Environment': {
        'AirflowConfigurationOptions': {
            'string': 'string'
        },
        'AirflowVersion': 'string',
        'Arn': 'string',
        'CreatedAt': datetime(2015, 1, 1),
        'DagS3Path': 'string',
        'EnvironmentClass': 'string',
        'ExecutionRoleArn': 'string',
        'KmsKey': 'string',
        'LastUpdate': {
            'CreatedAt': datetime(2015, 1, 1),
            'Error': {
                'ErrorCode': 'string',
                'ErrorMessage': 'string'
            },
            'Source': 'string',
            'Status': 'SUCCESS'|'PENDING'|'FAILED'
        },
        'LoggingConfiguration': {
            'DagProcessingLogs': {
                'CloudWatchLogGroupArn': 'string',
                'Enabled': True|False,
                'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
            },
            'SchedulerLogs': {
                'CloudWatchLogGroupArn': 'string',
                'Enabled': True|False,
                'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
            },
            'TaskLogs': {
                'CloudWatchLogGroupArn': 'string',
                'Enabled': True|False,
                'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
            },
            'WebserverLogs': {
                'CloudWatchLogGroupArn': 'string',
                'Enabled': True|False,
                'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
            },
            'WorkerLogs': {
                'CloudWatchLogGroupArn': 'string',
                'Enabled': True|False,
                'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
            }
        },
        'MaxWorkers': 123,
        'MinWorkers': 123,
        'Name': 'string',
        'NetworkConfiguration': {
            'SecurityGroupIds': [
                'string',
            ],
            'SubnetIds': [
                'string',
            ]
        },
        'PluginsS3ObjectVersion': 'string',
        'PluginsS3Path': 'string',
        'RequirementsS3ObjectVersion': 'string',
        'RequirementsS3Path': 'string',
        'Schedulers': 123,
        'ServiceRoleArn': 'string',
        'SourceBucketArn': 'string',
        'Status': 'CREATING'|'CREATE_FAILED'|'AVAILABLE'|'UPDATING'|'DELETING'|'DELETED'|'UNAVAILABLE'|'UPDATE_FAILED',
        'Tags': {
            'string': 'string'
        },
        'WebserverAccessMode': 'PRIVATE_ONLY'|'PUBLIC_ONLY',
        'WebserverUrl': 'string',
        'WeeklyMaintenanceWindowStart': 'string'
    }
}

Response Structure

  • (dict) --
    • Environment (dict) --

      An object containing all available details about the environment.

      • AirflowConfigurationOptions (dict) --

        A list of key-value pairs containing the Apache Airflow configuration options attached to your environment. To learn more, see Apache Airflow configuration options .

        • (string) --
          • (string) --
      • AirflowVersion (string) --

        The Apache Airflow version on your environment. Valid values: 1.10.12 , 2.0.2 , and 2.2.2 .

      • Arn (string) --

        The Amazon Resource Name (ARN) of the Amazon MWAA environment.

      • CreatedAt (datetime) --

        The day and time the environment was created.

      • DagS3Path (string) --

        The relative path to the DAGs folder on your Amazon S3 bucket. For example, dags . To learn more, see Adding or updating DAGs .

      • EnvironmentClass (string) --

        The environment class type. Valid values: mw1.small , mw1.medium , mw1.large . To learn more, see Amazon MWAA environment class .

      • ExecutionRoleArn (string) --

        The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to access Amazon Web Services resources in your environment. For example, arn:aws:iam::123456789:role/my-execution-role . To learn more, see Amazon MWAA Execution role .

      • KmsKey (string) --

        The Amazon Web Services Key Management Service (KMS) encryption key used to encrypt the data in your environment.

      • LastUpdate (dict) --

        The status of the last update on the environment.

        • CreatedAt (datetime) --

          The day and time of the last update on the environment.

        • Error (dict) --

          The error that was encountered during the last update of the environment.

          • ErrorCode (string) --

            The error code that corresponds to the error with the last update.

          • ErrorMessage (string) --

            The error message that corresponds to the error code.

        • Source (string) --

          The source of the last update to the environment. Includes internal processes by Amazon MWAA, such as an environment maintenance update.

        • Status (string) --

          The status of the last update on the environment.

      • LoggingConfiguration (dict) --

        The Apache Airflow logs published to CloudWatch Logs.

        • DagProcessingLogs (dict) --

          The Airflow DAG processing logs published to CloudWatch Logs and the log level.

          • CloudWatchLogGroupArn (string) --

            The Amazon Resource Name (ARN) for the CloudWatch Logs group where the Apache Airflow log type (e.g. DagProcessingLogs ) is published. For example, arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:* .

          • Enabled (boolean) --

            Indicates whether the Apache Airflow log type (e.g. DagProcessingLogs ) is enabled.

          • LogLevel (string) --

            The Apache Airflow log level for the log type (e.g. DagProcessingLogs ).

        • SchedulerLogs (dict) --

          The Airflow scheduler logs published to CloudWatch Logs and the log level.

          • CloudWatchLogGroupArn (string) --

            The Amazon Resource Name (ARN) for the CloudWatch Logs group where the Apache Airflow log type (e.g. DagProcessingLogs ) is published. For example, arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:* .

          • Enabled (boolean) --

            Indicates whether the Apache Airflow log type (e.g. DagProcessingLogs ) is enabled.

          • LogLevel (string) --

            The Apache Airflow log level for the log type (e.g. DagProcessingLogs ).

        • TaskLogs (dict) --

          The Airflow task logs published to CloudWatch Logs and the log level.

          • CloudWatchLogGroupArn (string) --

            The Amazon Resource Name (ARN) for the CloudWatch Logs group where the Apache Airflow log type (e.g. DagProcessingLogs ) is published. For example, arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:* .

          • Enabled (boolean) --

            Indicates whether the Apache Airflow log type (e.g. DagProcessingLogs ) is enabled.

          • LogLevel (string) --

            The Apache Airflow log level for the log type (e.g. DagProcessingLogs ).

        • WebserverLogs (dict) --

          The Airflow web server logs published to CloudWatch Logs and the log level.

          • CloudWatchLogGroupArn (string) --

            The Amazon Resource Name (ARN) for the CloudWatch Logs group where the Apache Airflow log type (e.g. DagProcessingLogs ) is published. For example, arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:* .

          • Enabled (boolean) --

            Indicates whether the Apache Airflow log type (e.g. DagProcessingLogs ) is enabled.

          • LogLevel (string) --

            The Apache Airflow log level for the log type (e.g. DagProcessingLogs ).

        • WorkerLogs (dict) --

          The Airflow worker logs published to CloudWatch Logs and the log level.

          • CloudWatchLogGroupArn (string) --

            The Amazon Resource Name (ARN) for the CloudWatch Logs group where the Apache Airflow log type (e.g. DagProcessingLogs ) is published. For example, arn:aws:logs:us-east-1:123456789012:log-group:airflow-MyMWAAEnvironment-MwaaEnvironment-DAGProcessing:* .

          • Enabled (boolean) --

            Indicates whether the Apache Airflow log type (e.g. DagProcessingLogs ) is enabled.

          • LogLevel (string) --

            The Apache Airflow log level for the log type (e.g. DagProcessingLogs ).

      • MaxWorkers (integer) --

        The maximum number of workers that run in your environment. For example, 20 .

      • MinWorkers (integer) --

        The minimum number of workers that run in your environment. For example, 2 .

      • Name (string) --

        The name of the Amazon MWAA environment. For example, MyMWAAEnvironment .

      • NetworkConfiguration (dict) --

        Describes the VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA .

      • PluginsS3ObjectVersion (string) --

        The version of the plugins.zip file on your Amazon S3 bucket. To learn more, see Installing custom plugins .

      • PluginsS3Path (string) --

        The relative path to the plugins.zip file on your Amazon S3 bucket. For example, plugins.zip . To learn more, see Installing custom plugins .

      • RequirementsS3ObjectVersion (string) --

        The version of the requirements.txt file on your Amazon S3 bucket. To learn more, see Installing Python dependencies .

      • RequirementsS3Path (string) --

        The relative path to the requirements.txt file on your Amazon S3 bucket. For example, requirements.txt . To learn more, see Installing Python dependencies .

      • Schedulers (integer) --

        The number of Apache Airflow schedulers that run in your Amazon MWAA environment.

      • ServiceRoleArn (string) --

        The Amazon Resource Name (ARN) for the service-linked role of the environment. To learn more, see Amazon MWAA Service-linked role .

      • SourceBucketArn (string) --

        The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG code and supporting files are stored. For example, arn:aws:s3:::my-airflow-bucket-unique-name . To learn more, see Create an Amazon S3 bucket for Amazon MWAA .

      • Status (string) --

        The status of the Amazon MWAA environment. Valid values:

        • CREATING - Indicates the request to create the environment is in progress.
        • CREATE_FAILED - Indicates the request to create the environment failed, and the environment could not be created.
        • AVAILABLE - Indicates the request was successful and the environment is ready to use.
        • UPDATING - Indicates the request to update the environment is in progress.
        • DELETING - Indicates the request to delete the environment is in progress.
        • DELETED - Indicates the request to delete the environment is complete, and the environment has been deleted.
        • UNAVAILABLE - Indicates the request failed, but the environment was unable to rollback and is not in a stable state.
        • UPDATE_FAILED - Indicates the request to update the environment failed, and the environment has rolled back successfully and is ready to use.

        We recommend reviewing our troubleshooting guide for a list of common errors and their solutions. To learn more, see Amazon MWAA troubleshooting .

      • Tags (dict) --

        The key-value tag pairs associated to your environment. For example, "Environment": "Staging" . To learn more, see Tagging Amazon Web Services resources .

        • (string) --
          • (string) --
      • WebserverAccessMode (string) --

        The Apache Airflow Web server access mode. To learn more, see Apache Airflow access modes .

      • WebserverUrl (string) --

        The Apache Airflow Web server host name for the Amazon MWAA environment. To learn more, see Accessing the Apache Airflow UI .

      • WeeklyMaintenanceWindowStart (string) --

        The day and time of the week in Coordinated Universal Time (UTC) 24-hour standard time that weekly maintenance updates are scheduled. For example: TUE:03:30 .

Exceptions

get_paginator(operation_name)

Create a paginator for an operation.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Raises OperationNotPageableError
Raised if the operation is not pageable. You can use the client.can_paginate method to check if an operation is pageable.
Return type
L{botocore.paginate.Paginator}
Returns
A paginator object.
get_waiter(waiter_name)

Returns an object that can wait for some condition.

Parameters
waiter_name (str) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters.
Returns
The specified waiter object.
Return type
botocore.waiter.Waiter
list_environments(**kwargs)

Lists the Amazon Managed Workflows for Apache Airflow (MWAA) environments.

See also: AWS API Documentation

Request Syntax

response = client.list_environments(
    MaxResults=123,
    NextToken='string'
)
Parameters
  • MaxResults (integer) -- The maximum number of results to retrieve per page. For example, 5 environments per page.
  • NextToken (string) -- Retrieves the next page of the results.
Return type

dict

Returns

Response Syntax

{
    'Environments': [
        'string',
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Environments (list) --

      Returns a list of Amazon MWAA environments.

      • (string) --
    • NextToken (string) --

      Retrieves the next page of the results.

Exceptions

list_tags_for_resource(**kwargs)

Lists the key-value tag pairs associated to the Amazon Managed Workflows for Apache Airflow (MWAA) environment. For example, "Environment": "Staging" .

See also: AWS API Documentation

Request Syntax

response = client.list_tags_for_resource(
    ResourceArn='string'
)
Parameters
ResourceArn (string) --

[REQUIRED]

The Amazon Resource Name (ARN) of the Amazon MWAA environment. For example, arn:aws:airflow:us-east-1:123456789012:environment/MyMWAAEnvironment .

Return type
dict
Returns
Response Syntax
{
    'Tags': {
        'string': 'string'
    }
}

Response Structure

Exceptions

publish_metrics(**kwargs)
Internal only . Publishes environment health metrics to Amazon CloudWatch.

See also: AWS API Documentation

Request Syntax

response = client.publish_metrics(
    EnvironmentName='string',
    MetricData=[
        {
            'Dimensions': [
                {
                    'Name': 'string',
                    'Value': 'string'
                },
            ],
            'MetricName': 'string',
            'StatisticValues': {
                'Maximum': 123.0,
                'Minimum': 123.0,
                'SampleCount': 123,
                'Sum': 123.0
            },
            'Timestamp': datetime(2015, 1, 1),
            'Unit': 'Seconds'|'Microseconds'|'Milliseconds'|'Bytes'|'Kilobytes'|'Megabytes'|'Gigabytes'|'Terabytes'|'Bits'|'Kilobits'|'Megabits'|'Gigabits'|'Terabits'|'Percent'|'Count'|'Bytes/Second'|'Kilobytes/Second'|'Megabytes/Second'|'Gigabytes/Second'|'Terabytes/Second'|'Bits/Second'|'Kilobits/Second'|'Megabits/Second'|'Gigabits/Second'|'Terabits/Second'|'Count/Second'|'None',
            'Value': 123.0
        },
    ]
)
Parameters
  • EnvironmentName (string) --

    [REQUIRED]

    Internal only . The name of the environment.

  • MetricData (list) --

    [REQUIRED]

    Internal only . Publishes metrics to Amazon CloudWatch. To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon CloudWatch .
    • (dict) --
      Internal only . Collects Apache Airflow metrics. To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon CloudWatch .
      • Dimensions (list) --
        Internal only . The dimensions associated with the metric.
        • (dict) --
          Internal only . Represents the dimensions of a metric. To learn more about the metrics published to Amazon CloudWatch, see Amazon MWAA performance metrics in Amazon CloudWatch .
          • Name (string) -- [REQUIRED]
            Internal only . The name of the dimension.
          • Value (string) -- [REQUIRED]
            Internal only . The value of the dimension.
      • MetricName (string) -- [REQUIRED]
        Internal only . The name of the metric.
      • StatisticValues (dict) --
        Internal only . The statistical values for the metric.
        • Maximum (float) --
          Internal only . The maximum value of the sample set.
        • Minimum (float) --
          Internal only . The minimum value of the sample set.
        • SampleCount (integer) --
          Internal only . The number of samples used for the statistic set.
        • Sum (float) --
          Internal only . The sum of values for the sample set.
      • Timestamp (datetime) -- [REQUIRED]
        Internal only . The time the metric data was received.
      • Unit (string) --
        Internal only . The unit used to store the metric.
      • Value (float) --
        Internal only . The value for the metric.
Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

Exceptions

tag_resource(**kwargs)

Associates key-value tag pairs to your Amazon Managed Workflows for Apache Airflow (MWAA) environment.

See also: AWS API Documentation

Request Syntax

response = client.tag_resource(
    ResourceArn='string',
    Tags={
        'string': 'string'
    }
)
Parameters
  • ResourceArn (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) of the Amazon MWAA environment. For example, arn:aws:airflow:us-east-1:123456789012:environment/MyMWAAEnvironment .

  • Tags (dict) --

    [REQUIRED]

    The key-value tag pairs you want to associate to your environment. For example, "Environment": "Staging" . To learn more, see Tagging Amazon Web Services resources .

    • (string) --
      • (string) --
Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

Exceptions

untag_resource(**kwargs)

Removes key-value tag pairs associated to your Amazon Managed Workflows for Apache Airflow (MWAA) environment. For example, "Environment": "Staging" .

See also: AWS API Documentation

Request Syntax

response = client.untag_resource(
    ResourceArn='string',
    tagKeys=[
        'string',
    ]
)
Parameters
  • ResourceArn (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) of the Amazon MWAA environment. For example, arn:aws:airflow:us-east-1:123456789012:environment/MyMWAAEnvironment .

  • tagKeys (list) --

    [REQUIRED]

    The key-value tag pair you want to remove. For example, "Environment": "Staging" .

    • (string) --
Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

Exceptions

update_environment(**kwargs)

Updates an Amazon Managed Workflows for Apache Airflow (MWAA) environment.

See also: AWS API Documentation

Request Syntax

response = client.update_environment(
    AirflowConfigurationOptions={
        'string': 'string'
    },
    AirflowVersion='string',
    DagS3Path='string',
    EnvironmentClass='string',
    ExecutionRoleArn='string',
    LoggingConfiguration={
        'DagProcessingLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'SchedulerLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'TaskLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'WebserverLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        },
        'WorkerLogs': {
            'Enabled': True|False,
            'LogLevel': 'CRITICAL'|'ERROR'|'WARNING'|'INFO'|'DEBUG'
        }
    },
    MaxWorkers=123,
    MinWorkers=123,
    Name='string',
    NetworkConfiguration={
        'SecurityGroupIds': [
            'string',
        ]
    },
    PluginsS3ObjectVersion='string',
    PluginsS3Path='string',
    RequirementsS3ObjectVersion='string',
    RequirementsS3Path='string',
    Schedulers=123,
    SourceBucketArn='string',
    WebserverAccessMode='PRIVATE_ONLY'|'PUBLIC_ONLY',
    WeeklyMaintenanceWindowStart='string'
)
Parameters
  • AirflowConfigurationOptions (dict) --

    A list of key-value pairs containing the Apache Airflow configuration options you want to attach to your environment. To learn more, see Apache Airflow configuration options .

    • (string) --
      • (string) --
  • AirflowVersion (string) -- The Apache Airflow version for your environment. If no value is specified, defaults to the latest version. Valid values: 1.10.12 , 2.0.2 , and 2.2.2 .
  • DagS3Path (string) -- The relative path to the DAGs folder on your Amazon S3 bucket. For example, dags . To learn more, see Adding or updating DAGs .
  • EnvironmentClass (string) -- The environment class type. Valid values: mw1.small , mw1.medium , mw1.large . To learn more, see Amazon MWAA environment class .
  • ExecutionRoleArn (string) -- The Amazon Resource Name (ARN) of the execution role in IAM that allows MWAA to access Amazon Web Services resources in your environment. For example, arn:aws:iam::123456789:role/my-execution-role . To learn more, see Amazon MWAA Execution role .
  • LoggingConfiguration (dict) --

    The Apache Airflow log types to send to CloudWatch Logs.

    • DagProcessingLogs (dict) --

      Publishes Airflow DAG processing logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • SchedulerLogs (dict) --

      Publishes Airflow scheduler logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • TaskLogs (dict) --

      Publishes Airflow task logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • WebserverLogs (dict) --

      Publishes Airflow web server logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

    • WorkerLogs (dict) --

      Publishes Airflow worker logs to CloudWatch Logs.

      • Enabled (boolean) -- [REQUIRED]

        Indicates whether to enable the Apache Airflow log type (e.g. DagProcessingLogs ).

      • LogLevel (string) -- [REQUIRED]

        Defines the Apache Airflow log level (e.g. INFO ) to send to CloudWatch Logs.

  • MaxWorkers (integer) -- The maximum number of workers that you want to run in your environment. MWAA scales the number of Apache Airflow workers up to the number you specify in the MaxWorkers field. For example, 20 . When there are no more tasks running, and no more in the queue, MWAA disposes of the extra workers leaving the one worker that is included with your environment, or the number you specify in MinWorkers .
  • MinWorkers (integer) -- The minimum number of workers that you want to run in your environment. MWAA scales the number of Apache Airflow workers up to the number you specify in the MaxWorkers field. When there are no more tasks running, and no more in the queue, MWAA disposes of the extra workers leaving the worker count you specify in the MinWorkers field. For example, 2 .
  • Name (string) --

    [REQUIRED]

    The name of your Amazon MWAA environment. For example, MyMWAAEnvironment .

  • NetworkConfiguration (dict) --

    The VPC networking components used to secure and enable network traffic between the Amazon Web Services resources for your environment. To learn more, see About networking on Amazon MWAA .

    • SecurityGroupIds (list) -- [REQUIRED]

      A list of security group IDs. A security group must be attached to the same VPC as the subnets. To learn more, see Security in your VPC on Amazon MWAA .

      • (string) --
  • PluginsS3ObjectVersion (string) -- The version of the plugins.zip file on your Amazon S3 bucket. A version must be specified each time a plugins.zip file is updated. To learn more, see How S3 Versioning works .
  • PluginsS3Path (string) -- The relative path to the plugins.zip file on your Amazon S3 bucket. For example, plugins.zip . If specified, then the plugins.zip version is required. To learn more, see Installing custom plugins .
  • RequirementsS3ObjectVersion (string) -- The version of the requirements.txt file on your Amazon S3 bucket. A version must be specified each time a requirements.txt file is updated. To learn more, see How S3 Versioning works .
  • RequirementsS3Path (string) -- The relative path to the requirements.txt file on your Amazon S3 bucket. For example, requirements.txt . If specified, then a file version is required. To learn more, see Installing Python dependencies .
  • Schedulers (integer) -- The number of Apache Airflow schedulers to run in your Amazon MWAA environment.
  • SourceBucketArn (string) -- The Amazon Resource Name (ARN) of the Amazon S3 bucket where your DAG code and supporting files are stored. For example, arn:aws:s3:::my-airflow-bucket-unique-name . To learn more, see Create an Amazon S3 bucket for Amazon MWAA .
  • WebserverAccessMode (string) -- The Apache Airflow Web server access mode. To learn more, see Apache Airflow access modes .
  • WeeklyMaintenanceWindowStart (string) -- The day and time of the week in Coordinated Universal Time (UTC) 24-hour standard time to start weekly maintenance updates of your environment in the following format: DAY:HH:MM . For example: TUE:03:30 . You can specify a start time in 30 minute increments only.
Return type

dict

Returns

Response Syntax

{
    'Arn': 'string'
}

Response Structure

  • (dict) --

    • Arn (string) --

      The Amazon Resource Name (ARN) of the Amazon MWAA environment. For example, arn:aws:airflow:us-east-1:123456789012:environment/MyMWAAEnvironment .

Exceptions

Client Exceptions

Client exceptions are available on a client instance via the exceptions property. For more detailed instructions and examples on the exact usage of client exceptions, see the error handling user guide.

The available client exceptions are:

class MWAA.Client.exceptions.AccessDeniedException

Access to the Apache Airflow Web UI or CLI has been denied due to insufficient permissions. To learn more, see Accessing an Amazon MWAA environment .

Example

try:
  ...
except client.exceptions.AccessDeniedException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    Access to the Apache Airflow Web UI or CLI has been denied due to insufficient permissions. To learn more, see Accessing an Amazon MWAA environment .

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class MWAA.Client.exceptions.InternalServerException

InternalServerException: An internal error has occurred.

Example

try:
  ...
except client.exceptions.InternalServerException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    InternalServerException: An internal error has occurred.

    • message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class MWAA.Client.exceptions.ResourceNotFoundException

ResourceNotFoundException: The resource is not available.

Example

try:
  ...
except client.exceptions.ResourceNotFoundException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    ResourceNotFoundException: The resource is not available.

    • message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class MWAA.Client.exceptions.ValidationException

ValidationException: The provided input is not valid.

Example

try:
  ...
except client.exceptions.ValidationException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    ValidationException: The provided input is not valid.

    • message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.

Paginators

The available paginators are:

class MWAA.Paginator.ListEnvironments
paginator = client.get_paginator('list_environments')
paginate(**kwargs)

Creates an iterator that will paginate through responses from MWAA.Client.list_environments().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
PaginationConfig (dict) --

A dictionary that provides parameters to control pagination.

  • MaxItems (integer) --

    The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

  • PageSize (integer) --

    The size of each page.

  • StartingToken (string) --

    A token to specify where to start paginating. This is the NextToken from a previous response.

Return type
dict
Returns
Response Syntax
{
    'Environments': [
        'string',
    ],

}

Response Structure

  • (dict) --
    • Environments (list) --

      Returns a list of Amazon MWAA environments.

      • (string) --