Everyone knows the buzzwords: Automation, Cloud native, DevOps, and NoOps. Yet industry surveys like State of DevOps Report, DORA DevOps Maturity Report and Dynatrace’s Autonomous Cloud Management (ACM) Survey), confirm that most companies are still falling short of the highest performers by magnitudes. Too many enterprises are slowed by manual software deployments and operational tasks. They don’t have the right data to make better decisions, faster – or are still trapped in silos where biz, dev, and ops are working in isolation instead of collaborating on measurable goals.
In a recent collaboration between Atlassian and Dynatrace, we explored how automation could build resiliency into cloud pipelines, increase the quality of software performance in production, and lower operational risk. We believe companies don’t need to trade-off between speed and safety: automation can change the equation.
To show how easy it is to start breaking down the communication silos and automate performance verifications, below explores two ways for you to integrate Dynatrace into your continuous delivery pipelines using Bitbucket pipes.
Below is a representative Bitbucket build and release pipeline that includes typical tasks along with the addition of the Dynatrace push event and SLO/SLI keptn performance quality gates.
Dynatrace information events enable Bitbucket pipelines, to provide additional details for Dynatrace. This allows Dynatrace to correlate things like a successful deployment with other things like an uptick in resource consumption, a drop in performance, or an outright crash.
Information events speed up triage. They provide context about what’s happening within the application and to the application via the continuous delivery pipeline. People can more quickly understand what’s happening when they understand the dimensions of production events, load testing, and deployment. With integration between Dynatrace and Bitbucket Pipelines can see the system, job, and team responsible.
Below we can see a deployment event for a “front-end” service, linking right back to the specific Bitbucket pipeline that performed the deployment.
These same events inform the Dynatrace AI engine, Davis, and if related the root-cause, they are brought into the Dynatrace problem card. Below we can see both the information (#1) and deployment events (#2) for a service that was the root cause to a problem the Dynatrace AI engine, Davis, determined.
Just by pasting a few key pieces of information, as shown below, the Dynatrace push event Bitbucket pipe will send an event to Dynatrace with the initiator and hyperlinks. This data provided will help teams dramatically reduce the time to identify the right owners of problems, in turn, reducing mean time to resolution (MTTR).
Enterprise operations are complex with millions of lines of code, hundreds of connected services, and hybrid or multi-cloud environments. One break can mean serious implications for people, business, and the brand. To avoid this, you need to understand how your applications are performing in real-time, to help clarify the impact for the end user, system components, and the root-cause of issues. Automatic scoring and grading of builds, artifacts, test results, feature flags, canary deployments, and even full-blown releases must be part of every modern progressive delivery process.
Dynatrace is leading an open source project called Keptn that defines a quality gate specification based on Service Level Objectives (SLO) and Service Level Indicators (SLI) and a quality gate service for execution. This Keptn service automatically scores and grades builds, artifacts, test results, feature flags, canary deployments, and even full-blown releases within the delivery process. Bad code or configuration is identified and stopped before users see the impact. The picture below shows the concept of build-over-build evaluation for example SLIs and SLOs.
A Keptn quality gate acts more like a test than monitoring, in the sense that it returns a pass/fail result as opposed to raising alarms by evaluating monitoring and architectural changes against explicit definition of service level objectives and build-to-build runs. By adding a Bitbucket pipe “wrapper” to the Keptn quality gate service, the pipeline will return a pass/fail result against an explicit definition of service level objectives. By pulling SLO reporting into the continuous delivery pipeline, software teams can make production changes at the pace of the Internet while increasing the safety of those changes.
To make it easier for any team to take advantage of these workflows, we have published these two pipes as "official" Bitbucket pipes. These make it easy for any team to leverage Dynatrace, in a powerful compliment to Altassian Bitbucket pipelines.
Dynatrace automatically layers AI-powered monitoring that far exceeds alerts on individual metrics. It treats monitoring configuration as code enabling making data consumable as a self-service for development, quality engineers, architects, DevOps, SRE, ops, and business teams. Dynatrace has many capabilities and out-of-the-box features that support performance engineering and test. Here is a shortlist to get you started.
Rob Jahn
Sr. Technical Partner Manager @ Dynatrace
Dynatrace
Boston, MA
2 comments