Under the issue description, I can see that the visual variance was 0.37%.Ĭlicking the Screenshots tab and then the image brings up the comparison between the baseline and the screenshot taken on that canary run.įigure 9: Baseline vs canary run with failure Selecting one issue lets me drill down into the details. I can see that some of the canary runs are failing and issues are being detected. I will increase the group capacity to add 2 more instances and then observe the canary. It is the only instance currently in the group. The EC2 instance is part of an Amazon EC2 Auto Scaling group behind an Application Load Balancer. The application I am using is running on Amazon Elastic Compute Cloud (EC2) and returns the instance ID, Availability Zone, and other text, along with an image. No differences are identified here since I have not modified my application. Clicking the Screenshots tab and clicking the image there brings up the baseline screenshot, the screenshot from the latest run, and the visual variance percentage.The Availability tab provides details of issues in the last 24 hours, provides a graph of Passed and Failed canary runs, and other options such as Steps, Screenshots, Logs, and HAR files which allow you to drill down into specific canary runs.You can see a summary of canary runs, such as the status of the latest run, issues detected in the last 24 hours, success % in the last 7 days, and the status of the canary.Click the canary you created from the list of canaries to view details of canary runs.The screenshot captured on the first run of the canary becomes the baseline and all subsequent screenshots are compared against this in order to detect variance. Once the canary has been created, you will automatically be returned to the canaries dashboard.įigure 3: Canary create in progress Viewing canary runsĪfter the canary has been created, it makes requests to the application or endpoint URL at the frequency that was specified and then captures responses received. CloudWatch Synthetics may take up to a minute to provision the resources needed for the canary runs. I have used default values for all of these fields in this example. Refer to the CloudWatch Synthetics documentation on creating a canary to learn more about these options. Configure other options such as Schedule, Data Retention and Storage, Access permissions, and more.Based on the blueprint selected and the configuration specified, CloudWatch Synthetics automatically generates the script that will be used for canary runs.Also specify the threshold for visual variance between screenshots of your application. In the Canary builder section, provide a Name for the canary and specify the Application or endpoint URL of your application.Select the Use a blueprint radio button and select the Visual monitoring.Navigate to the CloudWatch console and click Synthetics Canaries under Application monitoring.I will walk through creating a canary using the visual monitoring blueprint. However, the blueprints available will help you get started quickly, and they are available for various use-cases. Creating canaries with the visual monitoring blueprintīased on your needs, you can create and run canaries with your own scripts via CloudWatch Synthetics. This post will walk through how the visual monitoring blueprint for Amazon CloudWatch Synthetics can be utilized to monitor your applications for visual defects. Utilizing visual monitoring lets you detect visual defects in your application by comparing screenshots with an established baseline, adjust thresholds for variance, ignore selected page sections, and more. With the launch of visual monitoring support by Amazon CloudWatch Synthetics, you can measure visual differences in your application and identify defects before they impact your users. Furthermore, these scripts might not be able to identify visual defects that could affect end-user experience. However, these custom scripts increase your operational overhead in developing and maintaining them. You can create scripts or canaries that monitor things such as availability, page load times, broken links, etc. Synthetic monitoring lets you continually verify your customers’ experience by following the same routes and actions as your customers. This best practice can be extended by adding synthetic monitoring to your observability strategy. Monitoring application endpoints is a reliable way to measure availability.
0 Comments
Leave a Reply. |