Table: aws_wellarchitected_milestone - Query AWS Well-Architected Tool Milestones using SQL
The AWS Well-Architected Tool Milestone is a resource within the AWS Well-Architected Tool service. It allows you to review and improve your workloads following AWS architectural best practices. The Milestones feature enables you to track changes to your workload over time, documenting architectural decisions and the reasons for those decisions.
Table Usage Guide
The aws_wellarchitected_milestone
table in Steampipe provides you with information about the milestones of a workload within AWS Well-Architected Tool. This table allows you, as a DevOps engineer, architect, or developer, to query milestone-specific details, including the milestone name, date, and associated workload information. You can utilize this table to gather insights on milestones, such as the milestone history of a workload, changes made in each milestone, and more. The schema outlines the various attributes of the milestone for you, including the milestone number, record ID, workload ID, and associated tags.
Examples
Basic Info
Explore which milestones have been recorded in different regions for AWS workloads to better manage and optimize your cloud architecture. This can help in understanding the progress and geographical distribution of your workloads.
select workload_id, milestone_name, milestone_number, recorded_at, regionfrom aws_wellarchitected_milestone;
select workload_id, milestone_name, milestone_number, recorded_at, regionfrom aws_wellarchitected_milestone;
Get the latest milestone for each workload
Determine the most recent progress point for each workload in your AWS Well-Architected framework. This can help you track your workloads' evolution and understand where each one stands in terms of its development cycle.
with latest_milestones as ( select max(milestone_number) as milestone_number, workload_id from aws_wellarchitected_milestone group by workload_id)select m.workload_id, m.milestone_name, m.milestone_number as latest_milestone_number, m.recorded_at, m.regionfrom aws_wellarchitected_milestone m, latest_milestones lwhere m.milestone_number = l.milestone_number and m.workload_id = l.workload_id;
with latest_milestones as ( select max(milestone_number) as milestone_number, workload_id from aws_wellarchitected_milestone group by workload_id)select m.workload_id, m.milestone_name, m.milestone_number as latest_milestone_number, m.recorded_at, m.regionfrom aws_wellarchitected_milestone m join latest_milestones l on m.milestone_number = l.milestone_number and m.workload_id = l.workload_id;
Get workload details associated with each milestone
Identify instances where specific workloads are associated with certain milestones within the AWS Well-Architected framework. This is useful for understanding the distribution of workloads across different milestones, providing insights into project progress and management.
select m.milestone_name, m.milestone_number, w.workload_name, w.workload_id, w.environment, w.industry, w.ownerfrom aws_wellarchitected_workload w, aws_wellarchitected_milestone mwhere w.workload_id = m.workload_id;
select m.milestone_name, m.milestone_number, w.workload_name, w.workload_id, w.environment, w.industry, w.ownerfrom aws_wellarchitected_workload w, aws_wellarchitected_milestone mwhere w.workload_id = m.workload_id;
Get workload details for a particular milestone
This example demonstrates how to pinpoint specific details related to a certain workload for a particular milestone. This can be beneficial in project management scenarios, where one may need to assess the environment, industry, and ownership aspects of a workload at a specific stage in the project lifecycle.
select m.milestone_name, m.milestone_number, w.workload_name, w.workload_id, w.environment, w.industry, w.ownerfrom aws_wellarchitected_workload w, aws_wellarchitected_milestone mwhere w.workload_id = m.workload_id and milestone_number = 1 and w.workload_id = 'abcdec851ac1d8d9d5b9938615da016ce';
select m.milestone_name, m.milestone_number, w.workload_name, w.workload_id, w.environment, w.industry, w.ownerfrom aws_wellarchitected_workload w, aws_wellarchitected_milestone mwhere w.workload_id = m.workload_id and milestone_number = 1 and w.workload_id = 'abcdec851ac1d8d9d5b9938615da016ce';
Query examples
Schema for aws_wellarchitected_milestone
Name | Type | Operators | Description |
---|---|---|---|
_ctx | jsonb | Steampipe context in JSON form. | |
account_id | text | =, !=, ~~, ~~*, !~~, !~~* | The AWS Account ID in which the resource is located. |
milestone_name | text | The name of the milestone in a workload. Milestone names must be unique within a workload. | |
milestone_number | bigint | = | The milestone number. A workload can have a maximum of 100 milestones. |
partition | text | The AWS partition in which the resource is located (aws, aws-cn, or aws-us-gov). | |
recorded_at | timestamp with time zone | The date and time recorded. | |
region | text | The AWS Region in which the resource is located. | |
sp_connection_name | text | =, !=, ~~, ~~*, !~~, !~~* | Steampipe connection name. |
sp_ctx | jsonb | Steampipe context in JSON form. | |
workload | jsonb | A workload return object. | |
workload_id | text | = | The ID assigned to the workload. |
Export
This table is available as a standalone Exporter CLI. Steampipe exporters are stand-alone binaries that allow you to extract data using Steampipe plugins without a database.
You can download the tarball for your platform from the Releases page, but it is simplest to install them with the steampipe_export_installer.sh
script:
/bin/sh -c "$(curl -fsSL https://steampipe.io/install/export.sh)" -- aws
You can pass the configuration to the command with the --config
argument:
steampipe_export_aws --config '<your_config>' aws_wellarchitected_milestone