Amazon CloudWatch Evidently

2022/02/17 - Amazon CloudWatch Evidently - 2 updated api methods

Changes  Add support for filtering list of experiments and launches by status

ListExperiments (updated) Link ¶
Changes (request)
{'status': 'CREATED | UPDATING | RUNNING | COMPLETED | CANCELLED'}

Returns configuration details about all the experiments in the specified project.

See also: AWS API Documentation

Request Syntax

client.list_experiments(
    maxResults=123,
    nextToken='string',
    project='string',
    status='CREATED'|'UPDATING'|'RUNNING'|'COMPLETED'|'CANCELLED'
)
type maxResults:

integer

param maxResults:

The maximum number of results to include in the response.

type nextToken:

string

param nextToken:

The token to use when requesting the next set of results. You received this token from a previous ListExperiments operation.

type project:

string

param project:

[REQUIRED]

The name or ARN of the project to return the experiment list from.

type status:

string

param status:

Use this optional parameter to limit the returned results to only the experiments with the status that you specify here.

rtype:

dict

returns:

Response Syntax

{
    'experiments': [
        {
            'arn': 'string',
            'createdTime': datetime(2015, 1, 1),
            'description': 'string',
            'execution': {
                'endedTime': datetime(2015, 1, 1),
                'startedTime': datetime(2015, 1, 1)
            },
            'lastUpdatedTime': datetime(2015, 1, 1),
            'metricGoals': [
                {
                    'desiredChange': 'INCREASE'|'DECREASE',
                    'metricDefinition': {
                        'entityIdKey': 'string',
                        'eventPattern': 'string',
                        'name': 'string',
                        'unitLabel': 'string',
                        'valueKey': 'string'
                    }
                },
            ],
            'name': 'string',
            'onlineAbDefinition': {
                'controlTreatmentName': 'string',
                'treatmentWeights': {
                    'string': 123
                }
            },
            'project': 'string',
            'randomizationSalt': 'string',
            'samplingRate': 123,
            'schedule': {
                'analysisCompleteTime': datetime(2015, 1, 1)
            },
            'status': 'CREATED'|'UPDATING'|'RUNNING'|'COMPLETED'|'CANCELLED',
            'statusReason': 'string',
            'tags': {
                'string': 'string'
            },
            'treatments': [
                {
                    'description': 'string',
                    'featureVariations': {
                        'string': 'string'
                    },
                    'name': 'string'
                },
            ],
            'type': 'aws.evidently.onlineab'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • experiments (list) --

      An array of structures that contain the configuration details of the experiments in the specified project.

      • (dict) --

        A structure containing the configuration details of an experiment.

        • arn (string) --

          The ARN of the experiment.

        • createdTime (datetime) --

          The date and time that the experiment is first created.

        • description (string) --

          A description of the experiment.

        • execution (dict) --

          A structure that contains the date and time that the experiment started and ended.

          • endedTime (datetime) --

            The date and time that the experiment ended.

          • startedTime (datetime) --

            The date and time that the experiment started.

        • lastUpdatedTime (datetime) --

          The date and time that the experiment was most recently updated.

        • metricGoals (list) --

          An array of structures that defines the metrics used for the experiment, and whether a higher or lower value for each metric is the goal.

          • (dict) --

            A structure that tells Evidently whether higher or lower values are desired for a metric that is used in an experiment.

            • desiredChange (string) --

              INCREASE means that a variation with a higher number for this metric is performing better.

              DECREASE means that a variation with a lower number for this metric is performing better.

            • metricDefinition (dict) --

              A structure that contains details about the metric.

              • entityIdKey (string) --

                The entity, such as a user or session, that does an action that causes a metric value to be recorded.

              • eventPattern (string) --

                The EventBridge event pattern that defines how the metric is recorded.

                For more information about EventBridge event patterns, see Amazon EventBridge event patterns.

              • name (string) --

                The name of the metric.

              • unitLabel (string) --

                The label for the units that the metric is measuring.

              • valueKey (string) --

                The value that is tracked to produce the metric.

        • name (string) --

          The name of the experiment.

        • onlineAbDefinition (dict) --

          A structure that contains the configuration of which variation to use as the "control" version. The "control" version is used for comparison with other variations. This structure also specifies how much experiment traffic is allocated to each variation.

          • controlTreatmentName (string) --

            The name of the variation that is the default variation that the other variations are compared to.

          • treatmentWeights (dict) --

            A set of key-value pairs. The keys are variation names, and the values are the portion of experiment traffic to be assigned to that variation. The traffic portion is specified in thousandths of a percent, so 20,000 for a variation would allocate 20% of the experiment traffic to that variation.

            • (string) --

              • (integer) --

        • project (string) --

          The name or ARN of the project that contains this experiment.

        • randomizationSalt (string) --

          This value is used when Evidently assigns a particular user session to the experiment. It helps create a randomization ID to determine which variation the user session is served. This randomization ID is a combination of the entity ID and randomizationSalt.

        • samplingRate (integer) --

          In thousandths of a percent, the amount of the available audience that is allocated to this experiment. The available audience is the total audience minus the audience that you have allocated to overrides or current launches of this feature.

          This is represented in thousandths of a percent, so a value of 10,000 is 10% of the available audience.

        • schedule (dict) --

          A structure that contains the time and date that Evidently completed the analysis of the experiment.

          • analysisCompleteTime (datetime) --

            The time and date that Evidently completed the analysis of the experiment.

        • status (string) --

          The current state of the experiment.

        • statusReason (string) --

          If the experiment was stopped, this is the string that was entered by the person who stopped the experiment, to explain why it was stopped.

        • tags (dict) --

          The list of tag keys and values associated with this experiment.

          • (string) --

            • (string) --

        • treatments (list) --

          An array of structures that describe the configuration of each feature variation used in the experiment.

          • (dict) --

            A structure that defines one treatment in an experiment. A treatment is a variation of the feature that you are including in the experiment.

            • description (string) --

              The description of the treatment.

            • featureVariations (dict) --

              The feature variation used for this treatment. This is a key-value pair. The key is the feature name, and the value is the variation name.

              • (string) --

                • (string) --

            • name (string) --

              The name of this treatment.

        • type (string) --

          The type of this experiment. Currently, this value must be aws.experiment.onlineab.

    • nextToken (string) --

      The token to use in a subsequent ListExperiments operation to return the next set of results.

ListLaunches (updated) Link ¶
Changes (request)
{'status': 'CREATED | UPDATING | RUNNING | COMPLETED | CANCELLED'}

Returns configuration details about all the launches in the specified project.

See also: AWS API Documentation

Request Syntax

client.list_launches(
    maxResults=123,
    nextToken='string',
    project='string',
    status='CREATED'|'UPDATING'|'RUNNING'|'COMPLETED'|'CANCELLED'
)
type maxResults:

integer

param maxResults:

The maximum number of results to include in the response.

type nextToken:

string

param nextToken:

The token to use when requesting the next set of results. You received this token from a previous ListLaunches operation.

type project:

string

param project:

[REQUIRED]

The name or ARN of the project to return the launch list from.

type status:

string

param status:

Use this optional parameter to limit the returned results to only the launches with the status that you specify here.

rtype:

dict

returns:

Response Syntax

{
    'launches': [
        {
            'arn': 'string',
            'createdTime': datetime(2015, 1, 1),
            'description': 'string',
            'execution': {
                'endedTime': datetime(2015, 1, 1),
                'startedTime': datetime(2015, 1, 1)
            },
            'groups': [
                {
                    'description': 'string',
                    'featureVariations': {
                        'string': 'string'
                    },
                    'name': 'string'
                },
            ],
            'lastUpdatedTime': datetime(2015, 1, 1),
            'metricMonitors': [
                {
                    'metricDefinition': {
                        'entityIdKey': 'string',
                        'eventPattern': 'string',
                        'name': 'string',
                        'unitLabel': 'string',
                        'valueKey': 'string'
                    }
                },
            ],
            'name': 'string',
            'project': 'string',
            'randomizationSalt': 'string',
            'scheduledSplitsDefinition': {
                'steps': [
                    {
                        'groupWeights': {
                            'string': 123
                        },
                        'startTime': datetime(2015, 1, 1)
                    },
                ]
            },
            'status': 'CREATED'|'UPDATING'|'RUNNING'|'COMPLETED'|'CANCELLED',
            'statusReason': 'string',
            'tags': {
                'string': 'string'
            },
            'type': 'aws.evidently.splits'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • launches (list) --

      An array of structures that contain the configuration details of the launches in the specified project.

      • (dict) --

        This structure contains the configuration details of one Evidently launch.

        • arn (string) --

          The ARN of the launch.

        • createdTime (datetime) --

          The date and time that the launch is created.

        • description (string) --

          The description of the launch.

        • execution (dict) --

          A structure that contains information about the start and end times of the launch.

          • endedTime (datetime) --

            The date and time that the launch ended.

          • startedTime (datetime) --

            The date and time that the launch started.

        • groups (list) --

          An array of structures that define the feature variations that are being used in the launch.

          • (dict) --

            A structure that defines one launch group in a launch. A launch group is a variation of the feature that you are including in the launch.

            • description (string) --

              A description of the launch group.

            • featureVariations (dict) --

              The feature variation for this launch group. This is a key-value pair.

              • (string) --

                • (string) --

            • name (string) --

              The name of the launch group.

        • lastUpdatedTime (datetime) --

          The date and time that the launch was most recently updated.

        • metricMonitors (list) --

          An array of structures that define the metrics that are being used to monitor the launch performance.

          • (dict) --

            A structure that defines a metric to be used to monitor performance of the variations during a launch.

            • metricDefinition (dict) --

              A structure that defines the metric.

              • entityIdKey (string) --

                The entity, such as a user or session, that does an action that causes a metric value to be recorded.

              • eventPattern (string) --

                The EventBridge event pattern that defines how the metric is recorded.

                For more information about EventBridge event patterns, see Amazon EventBridge event patterns.

              • name (string) --

                The name of the metric.

              • unitLabel (string) --

                The label for the units that the metric is measuring.

              • valueKey (string) --

                The value that is tracked to produce the metric.

        • name (string) --

          The name of the launch.

        • project (string) --

          The name or ARN of the project that contains the launch.

        • randomizationSalt (string) --

          This value is used when Evidently assigns a particular user session to the launch, to help create a randomization ID to determine which variation the user session is served. This randomization ID is a combination of the entity ID and randomizationSalt.

        • scheduledSplitsDefinition (dict) --

          An array of structures that define the traffic allocation percentages among the feature variations during each step of the launch.

          • steps (list) --

            An array of structures that define the traffic allocation percentages among the feature variations during each step of the launch. This also defines the start time of each step.

            • (dict) --

              This structure defines the traffic allocation percentages among the feature variations during one step of a launch, and the start time of that step.

              • groupWeights (dict) --

                The traffic allocation percentages among the feature variations during one step of a launch. This is a set of key-value pairs. The keys are variation names. The values represent the percentage of traffic to allocate to that variation during this step.

                • (string) --

                  • (integer) --

              • startTime (datetime) --

                The date and time that this step of the launch starts.

        • status (string) --

          The current state of the launch.

        • statusReason (string) --

          If the launch was stopped, this is the string that was entered by the person who stopped the launch, to explain why it was stopped.

        • tags (dict) --

          The list of tag keys and values associated with this launch.

          • (string) --

            • (string) --

        • type (string) --

          The type of launch.

    • nextToken (string) --

      The token to use in a subsequent ListLaunches operation to return the next set of results.