AWS Well-Architected Tool

2023/03/30 - AWS Well-Architected Tool - 1 new api methods

Changes  AWS Well-Architected SDK now supports getting consolidated report metrics and generating a consolidated report PDF.

GetConsolidatedReport (new) Link ΒΆ

Get a consolidated report of your workloads.

You can optionally choose to include workloads that have been shared with you.

See also: AWS API Documentation

Request Syntax

client.get_consolidated_report(
    Format='PDF'|'JSON',
    IncludeSharedResources=True|False,
    NextToken='string',
    MaxResults=123
)
type Format

string

param Format

[REQUIRED]

The format of the consolidated report.

For PDF , Base64String is returned. For JSON , Metrics is returned.

type IncludeSharedResources

boolean

param IncludeSharedResources

Set to true to have shared resources included in the report.

type NextToken

string

param NextToken

The token to use to retrieve the next set of results.

type MaxResults

integer

param MaxResults

The maximum number of results to return for this request.

rtype

dict

returns

Response Syntax

{
    'Metrics': [
        {
            'MetricType': 'WORKLOAD',
            'RiskCounts': {
                'string': 123
            },
            'WorkloadId': 'string',
            'WorkloadName': 'string',
            'WorkloadArn': 'string',
            'UpdatedAt': datetime(2015, 1, 1),
            'Lenses': [
                {
                    'LensArn': 'string',
                    'Pillars': [
                        {
                            'PillarId': 'string',
                            'RiskCounts': {
                                'string': 123
                            },
                            'Questions': [
                                {
                                    'QuestionId': 'string',
                                    'Risk': 'UNANSWERED'|'HIGH'|'MEDIUM'|'NONE'|'NOT_APPLICABLE',
                                    'BestPractices': [
                                        {
                                            'ChoiceId': 'string',
                                            'ChoiceTitle': 'string'
                                        },
                                    ]
                                },
                            ]
                        },
                    ],
                    'RiskCounts': {
                        'string': 123
                    }
                },
            ],
            'LensesAppliedCount': 123
        },
    ],
    'NextToken': 'string',
    'Base64String': 'string'
}

Response Structure

  • (dict) --

    • Metrics (list) --

      The metrics that make up the consolidated report.

      Only returned when JSON format is requested.

      • (dict) --

        A metric that contributes to the consolidated report.

        • MetricType (string) --

          The metric type of a metric in the consolidated report. Currently only WORKLOAD metric types are supported.

        • RiskCounts (dict) --

          A map from risk names to the count of how many questions have that rating.

          • (string) --

            The risk for a given workload, lens review, pillar, or question.

            • (integer) --

              A non-negative integer that denotes how many.

        • WorkloadId (string) --

          The ID assigned to the workload. This ID is unique within an Amazon Web Services Region.

        • WorkloadName (string) --

          The name of the workload.

          The name must be unique within an account within an Amazon Web Services Region. Spaces and capitalization are ignored when checking for uniqueness.

        • WorkloadArn (string) --

          The ARN for the workload.

        • UpdatedAt (datetime) --

          The date and time recorded.

        • Lenses (list) --

          The metrics for the lenses in the workload.

          • (dict) --

            A metric for a particular lens in a workload.

            • LensArn (string) --

              The lens ARN.

            • Pillars (list) --

              The metrics for the pillars in a lens.

              • (dict) --

                A metric for a particular pillar in a lens.

                • PillarId (string) --

                  The ID used to identify a pillar, for example, security .

                  A pillar is identified by its PillarReviewSummary$PillarId.

                • RiskCounts (dict) --

                  A map from risk names to the count of how many questions have that rating.

                  • (string) --

                    The risk for a given workload, lens review, pillar, or question.

                    • (integer) --

                      A non-negative integer that denotes how many.

                • Questions (list) --

                  The questions that have been identified as risks in the pillar.

                  • (dict) --

                    A metric for a particular question in the pillar.

                    • QuestionId (string) --

                      The ID of the question.

                    • Risk (string) --

                      The risk for a given workload, lens review, pillar, or question.

                    • BestPractices (list) --

                      The best practices, or choices, that have been identified as contributing to risk in a question.

                      • (dict) --

                        A best practice, or question choice, that has been identified as a risk in this question.

                        • ChoiceId (string) --

                          The ID of a choice.

                        • ChoiceTitle (string) --

                          The title of a choice.

            • RiskCounts (dict) --

              A map from risk names to the count of how many questions have that rating.

              • (string) --

                The risk for a given workload, lens review, pillar, or question.

                • (integer) --

                  A non-negative integer that denotes how many.

        • LensesAppliedCount (integer) --

          The total number of lenses applied to the workload.

    • NextToken (string) --

      The token to use to retrieve the next set of results.

    • Base64String (string) --

      The Base64-encoded string representation of a lens review report.

      This data can be used to create a PDF file.

      Only returned by GetConsolidatedReport when PDF format is requested.