How to Build Custom Lenses for the AWS Well-Architected Tool

The AWS Well-Architected (WA) Tool provides an enormous amount of value for the low, low price of free. Used to perform Well-Architected reviews that generate improvement plans and actionable data used to improve workloads and learn about best practices and design principles and patterns for architecting.

The Well-Architected Framework provides organizations with a consistent approach to evaluate architectures and implement designs that can scale over time. Built around six core pillars, this framework helps teams make informed decisions about their cloud infrastructure.

Read the post where the AWS Well-Architected Tool was introduced.

One of the often-overlooked features of the AWS WA Tool is the ability to create and import your own Custom Lenses. There are plenty of reasons to create your own Custom Lens. One might be to implement internal standards and share those with review teams. Another may be to cover regulatory or governance standards that may be required by a given workload.

Regardless of the reason, building your own JSON file following the standards outlined in the Lens format specification for the AWS WA Tool can be daunting, especially for lenses that include a lot of questions, helpful links, improvement plans, and risk rules.

GUI Tool to Make Custom Lenses

We have been developing a tool available that provides a graphic user interface (GUI) for developing your own Custom Lens. The tool is freely available FM Well-Architected Tool from the GitHub repository. As an Advanced Tier AWS Partner, our own certified solutions architects have experienced insight into what goes into Well-Architected and what goes into developing a Custom Lens for the AWS WA Tool.

List of Custom Lenses for the AWS Well-Architected Tool

The tool is authored in the popular FileMaker application, which you may already have. If you have FileMaker, you can download and use the provided file, also for the low, low price of absolutely free. No knowledge of FileMaker is required to use the tool to create your own custom lenses; however, if you do, you can make your own modifications to the file or integrate further should you choose to.

Knowledge of FileMaker enables you to make your own modifications to the file.

There is a function to add the default pillars to your custom lens, but those are optional. You can create your own defined pillars as is necessary for given workloads, with up to 10 pillars supported in a custom lens.

This tool gives an easy to manage way to develop a custom lens, providing a way to manage questions with their given options, improvement plans, helpful resources, and risk rules. Creating a useful custom lens benefits greatly from having all resources and plans completed as much as possible and well thought out. It is a challenge to keep all those details straight when editing raw JSON, where this tool makes it easy to organize and develop.

The AWS WA Tool makes it easy to organanize and develop your Custom Lens

Each question also requires risk rules to be defined. These can be confusing to write and put in order, and this tool helps with that process. The risk rule condition builder allows you to define the level of risk, sort order, and the rule to evaluate. Choices are shown depending on how many choice options there are shown for the current question. Hovering over the choice id will show the choice, and clicking the choice will insert it in the condition, making it easier to build the condition.

Hovering over the Choice ID to show the choice

When finished authoring the condition and exiting the dialog, the condition is evaluated as a Boolean to test for validity. Again, this GUI makes it easier to create and manage risk rules, which are vital to creating a useful and effective custom lens.

Export JSON

Once complete, the tool will generate a JSON file with the click of a button. The resulting file can be saved locally and then imported into the AWS WA Tool. Imported Custom Lenses can then be applied to well architected reviews along with any other lenses that may be applied to a workload there.

Following along with the intuitive user interface makes the task of crafting your own Custom Lens for the WA tool much easier.

Takeaways

We are hoping to generate interest and continued improvements to this tool, encouraging more people to explore and create their own custom lenses. The Well-Architected Framework and Tool are incredible resources, and being able to apply your own custom lens extends the value and functionality of this incredible resource.  We always welcome any feedback and would like to see this effort continue to grow and evolve. Being able to have a tool to assist in the development of Custom Lenses is the type of thing we feel improves all development.

References

Lens format specification in AWS WA Tool:
https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-format-specification.html

FM Well-Architected Tool from the GitHub repository:
https://github.com/SoliantMike/FM-Well-Architected-Tool

1 thought on “How to Build Custom Lenses for the AWS Well-Architected Tool”

Leave a Comment

Your email address will not be published. Required fields are marked *

GET OUR INSIGHTS DELIVERED

Scroll to Top