Category: Software Composition Analysis

Understanding the target architecture of the DevSecOps pipeline – Implementing DevSecOps with AWS

Posted on


A pipeline definition in AWS CodePipeline consists of at least two stages, and corresponding actions within each stage. We covered the constructs of AWS CodePipeline in detail in Chapter 5, Rolling Out a CI/CD Pipeline. Typical stages that come to our mind when we think of the entire life cycle of software delivery are source, […]

Understanding the security responsibilities in the cloud – Implementing DevSecOps with AWS

Posted on


The first thing we need to understand is where exactly the cloud provider’s responsibilities end, and yours, as a customer, begin. These responsibilities can further vary depending on the type of cloud service tier ( IaaS, PaaS, or SaaS) you are using. We discussed all three tiers in detail in Chapter 2, Choosing the Right […]

Instrumenting application metrics with Amazon Managed Prometheus – Enabling the Observability of Your Workloads

Posted on


As discussed previously, instantiating the Prometheus client inside our Flask application additionally enabled a /metrics endpoint that exposed application metrics to scrapers – in our case, the OTEL collector. You can also look at these raw metrics by hitting the application load balancer URL, with the /metrics suffix at the end. In my case, accessing […]

Insights and operational visibility – Enabling the Observability of Your Workloads

Posted on


This category of offeringsis a huge differentiator when it comes to providing ready- made solutions that extract data from multiple sources and deriving insights out of those to provide actionable next steps to the user. Container insights When working with AWS services in the container landscape, you can use CloudWatch container insights to summarize metrics […]

Amazon CloudWatch – Enabling the Observability of Your Workloads

Posted on


CloudWatch is a centralized platform that allows customers to collect, monitor, and visualize their application logs, metrics, and X-Ray traces, all in a single dashboard. It is invaluable in providing a unified view of operational health for all the workloads the customer is managing. There are three main areas of features that CloudWatch offers. Infrastructure […]

Adding an EFS filesystem and mapping it to the task definition – Running Containers in AWS

Posted on


Considering the scope of our test application, we will keep the EFS configurations simple and just declare fileSystemId, which is mandatory. Since EFS is accessed over the network, we also need to ensure that appropriate security group configurations are in place before this filesystem can be mounted inside the database container: We allow incoming traffic […]

Adopt time series pattern analysis – Enabling the Observability of Your Workloads

Posted on


For some metrics, it is more relevant to observe the time series pattern instead of scalar values. This can boost proactive analysis when your operation team notices that the API error count spikes up every 10 minutes, but never crosses the threshold your alarms are set at. You can also plot related time series data […]

Deploying our CDK stack in an AWS account – Running Containers in AWS

Posted on


Finally, let’s trigger a deployment of the CDK stack in one of our AWS accounts to see the application in action. We will start by securing a new session for our Cloud9 IDE. Once we are inside the CDK project folder, chapter-7/chapter-7-cdk/, we can trigger an installation of NPM modules, followed by the cdk synth […]

Ensure that all components of your system emit events – Enabling the Observability of Your Workloads

Posted on


Be it logs, metrics, or traces, in the ideal case, there should be no component in your system that acts like a black box. Every service, be it managed or unmanaged, should log events in your central observability platform. This is also an important criterion when selecting a particular service from cloud providers. It always […]

Extending the code base for better observability – Enabling the Observability of Your Workloads

Posted on


As you can imagine, in addition to adding CDK constructs to our stack, we also need to make a few changes to our Flask-based web application so that it starts offering metrics and insights to tools such as Prometheus. Let’s start with the application-level changes first. Modifying the Flask application code There are two main […]