<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: MerlynMShelley</title>
    <description>The latest articles on DEV Community by MerlynMShelley (@merlynmshelley).</description>
    <link>https://dev.to/merlynmshelley</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F241573%2F6b48eecf-69dd-4ac3-a9e4-b85fa79f649f.jpg</url>
      <title>DEV Community: MerlynMShelley</title>
      <link>https://dev.to/merlynmshelley</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/merlynmshelley"/>
    <language>en</language>
    <item>
      <title>How Squadcast Benefits On-call Engineers - Part 1</title>
      <dc:creator>MerlynMShelley</dc:creator>
      <pubDate>Tue, 24 Aug 2021 12:20:32 +0000</pubDate>
      <link>https://dev.to/squadcast/how-squadcast-benefits-on-call-engineers-part-1-3953</link>
      <guid>https://dev.to/squadcast/how-squadcast-benefits-on-call-engineers-part-1-3953</guid>
      <description>&lt;p&gt;&lt;em&gt;It is difficult to stay completely reliable in an always-on world. So it's very important to choose the right Incident Management solution that can solve your problems. In this blog, we have highlighted the benefits of Squadcast and why you should adopt it.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“Being on-call sucks!"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Often incident response teams use this phrase when talking about their on-call experiences. Despite using best practices for managing infrastructure, incidents do occur from time to time.&lt;/p&gt;

&lt;p&gt;In order to avoid delays in responding to incidents and prevent being overwhelmed by on-call notifications, you should find a solution that helps in resolving incidents efficiently. Squadcast is one such platform that has helped numerous teams respond to critical incidents quicker than ever before.&lt;/p&gt;

&lt;p&gt;In fact, Squadcast is packed with a whole lot of easy to use features that help engineers make informed decisions. Now to start with, let’s understand the key benefits that help in alleviating the stress of being on-call.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Benefits of Squadcast&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;1. Swift Incident Response&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;For instance, if your monitoring tool sends alerts that you cannot understand at first glance, then your recovery process will be delayed. This would result in increased MTTR and MTTA. With Squadcast, you can add context to the incidents, making it easier to understand and take action. Tagging and Routing are such features that will help you achieve this.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;a. Incident Tagging&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Responding to incidents becomes much easier when the engineers have enough context regarding the incident. This can be achieved by tagging incidents with relevant information like priority, severity, or alert type within the incoming alert.&lt;/p&gt;

&lt;p&gt;This &lt;a href="https://support.squadcast.com/docs/event-tagging#prerequisites" rel="noopener noreferrer"&gt;rule-based, auto-tagging system&lt;/a&gt; can be established by defining rules on payloads associated with incidents. These tags also help you search for specific incidents and filter a group of incidents on the analytics and incident list pages.&lt;/p&gt;

&lt;p&gt;You have the option to tag each incident with a personalized tagging expression as shown in the screenshot below. As soon as an incident is triggered, tags can be automatically attached to it. It also provides insight into the severity levels of incidents. That way, incidents can be better understood.&lt;/p&gt;

&lt;p&gt;For example, from the below screenshot, with Datadog's payload, you can define rules in Squadcast to categorize an incident as a high or low priority. This allows you to respond to alerts appropriately.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e159095a7ef3f5f44c3e5_5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e159095a7ef3f5f44c3e5_5.png"&gt;&lt;/a&gt;&lt;/p&gt;
Incident Tagging



&lt;h4&gt;
  
  
  &lt;strong&gt;b. Incident Routing&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Usually incident management solutions offer routing as a basic feature that helps teams to direct alerts internally. But in Squadcast, you can customize alert routing based on the rules you define and you will be able to personalize your notification mechanism as well. That way you won't be bothered with irrelevant alerts in your communications channels.&lt;/p&gt;

&lt;p&gt;For instance, once the incidents are tagged, you can filter and sort them based on their priority or severity. Then you can route relevant incidents to the right users for resolution. In this case, tagging can make it easier to route low priority incidents to Level-1 support teams and higher priority incidents to Level-2 support teams.&lt;/p&gt;

&lt;p&gt;This helps in &lt;a href="https://support.squadcast.com/docs/alert-routing" rel="noopener noreferrer"&gt;routing&lt;/a&gt; the right alerts to the right responder(s) based on the tags they contain. In this way, it helps greatly in reducing the MTTR of an incident.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e0fa268e2dea3d64a2306_1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e0fa268e2dea3d64a2306_1.png"&gt;&lt;/a&gt;&lt;/p&gt;
Incident Routing



&lt;h4&gt;
  
  
  &lt;strong&gt;2. Reduce Alert Noise, Alert Fatigue, and Operational Toil Drastically&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://support.squadcast.com/docs/getting-started" rel="noopener noreferrer"&gt;Alert noise&lt;/a&gt; is a condition when you're alerted for both critical and non-critical incidents. This is dangerous because it can lead to Alert fatigue and prevents you from responding to critical incidents. With Squadcast you can eliminate this problem completely.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This blog will explain &lt;a href="https://www.squadcast.com/blog/optimizing-your-alerts-to-reduce-alert-noise" rel="noopener noreferrer"&gt;how to optimize your alerts with Squadcast&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;a. Incident deduplication (Event Aggregation)&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;In the case of Alert noise, you can &lt;a href="https://www.squadcast.com/effective-on-call-and-incident-response" rel="noopener noreferrer"&gt;deduplicate&lt;/a&gt; events arising from the same source or &lt;a href="https://support.squadcast.com/docs/de-duplication-rules#prerequisites" rel="noopener noreferrer"&gt;multiple alert sources&lt;/a&gt; (dependent services). As you can see from the below screenshot, by enabling the checkbox at the bottom, you can select other dependent services for the deduplication rule. Now the same incident arising from different alert sources will be grouped into one.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e0fd034ac223bd731e7a1_2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e0fd034ac223bd731e7a1_2.png"&gt;&lt;/a&gt;&lt;/p&gt;
Deduplication Rules



&lt;p&gt;When the first alert for such an incident is triggered, the subsequent alerts for the same incident will be grouped to the original one. But it will be in a &lt;em&gt;&lt;strong&gt;‘triggered’&lt;/strong&gt;&lt;/em&gt; state across the incident dashboard.&lt;/p&gt;

&lt;p&gt;Additionally, you can turn on alert suppression, which will automatically suppress alerts that are not critical. This means you won’t be able to take any action on the alerts since they're in the &lt;em&gt;&lt;strong&gt;‘suppressed’&lt;/strong&gt;&lt;/em&gt; state on the incident dashboard. You need to be more careful in defining suppression rules because you will no longer be able to act on them.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e0ff82c74400dcbbd246b_3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e0ff82c74400dcbbd246b_3.png"&gt;&lt;/a&gt;&lt;/p&gt;
Alert Suppression



&lt;h4&gt;
  
  
  &lt;strong&gt;b. Minimize Operational Toil&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Toil is a repetitive set of tasks that makes you feel bored, burned out, and exhausted. In case of incident management, it reduces productivity, affects employee morale, and increases attrition. &lt;em&gt;Click here to read more about &lt;a href="https://www.squadcast.com/blog/reduce-toil-with-better-alerting-systems" rel="noopener noreferrer"&gt;how to reduce toil&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Squadcast can significantly reduce an SRE's burden with features such as automatic suppression, deduplication, rule-based routing, escalation policies, and on-call schedules. We have also come up with this unique &lt;a href="https://www.squadcast.com/blog/on-call-onboarding-checklist" rel="noopener noreferrer"&gt;onboarding checklist&lt;/a&gt; that will assist you in getting organized for the on-call process. These personalized options would relieve you from tiring on-call chores.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;3. Customize On-Call Operations at Ease&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;On-call coordination is key to resolving an incident.&lt;/p&gt;

&lt;p&gt;Every member in the incident management team must be informed of on-call schedules. Each team member must know the name and phone number of those who are on call at any given time.&lt;/p&gt;

&lt;p&gt;Likewise, you need to know who will be on call and at what time. And, if you do not acknowledge an incident on time, it should be escalated to the next on-call engineer.&lt;/p&gt;

&lt;p&gt;If this process is not set up properly, it will lead to increased MTTA and MTTR. That’s why on-call schedules and escalation plans play an important role in a smooth incident response process. Squadcast offers 12 layers of personalized escalation policies to alert on-call engineers. That way you will not miss important alerts, and your engineers will not be dismayed either.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;a. On-call Escalation Policy&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;After an incident is triggered, the alerts will be routed based on the defined escalation policy. If a user is not available at that time, the escalation requests are forwarded to the next available user in the escalation policy. This is also called on-call scheduling or on-call rotation.&lt;/p&gt;

&lt;p&gt;You will be notified via text messages, emails, and phone calls with our unique 12-layer setup of &lt;a href="https://support.squadcast.com/docs/escalation-policies" rel="noopener noreferrer"&gt;On-call Escalations&lt;/a&gt;. That is, through the platform, the on-call manager can define 12 levels of escalation rules to notify the appropriate user group about an incident. The on-call escalation policy is repeated three times until an incident is acknowledged.&lt;/p&gt;

&lt;p&gt;If you are an on-call engineer, you can personalize the notification settings according to your preferences. You can &lt;a href="https://support.squadcast.com/docs/reassign-an-escalation-policy-for-an-existing-incident" rel="noopener noreferrer"&gt;reassign an incident&lt;/a&gt; to another user group when necessary. Plus, you can easily create and investigate incidents within Slack.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e15aee961e331116488b3_6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e15aee961e331116488b3_6.png"&gt;&lt;/a&gt;&lt;/p&gt;
Reassigning an Incident



&lt;h4&gt;
  
  
  &lt;strong&gt;b. Incident Notes&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The platform also comes with an ‘Incident Notes’ feature that allows you to notify a user (on-call engineer) by mentioning their name with ‘@’ in the incident notes panel. So, it fosters ownership of incidents within the team.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;c. Incident Postmortem&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The platform has incident postmortem templates where you can edit and add details about the incident management processes at ease. While analyzing incidents, postmortems play a crucial role in performing &lt;a href="https://www.squadcast.com/blog/overview-of-incident-lifecycle-in-sre" rel="noopener noreferrer"&gt;root cause analysis&lt;/a&gt;. It helps the team with pre-defined templates to document various findings.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e105b9189a657ac670bd7_4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c9200c49b1194323aff7304%2F611e105b9189a657ac670bd7_4.png"&gt;&lt;/a&gt;&lt;/p&gt;
Incident Postmortem Template



&lt;p&gt;In the above screenshot, you'll see how to edit a predefined incident postmortem template, and the options to update or download it in PDF/MD format. This increases transparency within an organization and all employees can stay informed about the progress of the incident and the various processes that are taken to resolve them.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Final Thoughts&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Squadcast, with its customizable features such as contextual tagging, routing, suppression and more, makes it easy for incident management teams to manage and resolve incidents quickly.&lt;/p&gt;

&lt;p&gt;By using this intuitive platform, customers have experienced a significant reduction in their MTTR and MTTA. It eliminates alert noise, fatigue, and operational toil, thereby increasing the productivity of the team as a whole.&lt;/p&gt;

&lt;p&gt;These are just a handful of benefits discussed in this article. We have a lot of features stacking up in the &lt;a href="https://trello.com/b/rvAFiRnU/squadcast-roadmap" rel="noopener noreferrer"&gt;product roadmap&lt;/a&gt; that we'll be sharing with you in the upcoming blogs. So stay tuned! Get started with &lt;a href="https://app.squadcast.com/register" rel="noopener noreferrer"&gt;Squadcast for free&lt;/a&gt; and tell us what you think.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="https://www.squadcast.com/" rel="noopener noreferrer"&gt;Squadcast&lt;/a&gt; is an incident management tool that’s purpose-built for SRE. Your team can get rid of unwanted alerts, receive relevant notifications, work in collaboration using the virtual incident war rooms, and use automated tools like runbooks to eliminate toil.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://app.squadcast.com/register" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c51758c58939b30a6fd3d73%2F60d2ec8e2d9d85d17141958f_footer_banner-2000x761.png"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>sre</category>
      <category>oncall</category>
      <category>incidentresponse</category>
      <category>incidentmanagement</category>
    </item>
    <item>
      <title>Five Ways Developers Can Help SREs</title>
      <dc:creator>MerlynMShelley</dc:creator>
      <pubDate>Tue, 17 Aug 2021 13:04:50 +0000</pubDate>
      <link>https://dev.to/squadcast/five-ways-developers-can-help-sres-4nop</link>
      <guid>https://dev.to/squadcast/five-ways-developers-can-help-sres-4nop</guid>
      <description>&lt;p&gt;&lt;em&gt;Reliability is a team game. More the collaboration between Developers and SREs, greater will be the success of the product. In this blog, we have listed down the five best practices that developers can adopt, to make the SRE's life easier.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It is not easy to be a site reliability engineer. Monitoring system infrastructure and aligning them with the key reliability metrics is quite a daunting task. Whereas, a software engineer's job is to deliver high-quality software.&lt;/p&gt;

&lt;p&gt;Relationships between software engineers and site reliability engineers can sometimes be tricky. To begin with, developers are generally assigned to write code that goes into production. Then, there are Site Reliability Engineers (SREs) who are responsible for improving the product's reliability and performance.&lt;/p&gt;

&lt;p&gt;Ideally, the goal of any world-scale distributed system (product or service) is to operate in harmony from day one. To achieve this, developers and the operations team must team up to create a reliable system. This will help developers build solutions in a faster and transparent way so that SREs can manage applications effectively.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Here's What Developers Can Do To Help SREs&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Developers and SREs are two sides of the same coin within a tech company. Developers work towards delivering successful software, and SREs ensure the software's uptime and overall health.&lt;/p&gt;

&lt;p&gt;The development of software is a continuous process where its health and performance characteristics must be monitored after delivery. SRE practices ensure product reliability. Site reliability engineers are in charge of making sure the software functions as expected.&lt;/p&gt;

&lt;p&gt;SREs and software engineers must work with a wide spectrum of information like response time and MTTR from virtualized deep layers of cloud platforms. In short, developers can help SREs by making the source code easy to understand, access, and modify to optimize the system’s performance.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Following are five ways developers can help SREs&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;1. Scaling The Platform With The Concept Of A 12-factor App Method&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;A &lt;a href="https://12factor.net/" rel="noopener noreferrer"&gt;12-factor app&lt;/a&gt; is a new way to build modern web applications. By default, it is meant to be stateless and immutable. That means it can be deployed in any cloud environment like Heroku, where we don't entirely control the infrastructure.&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;twelve factors&lt;/strong&gt; of this scalable approach to building applications are &lt;em&gt;codebase, dependencies, config, backing services, (Build, release, run), processes, port binding, concurrency, disposability, Dev/prod parity, logs, and admin processes&lt;/em&gt;. And these are suited to polyglot programming.&lt;/p&gt;

&lt;p&gt;The goal of the project is runtime independence. In other words, you will be able to run applications in any environment, without facing any difficulty operating in the cloud. It determines an app's packaging, deployment, and run-time.&lt;/p&gt;

&lt;p&gt;It is an effective way to establish a resilient architecture that minimizes failure points and runs on a local or cloud back-end. The &lt;strong&gt;benefits&lt;/strong&gt; of this approach are safe for deployment, highly available, auto-scalable, horizontally scalable, stateless, location transparent, and dynamically configurable.&lt;/p&gt;

&lt;p&gt;It is also used for structuring an application or system so that it is portable, scalable, and stable when deployed to any cloud provider. So, the workload of an SRE is reduced to a larger extent.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;2. Sharing Performance Testing Data Insights&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;As a software testing practice, performance testing focuses on assessing the software functions under various complex conditions.&lt;/p&gt;

&lt;p&gt;SREs need to know the metrics of performance-tested applications in order to understand the thresholds. It enables them to understand what needs to be done to make the application work as intended.&lt;/p&gt;

&lt;p&gt;For example in the context of backend applications, developers use tools like &lt;a href="https://gatling.io/2020/02/gatling-frontline-1-10-1-is-out/?utm_term=gatling%20com&amp;amp;utm_campaign=Brand&amp;amp;utm_source=adwords&amp;amp;utm_medium=ppc&amp;amp;hsa_acc=6274855159&amp;amp;hsa_cam=10875823399&amp;amp;hsa_grp=110701435327&amp;amp;hsa_ad=531093532980&amp;amp;hsa_src=g&amp;amp;hsa_tgt=kwd-300977118145&amp;amp;hsa_kw=gatling%20com&amp;amp;hsa_mt=b&amp;amp;hsa_net=adwords&amp;amp;hsa_ver=3&amp;amp;gclid=CjwKCAjwoZWHBhBgEiwAiMN66W-DpAAPzGHxOKJXKBGS1ZfZWiGrq_eYGf_HorVIhwQ52_uWb5Xu9BoCNtYQAvD_BwE" rel="noopener noreferrer"&gt;Gatling&lt;/a&gt; to load test the applications to measure how much load the application could take. This data should be shared with the SRE team as well.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;There are some slight overlaps between the 12-factor app method and the following approaches. However, each is effective at creating synergies between development and operations.&lt;/em&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;3. Significance of Documentation and Configuration files&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The success of SRE teams depends on documentation. They should be provided with well-defined bodies of documentation associated with various SRE functions. They need to know which documentation is most relevant for troubleshooting an outage.&lt;/p&gt;

&lt;p&gt;Next, config files allow you to change your application configuration without modifying the source code. They store website-specific information like passwords, login details, database connection strings(URLs), username, password, API addresses of dependent/auxiliary services, application-specific parameters, etc. They help you track and control various data related to your web applications.&lt;/p&gt;

&lt;p&gt;Configuration variables in code could act like parameters that could change based on external factors, for example, the URL of another web service or database, or queue. Likewise, if we are configuring the “token” module, the config file will tell us what token types are available and how to use each one of them.&lt;/p&gt;

&lt;p&gt;It should also tell us about the default values of that token, whether it has any dependencies on another token or not etc. Also, if there are any special cases defined for that particular token, they should be documented in the same configuration file. During incident response operations, SREs use configuration files to restore system infrastructure.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;4. AIOps Supported System Admin Functionalities&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The site reliability engineer (SRE) needs to reboot and deploy servers constantly, even when there is no downtime. This will require quite a bit of effort when an update is deployed in production.&lt;/p&gt;

&lt;p&gt;In this case, the SRE team should be notified of system changes via the configuration files or documentation accessible through the admin dashboard. This can also be done by developing custom Artificial Intelligence for IT Operations (AIOps) solutions.&lt;/p&gt;

&lt;p&gt;This process helps SREs in maintaining and operating data centers using AI-powered methods and tools. For example, these AI-based tools can help in root cause analysis for remediation, automated anomaly detection, optimization, and the automatic initiation of self-stabilising activities.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;5. Increasing Observability Of The System&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Cloud-native systems are becoming increasingly complex, making observability paramount. Making your system easily observable means knowing what is causing problems with it or how systems interact with it. Observability maximizes visibility over the infrastructure.&lt;/p&gt;

&lt;p&gt;Observability tools have a great deal of value in the world of DevOps and SRE. These give more data about logs, metrics, error rates, traces, and even network interface information. Whereas, application performance monitoring (APM) is a means to track your application's code performance. These tools help you locate and resolve issues with the performance of your applications.&lt;/p&gt;

&lt;p&gt;Developers can help SREs by enabling &lt;a href="https://digital-library.theiet.org/content/journals/10.1049/ip-cdt_20050194" rel="noopener noreferrer"&gt;debug support&lt;/a&gt; here. This can be done by allowing the applications to expose relevant metrics like request count, details about successful/failed requests, etc., in the case of a web service. This way, observability helps the SRE determine how the application is performing in production and if it needs to be scaled up/out.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Final Thoughts&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;With these best practices, developers can make the SRE's life easy and simple. Tell us how these five ways helped an SRE organize their daily chores and enable them to be more productive.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="https://www.squadcast.com/" rel="noopener noreferrer"&gt;Squadcast&lt;/a&gt; is an incident management tool that’s purpose-built for SRE. Your team can get rid of unwanted alerts, receive relevant notifications, work in collaboration using the virtual incident war rooms, and use automated tools like runbooks to eliminate toil.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://app.squadcast.com/register/" rel="noopener noreferrer"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ljesGLP7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c51758c58939b30a6fd3d73/60d2ec8e2d9d85d17141958f_footer_banner-2000x761.png" width="800" height="304"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>sre</category>
      <category>bestpractices</category>
    </item>
    <item>
      <title>Top SRE Toolchain Used By Site Reliability Engineers</title>
      <dc:creator>MerlynMShelley</dc:creator>
      <pubDate>Thu, 20 May 2021 12:36:05 +0000</pubDate>
      <link>https://dev.to/squadcast/top-sre-toolchain-used-by-site-reliability-engineers-44kp</link>
      <guid>https://dev.to/squadcast/top-sre-toolchain-used-by-site-reliability-engineers-44kp</guid>
      <description>&lt;p&gt;&lt;em&gt;We have compiled a list of the most popular and sought out tools (some you may have heard of) that SREs need in their toolkit - at every phase of a production system to keep up with SRE best practices&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Site reliability engineering (SRE) practices help organizations by ensuring smooth functioning of their deliverables with utmost reliability and resilience.&lt;/p&gt;

&lt;p&gt;These can be achieved by a set of well-defined tools that are deployed at every phase of the production system to keep up with SRE best practices.&lt;/p&gt;

&lt;p&gt;This blog identifies and lists the chain of top SRE tools and their significance towards ensuring reliability of the architecture.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;How to Standardize SRE Practices with SRE Toolchain&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Every organization would have its own order of practice in framing its infrastructure. So depending on how they build their architecture, the standardization of SRE tools would come into the picture. For example, a social networking architecture would focus on establishing high-level support facilities and easily scalable infrastructure. Hence they would rely on tools that center around cloud-native applications, DevOps, and CI/CD automation. Whereas on the other hand, an e-commerce platform would rely on application, data storage, and DevOps tools for building and maintaining its architecture in accordance with SRE practices.&lt;/p&gt;

&lt;p&gt;Thus, by comparing and considering the basic requirements of every architecture, we have arrived at a set of SRE tool stack that can potentially help standardize SRE best practices.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;SRE Toolchain and Top Tools Used by SREs in Each Category&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;1. Containers for Microservices and Orchestration Tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Microservices are the kind of infrastructure that splits up the whole architecture (monolithic) into multiple individual logical functions or services. Containers play a vital role in gathering all the requirements (code, libraries, dependencies, binaries, etc.,) of microservices in one place to execute all their capabilities.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.docker.com/" rel="noopener noreferrer"&gt;Docker&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Used as a comprehensive end-to-end platform that accelerates the process of portable application development both cloud and desktop&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="http://kubernetes.io/" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Generally, referred to as K8s used for automating deployment, scaling, and delivery lifecycle management of containerized applications&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://docs.docker.com/swarm/" rel="noopener noreferrer"&gt;Swarm&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Natively manages a cluster of Docker containers and deploys the application services&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="http://mesos.apache.org/" rel="noopener noreferrer"&gt;Apache Mesos&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;This distributed systems kernel supports linear scalability, native support for Docker containers and facilitates two-level scheduling by running native cloud and legacy applications at the same time&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://podman.io/" rel="noopener noreferrer"&gt;Podman&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;A basic container engine used for the development, management, and running of OCI containers across LINUX systems&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;2. Source Control Tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Source code is a vital element of cloud infrastructure. This main code has to be tracked, managed, and updated at once when any change is detected. This can be done with source control tools. These tools help the development team to embrace the changes in codebases. And ensures the source code is always updated for the effective functioning of the systems and infrastructure.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://git-scm.com/" rel="noopener noreferrer"&gt;Git&lt;/a&gt; is a widely-used open source and free distributed version control system. Git is generally adopted by organization of all sizes for updating their source code and storing them across GitHub.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;3. Continuous integration / Continuous Deployment (CI/CD) Tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Continuous integration is the automatic testing practice of every change that has been affected on the source code. And continuous deployment follows continuous integration by pushing the tested codebase to the production environment. Here are few tools that can help in executing these functions,&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.jenkins.io/" rel="noopener noreferrer"&gt;Jenkins&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;CI/CD Automation platform that supports automation across development, deployment, and testing of any project.&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://circleci.com/" rel="noopener noreferrer"&gt;CircleCI&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;A CI/CD platform that helps in automating the application development process either across the platform’s cloud or organization’s own infrastructure&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://circleci.com/pricing/" rel="noopener noreferrer"&gt;Free &amp;amp; other pricing options available&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://about.gitlab.com/" rel="noopener noreferrer"&gt;GitLab&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;It is an open core model of open-source DevOps platform that helps with collaboration, gaining visibility, and enhances development velocity&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://about.gitlab.com/pricing/" rel="noopener noreferrer"&gt;Free &amp;amp; other pricing options available&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.gocd.org/" rel="noopener noreferrer"&gt;GoCD&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Free open-source CI/CD server that helps with easy modeling and visualization of complex workflows&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://semaphoreci.com/" rel="noopener noreferrer"&gt;Semaphore&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;A CI/CD platform that assures enormous productivity by avoiding bottleneck points across the engineering team. It also facilitates Enterprise level CI/CD pipeline as a service&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://semaphoreci.com/pricing" rel="noopener noreferrer"&gt;Free, Pay-as-you-go, Enterprise Cloud plans are Available&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;4. Data Storage tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Data&lt;/strong&gt; is key ingredient to every digital business. It also forms an important asset that helps businesses in easing the decision-making process. As SRE metrics are framed upon system performance data, this has to be carefully stored in the best-suited and easy to access interface. Below are a set of tools that could greatly help in data storage and processing.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.mysql.com/" rel="noopener noreferrer"&gt;MySQL&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Fully managed database service that helps deploy cloud-native applications. It comes with a highly efficient analytics engine to accelerate the overall database services&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.postgresql.org/" rel="noopener noreferrer"&gt;PostgreSQL&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Open-source object-relational database service that has powerful features to support the cloud applications’ performance factors&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.mongodb.com/2" rel="noopener noreferrer"&gt;MongoDB&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Document orientated database service that supports JSON for modern cloud applications with features like horizontal scaling, automatic failover, and the ability to assign particular data to a location&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://hadoop.apache.org/" rel="noopener noreferrer"&gt;Apache Hadoop&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Open-source software library and framework that helps in processing large sets of distributed data across the network&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://hive.apache.org/" rel="noopener noreferrer"&gt;Apache Hive&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Data warehouse software that facilitates reading, writing, sharing, and managing huge sets of distributed data through SQL.&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;5. Configuration Management Tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Configuration management is the process of tracking and controlling all the changes (configuration, identification, and implementation) that are made to a software product. These tools detect any unauthorized changes and control the implementation of changes across software solutions.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.ansible.com/" rel="noopener noreferrer"&gt;Ansible&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Simple configuration management and application deployment tool that helps in enabling infrastructure as code (IaC) architecture&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.redhat.com/en/technologies/management/ansible/try-it" rel="noopener noreferrer"&gt;60-day trial, customized pricing available&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.chef.io/" rel="noopener noreferrer"&gt;Chef&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Streamlines configuration management tasks across cloud platforms to automatically provision new machines&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.chef.io/pricing" rel="noopener noreferrer"&gt;Flexible pricing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://puppet.com/" rel="noopener noreferrer"&gt;Puppet&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Model-driven software configuration management tool used to manage the entire lifecycle of IT infrastructure&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://puppet.com/contact-sales/" rel="noopener noreferrer"&gt;Customized pricing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.vmware.com/in/support/acquisitions/saltstack.html" rel="noopener noreferrer"&gt;Saltstack&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Event-driven IT automation software used for infrastructure configuration, provisioning, and management&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.vmware.com/in/company/contact_sales.html" rel="noopener noreferrer"&gt;Offers personalized pricing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;6. Monitoring and Observability Tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Monitoring and observability are two main functions in maintaining system health. SREs work closely with these monitoring tools. The prime role of site reliability engineers is to develop custom queries across alert managers that are present inside the monitoring tools’ architecture. These functions check whether all the system functionalities are working as expected. And helps to generate alerts when there is any deviation in system behavior.&lt;/p&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Metrics Collection Tools&lt;/strong&gt;
&lt;/h5&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://prometheus.io/" rel="noopener noreferrer"&gt;Prometheus&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;An open-source monitoring tool that provides a dimensional (time-series) data model of all system performance characteristics&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://cloud.google.com/products/operations?utm_source=google&amp;amp;utm_medium=cpc&amp;amp;utm_campaign=japac-IN-all-en-dr-bkws-all-all-trial-e-dr-1009882&amp;amp;utm_content=text-ad-none-none-DEV_c-CRE_248024455623-ADGP_Hybrid%20%7C%20BKWS%20-%20EXA%20%7C%20Txt%20~%20Hybrid%20and%20Multi-cloud%20~%20Operations%20(formerly%20Stackdriver)_stackdriver-KWID_43700029827958802-kwd-316511609920&amp;amp;userloc_1007768-network_g&amp;amp;utm_term=KW_stackdriver&amp;amp;ds_rl=1264446&amp;amp;gclid=Cj0KCQjw4ImEBhDFARIsAGOTMj9T3rSjyozkljFjsy4ZXPPpRYVjYYLZYcK-8u8Fk0J50S68Ctv3poUaAqBqEALw_wcB&amp;amp;gclsrc=aw.ds" rel="noopener noreferrer"&gt;Google Cloud Operations (Stackdriver)&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Helps in monitoring your infrastructure and troubleshoots applications by indicating errors with notifications&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://cloud.google.com/products/calculator" rel="noopener noreferrer"&gt;Pricing calculator&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.influxdata.com/" rel="noopener noreferrer"&gt;InfluxDB&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Supports the development team to build and monitor time-stamped data series across the infrastructure&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.influxdata.com/influxdb-pricing/" rel="noopener noreferrer"&gt;Free version &amp;amp; customized pricing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://sensuapp.org/" rel="noopener noreferrer"&gt;Sensu Go&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;An observability tool that helps in establishing monitoring as code across all cloud architecture&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="http://sensu.io/pricing" rel="noopener noreferrer"&gt;Free plan, custom pricing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Log Aggregation Tools&lt;/strong&gt;
&lt;/h5&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.fluentd.org/" rel="noopener noreferrer"&gt;Fluentd&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Open-source data collector built exclusively for the unified logging layer across an architecture&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://sentry.io/" rel="noopener noreferrer"&gt;Sentry&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Collects all the system data from various endpoints and optimizes the performances of the source code&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://sentry.io/pricing/" rel="noopener noreferrer"&gt;Pricing structure&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.elastic.co/products/logstash" rel="noopener noreferrer"&gt;Logstash&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Open server-side data processing pipeline that helps the development team to ingest various data sources into a single preferred stash&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.elastic.co/pricing/" rel="noopener noreferrer"&gt;Advanced features with pricing structure&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Distributed Tracing Tools&lt;/strong&gt;
&lt;/h5&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://opentelemetry.io/" rel="noopener noreferrer"&gt;OpenTelemetry&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Open-source observability framework for monitoring cloud-native software applications with telemetry data. OpenTracing and OpenConsensus have merged to form a standardized OpenTelemetry tool&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.jaegertracing.io/" rel="noopener noreferrer"&gt;Jager&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Open-source end-to-end distributed tracing platform that helps in monitoring and troubleshooting issues across a distributed network&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h5&gt;
  
  
  &lt;strong&gt;Application Performance Monitoring Tools&lt;/strong&gt;
&lt;/h5&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.appdynamics.com/" rel="noopener noreferrer"&gt;Appdynamics&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Full-stack observability platform that provides real-time data insights for system performance and helps in driving business growth and productivity&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.appdynamics.com/pricing" rel="noopener noreferrer"&gt;Pricing structure&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://newrelic.com/?utm_campaign=Brand-IND&amp;amp;utm_medium=cpc&amp;amp;utm_source=google&amp;amp;utm_content=HP&amp;amp;fiscal_year=FY21&amp;amp;quarter=Q2&amp;amp;gtm=DEV&amp;amp;program=P2P&amp;amp;ad_type=TXT&amp;amp;geo=APJ&amp;amp;utm_term=new%20relic&amp;amp;utm_device=c&amp;amp;_bt=479164151029&amp;amp;_bm=e&amp;amp;_bn=g&amp;amp;gclid=Cj0KCQjw9_mDBhCGARIsAN3PaFOUQOA8suwu9XENeCENmcJx-zbYi2VMMB7k_saHAuGx5A0--RTSnc8aAtrqEALw_wcB" rel="noopener noreferrer"&gt;New Relic&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Simple observability tool that helps development teams in instrumenting, analyzing, troubleshooting, and optimizing their complete tech stack&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://newrelic.com/pricing" rel="noopener noreferrer"&gt;Pricing structure&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.dynatrace.com/?utm_source=google&amp;amp;utm_medium=cpc&amp;amp;utm_term=dynatrace&amp;amp;utm_campaign=ww-brand&amp;amp;utm_content=none&amp;amp;gclid=Cj0KCQjw4ImEBhDFARIsAGOTMj-6O0qHVa3JktdJTtUWNX05aug6T7r6lzwZfT63ANzJamvNfu0Dia0aAgTGEALw_wcB&amp;amp;gclsrc=aw.ds" rel="noopener noreferrer"&gt;Dynatrace&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;This tool has got observability, security features, intelligent solutions, and automation features in a single platform that helps developers to monitor the performance of the system effectively&lt;/td&gt;
&lt;td&gt;N&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.dynatrace.com/pricing/" rel="noopener noreferrer"&gt;Custom Pricing options available&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;7. Dashboarding Tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Dashboarding tools help SREs to scrutinize issues more efficiently by displaying all the necessary data (Key Performance Indicators and Critical data points) in one screen. These tools facilitate pictorial or graphical representation of system data, thereby giving precise information about the system's health.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://grafana.com/" rel="noopener noreferrer"&gt;Grafana&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Provides an integrated solution to metrics and logs for composing observability characteristics in the form of graphical representation&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://grafana.com/auth/sign-up/create-user?pg=prod-cloud&amp;amp;plcmt=hero-btn1" rel="noopener noreferrer"&gt;Free forever &amp;amp; Customized pricing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.stashboard.org/" rel="noopener noreferrer"&gt;Stashboard&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Status based dashboard solution for APIs and service-based software solutions&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;NA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://redash.io/" rel="noopener noreferrer"&gt;Redash&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Helps to connect and create queries on data sources to visualize all the data in the form of a dashboard for easy collaboration across various teams&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://redash.io/pricing/" rel="noopener noreferrer"&gt;30 day trial &amp;amp; other pricing options available&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.metabase.com/" rel="noopener noreferrer"&gt;Metabase&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;An open-source tool for self-hosted platforms that enables them to connect data points for visualization purposes. Whereas, Metabase Cloud platform has exclusive advanced features like single sign-on and embedded analytics&lt;/td&gt;
&lt;td&gt;Y&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.metabase.com/start/" rel="noopener noreferrer"&gt;Free Open Source Version, Advanced features available with pricing&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;8. Incident Management / On-call Alerting System Tools&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;An incident management tool is an essential part while managing system architecture. These tools sit on top of all the monitoring/error tracking/logging applications and direct all the incoming system alerts to specific internal services to initiate the recovery processes.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tools&lt;/th&gt;
&lt;th&gt;Key Features&lt;/th&gt;
&lt;th&gt;Open Source (Y/N)&lt;/th&gt;
&lt;th&gt;Pricing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Pagerduty&lt;/td&gt;
&lt;td&gt;An incident management tool with a real-time operations platform that ensures fewer outages&lt;/td&gt;
&lt;td&gt;N&lt;/td&gt;
&lt;td&gt;14-day free trial with pricing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Opsgenie&lt;/td&gt;
&lt;td&gt;A modern incident management platform that ensures always-on digital services&lt;/td&gt;
&lt;td&gt;N&lt;/td&gt;
&lt;td&gt;14-day free trial with pricing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.squadcast.com/" rel="noopener noreferrer"&gt;Squadcast&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Cloud-based incident management platform built around Site reliability engineering (SRE) best practices that helps to improve incident resolution metrics and ultimately, the reliability of systems&lt;/td&gt;
&lt;td&gt;N&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://www.squadcast.com/pricing" rel="noopener noreferrer"&gt;Freemium&lt;/a&gt; version, advanced features with flexible &lt;a href="https://www.squadcast.com/pricing" rel="noopener noreferrer"&gt;pricing&lt;/a&gt; options&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;While choosing the right tools when building your SRE toolchain, there’s no “one-size-fits-all” set of tools.The tools SREs use at any given time will depend on where an organization is in their SRE journey. Organizations at the beginning or initial stages of their SRE journey will tend to use more specialised operations tools as opposed to more mature organizations. That said, SRE teams will experiment and adapt the right tools as they continue on their journey to seek new, efficient ways to bring more reliability to everything they do.&lt;/p&gt;

&lt;p&gt;Regardless of the kind of platform you are running, we are sure that the tools listed here will be useful to you. On similar lines, for a more detailed look at the top observability tools used by DevOps/SREs, head over to this &lt;a href="https://www.squadcast.com/blog/top-observability-tools-for-devops-engineers-and-sres" rel="noopener noreferrer"&gt;blog&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="https://www.squadcast.com/" rel="noopener noreferrer"&gt;Squadcast&lt;/a&gt; is an incident management tool that’s purpose-built for SRE. Your team can get rid of unwanted alerts, receive relevant notifications, work in collaboration using the virtual incident war rooms, and use automated tools like runbooks to eliminate toil.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://app.squadcast.com/register/" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuploads-ssl.webflow.com%2F5c51758c58939b30a6fd3d73%2F5e16013f80ad26b00925d758_image--5--1.png"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>The Key Differences between SLI, SLO, and SLA in SRE</title>
      <dc:creator>MerlynMShelley</dc:creator>
      <pubDate>Tue, 16 Feb 2021 11:39:27 +0000</pubDate>
      <link>https://dev.to/squadcast/the-key-differences-between-sli-slo-and-sla-in-sre-2d2i</link>
      <guid>https://dev.to/squadcast/the-key-differences-between-sli-slo-and-sla-in-sre-2d2i</guid>
      <description>&lt;p&gt;&lt;em&gt;To incentivize reliability in your platform, there should be shared goals across your team to measure &amp;amp; quantify the capabilities of your product/service along with customer experience. Define the path of "Always-On" services by understanding few key SRE fundamentals and their implications - SLIs, SLOs &amp;amp; SLA.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Framing SRE metrics for building or scaling a product is quite a daunting task.&lt;/p&gt;

&lt;p&gt;In an SRE journey, the process of embracing risks and resolving them by proper service-level metrics are known to be the best way to achieve reliability.&lt;/p&gt;

&lt;p&gt;In this blog, we explore the key differences between these basic site reliability metrics and their implications for building a sustainable and reliable product. Here’s the outline for quick reference:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
What are the key differences between SLIs, SLOs, and SLA

&lt;ul&gt;
&lt;li&gt;Service Level Indicators (SLIs)&lt;/li&gt;
&lt;li&gt;Service Level Objectives (SLOs)&lt;/li&gt;
&lt;li&gt;Service Level Agreements (SLA)&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;How these SRE metrics can help in drafting system performance and reliability&lt;/li&gt;

&lt;li&gt;

How to improve Customer experiences with right Target Values (SLOs)

&lt;ul&gt;
&lt;li&gt;Choosing the Target Values&lt;/li&gt;
&lt;li&gt;Defining the Target Values (SLOs) in Practice&lt;/li&gt;
&lt;li&gt;Error Budgets&lt;/li&gt;
&lt;li&gt;Setting SLOs according to Customer Expectations&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Key Takeaways&lt;/li&gt;

&lt;li&gt;Conclusion&lt;/li&gt;

&lt;/ul&gt;

&lt;h3 id="diff"&gt;&lt;b&gt;What are the differences between SLIs, SLOs, and SLA&lt;/b&gt;&lt;/h3&gt;

&lt;p&gt;SRE practices are now becoming more prevalent and much sought after best practices. And the prerequisite of success in SRE is availability.&lt;/p&gt;

&lt;p&gt;These acronyms - SLIs, SLOs, and SLA are the primary metrics of Site Reliability Engineering (SRE).&lt;/p&gt;

&lt;h4 id="sli"&gt;&lt;b&gt;Service Level Indicators (SLIs)&lt;/b&gt;&lt;/h4&gt;

&lt;p&gt;SLI as defined in &lt;a href="https://sre.google/sre-book/service-level-objectives/" rel="noopener noreferrer"&gt;Google’s SRE Handbook&lt;/a&gt; is, “&lt;em&gt;a carefully defined quantitative measure of some aspect of the level of service that is provided.&lt;/em&gt;”&lt;/p&gt;

&lt;p&gt;SLIs are measurements of the characteristics of a service. SLI’s directly gauge those behaviours that have the greatest impact on the customer experience. The most &lt;a href="https://en.m.wikipedia.org/wiki/Service_level_indicator#:~:text=In%20information%20technology%2C%20a%20Service,also%20called%20an%20SLA%20metric." rel="noopener noreferrer"&gt;common SLIs&lt;/a&gt; or &lt;strong&gt;&lt;em&gt;Four Golden signals&lt;/em&gt;&lt;/strong&gt; are,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Latency&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Traffic&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Error rate&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Saturation&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Other variations are &lt;strong&gt;USE (Utilization, Saturation and Errors)&lt;/strong&gt; and &lt;strong&gt;RED (Rate, Error and Durability)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://medium.com/better-programming/measuring-site-reliability-9745617d206c#id_token=eyJhbGciOiJSUzI1NiIsImtpZCI6IjI1MmZjYjk3ZGY1YjZiNGY2ZDFhODg1ZjFlNjNkYzRhOWNkMjMwYzUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJuYmYiOjE2MTA0MzkxMDEsImF1ZCI6IjIxNjI5NjAzNTgzNC1rMWs2cWUwNjBzMnRwMmEyamFtNGxqZGNtczAwc3R0Zy5hcHBzLmdvb2dsZXVzZXJjb250ZW50LmNvbSIsInN1YiI6IjExNTY1MzQxMTkyNjQ4OTYxNDAxOSIsImhkIjoic3F1YWRjYXN0LmNvbSIsImVtYWlsIjoibWVybHluQHNxdWFkY2FzdC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiYXpwIjoiMjE2Mjk2MDM1ODM0LWsxazZxZTA2MHMydHAyYTJqYW00bGpkY21zMDBzdHRnLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwibmFtZSI6Ik1lcmx5biBTaGVsbGV5IiwicGljdHVyZSI6Imh0dHBzOi8vbGgzLmdvb2dsZXVzZXJjb250ZW50LmNvbS8tVFl5dmtHTnF4VFEvQUFBQUFBQUFBQUkvQUFBQUFBQUFBQUEvQU1adXVja1MtdEpUbjZ6eEV3TXRBeURiaGN2R0JCVnVQUS9zOTYtYy9waG90by5qcGciLCJnaXZlbl9uYW1lIjoiTWVybHluICIsImZhbWlseV9uYW1lIjoiU2hlbGxleSIsImlhdCI6MTYxMDQzOTQwMSwiZXhwIjoxNjEwNDQzMDAxLCJqdGkiOiJhZmYzMTUwY2NiMDNmMTJjZDQ2ZDYzMGU2ZDdjZWU1ODBjZmRkNDdmIn0.eMLv3H2rbY9k33I2jMBqIur82k-HwS2cQBdbDP64lq1Toy9vauv-37QDr1WI01f6gUxOaNdZIoRu3Gg2M4oiCOQ9saeX4fsQy0tBUEzfrnHUdwDhoEFDIO-YRG1pVvTTJ_V3GGfo9OZqvu5dKew6zywUXnM5cGMVocdM6oayQcdYRildPD68qqv-ch4_W-1jN_WocrD-gF0FREixe_ZQjgIGOBXINibGZN3UKZZK5PSus3twlNooBavktPT9GyyRNAcOdMGQ3-ZvMxMgufomTWITg4rppvcFNmXCELuaYeWdMgCndgYkNxuJZQqV0-6WzvRgVvmzYv4LPOdNOS956g" rel="noopener noreferrer"&gt;formula&lt;/a&gt; used to calculate SLI is,&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;SLI = Good Events * 100 / Valid Events&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If the value of SLI is 100, the performance of the system is ideal and if it drops to 0, the system is broken.&lt;/p&gt;

&lt;p&gt;It is &lt;strong&gt;Product (Service) - Centric&lt;/strong&gt;, which means it always revolves around measuring the capabilities or characteristics of a product or service&lt;/p&gt;

&lt;h4 id="slo"&gt;&lt;b&gt;Service Level Objectives (SLO)&lt;/b&gt;&lt;/h4&gt;

&lt;p&gt;SLOs are key threshold values for each SLI that quantify the availability and quality of service. They are an objective measure of your product’s reliability, or performance goals.&lt;/p&gt;

&lt;p&gt;SLOs as explained in &lt;a href="https://sre.google/workbook/implementing-slos/" rel="noopener noreferrer"&gt;Google’s SRE workbook&lt;/a&gt;, “&lt;em&gt;Service level objectives (SLOs) specify a target level for the reliability of your service. Because SLOs are key to making data-driven decisions about reliability, they’re at the core of SRE practices.&lt;/em&gt;”&lt;/p&gt;

&lt;p&gt;These are numerical reliability or performance targets that a developer or an SRE should maintain while building and scaling a product. Any changes in the product or service must fall under these defined target values.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Additional Reading&lt;/u&gt;: You can check out our detailed case study on how to implement &lt;a href="https://www.squadcast.com/blog/how-small-changes-to-your-slos-can-be-smart-for-your-business-a-narrative-case-study" rel="noopener noreferrer"&gt;small changes in your SLOs&lt;/a&gt; by adopting the &lt;a href="https://www.squadcast.com/blog/choosing-slos-that-users-need-not-the-ones-you-want-to-provide" rel="noopener noreferrer"&gt;SMART&lt;/a&gt; (&lt;strong&gt;S&lt;/strong&gt;pecific, &lt;strong&gt;M&lt;/strong&gt;easurable, &lt;strong&gt;A&lt;/strong&gt;chievable, &lt;strong&gt;R&lt;/strong&gt;elevant, and &lt;strong&gt;T&lt;/strong&gt;ime-bound) strategy in crafting the right SLOs for your business.&lt;/p&gt;

&lt;p&gt;SLOs should be &lt;strong&gt;Customer-centric&lt;/strong&gt;, they should be directly related to the customer experience. The core purpose of SLOs is to quantify customer reliability of the product and services.&lt;/p&gt;

&lt;p&gt;SLOs can also be used to drive other improvements. For example, you could set an SLO for backup duration if you wanted to maintain or improve it.&lt;/p&gt;

&lt;h4 id="sla"&gt;&lt;b&gt;Service Level Agreements (SLA)&lt;/b&gt;&lt;/h4&gt;

&lt;p&gt;SLA is an agreement between the service provider and customer about service deliverables.&lt;/p&gt;

&lt;p&gt;With an SLA, the consumer would have a clear idea about the proposed product or service in terms of functionality, reliability, and performance.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://cloud.google.com/blog/products/gcp/availability-part-deux-CRE-life-lessons" rel="noopener noreferrer"&gt;Google’s CRE Life lessons&lt;/a&gt; define SLA as, “&lt;em&gt;An SLA normally involves a promise to someone using your service that its availability should meet a certain level over a certain period, and if it fails to do so then some kind of penalty will be paid.&lt;/em&gt;”&lt;/p&gt;

&lt;p&gt;SLAs are Vendor-User agreement and a &lt;strong&gt;Customer-centric&lt;/strong&gt; metric that defines the committed functionality, performance, and reliability of a product or service as well as the penalty for non-compliance. It also helps in establishing transparency and trust between the company and its customers. And if the company breaches the terms agreed in the SLA then it is liable to reimburse the loss incurred for its customers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gAU6Jbt8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c9200c49b1194323aff7304/6007defb9a3dafe00261cef4_3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gAU6Jbt8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c9200c49b1194323aff7304/6007defb9a3dafe00261cef4_3.png" width="800" height="574"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3 id="metrics"&gt;&lt;b&gt;How these SRE metrics help in drafting system performance and reliability&lt;/b&gt;&lt;/h3&gt;

&lt;p&gt;If you are a business that sells any product or service to your customers and assures them about your product capabilities, then you should draft your SLI, SLO and SLA now!&lt;/p&gt;

&lt;p&gt;These service-level metrics would help you gain customer trust and improve your system reliability and performance.&lt;/p&gt;

&lt;p&gt;As a service provider/vendor, you should start by coming up with key performance indicators that measure your product's performance, which forms your &lt;strong&gt;SLIs&lt;/strong&gt;. Remember these are a direct measure of your system’s behaviour in every stage of your business.&lt;/p&gt;

&lt;p&gt;Secondly, you have to set targets of availability for achieving these indicators, which forms your &lt;strong&gt;SLOs&lt;/strong&gt;. This is a completely data-driven phase where you have to accumulate the data from customer queries, stakeholders' expectations, find the insights and finalize the target/threshold values to achieve better reliability.  &lt;/p&gt;

&lt;p&gt;As the final step, you should create your &lt;strong&gt;SLA&lt;/strong&gt;. Here you have to list out the reliability values and help them understand your product's capabilities.&lt;br&gt;
Thus, SLIs are the foundational blocks that help in building SLOs which in turn helps with overall reliability mentioned in your SLA.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TU9z_x5n--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c9200c49b1194323aff7304/6007e6afab83d68bc24a072c_2%2520%281%29.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TU9z_x5n--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c9200c49b1194323aff7304/6007e6afab83d68bc24a072c_2%2520%281%29.png" width="800" height="569"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3 id="customer-experiences"&gt;&lt;b&gt;How to improve Customer experiences with right Target Values(SLOs)&lt;/b&gt;&lt;/h3&gt;

&lt;p&gt;Customer experience plays an important part in deciding key SRE metrics. SLOs are the focus points in deciding the assured system reliability the company would offer to the end-users.&lt;/p&gt;

&lt;h4 id="target-values"&gt;&lt;b&gt;Choosing the Target Values&lt;/b&gt;&lt;/h4&gt;

&lt;p&gt;Choosing the appropriate SLOs or target values is in itself a complex technique!&lt;/p&gt;

&lt;p&gt;Here are few key practices that can help you in deciding the right SLOs.&lt;/p&gt;

&lt;p&gt;The target value of a service level is always measured only by an SLI.&lt;/p&gt;

&lt;p&gt;There is an intricate dependency between SLIs and SLOs. This forms as a controlling characteristic while measuring and monitoring the entire system architecture. So, according to Google,&lt;/p&gt;

&lt;p&gt;"&lt;em&gt;A natural structure for SLOs is thus SLI ≤ target, or lower bound ≤ SLI ≤ upper bound.&lt;/em&gt;"&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Lower bound SLOs ≤ SLI ≤ Upper bound SLOs&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;What should you do while &lt;a href="https://sre.google/sre-book/service-level-objectives/" rel="noopener noreferrer"&gt;choosing the right SLOs&lt;/a&gt;?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Never choose targets/SLOs based on the current performance of your systems, choose from your historic performances&lt;/li&gt;
&lt;li&gt; Keep it simple - Don't specify absolute target values as SLOs&lt;/li&gt;
&lt;li&gt;Don't aim for over-achievement or perfection, reliability cannot be 100%&lt;/li&gt;
&lt;li&gt;Always keep a safety margin in SLOs, say like setting a historical average of your availability SLOs&lt;/li&gt;
&lt;li&gt;Only choose SLOs that are sufficient to cover attributes of the system, which means have only a few SLOs&lt;/li&gt;
&lt;li&gt;While drafting SLA, always remember&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Reliability values in SLA &amp;lt; Historical Average of your availability SLOs‍&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h4 id="defining-target-values"&gt;&lt;b&gt;Defining the Target Values (SLOs) in Practice&lt;/b&gt;&lt;/h4&gt;

&lt;p&gt;Google emphasises the importance of &lt;a href="https://sre.google/sre-book/service-level-objectives/" rel="noopener noreferrer"&gt;defining the objectives in practice&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;“&lt;em&gt;SLOs should specify how they’re measured and the conditions under which they’re valid&lt;/em&gt;” SLOs can never be 100%. But we can specify the limit of up to which constraint of time we can achieve the assured reliability. For example, you can specify the SLO targets in the performance curve as,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;99.9% of SLO would complete a task in less than 100ms.&lt;/li&gt;
&lt;li&gt;99% of SLO would complete a task in less than 10ms&lt;/li&gt;
&lt;li&gt;90% of SLO would complete a task in less than 1 ms&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is where Error budgets in SRE come in handy, a rate at which SLOs can be missed. This provides a clear, objective metric that helps determine how unreliable service is allowed for a specific time. It also helps to establish a balance between reliability and innovation. According to Google's SRE book, "&lt;em&gt;An error budget is just an SLO for meeting other SLOs!&lt;/em&gt;"&lt;/p&gt;

&lt;h4 id="error-budgets"&gt;&lt;b&gt;Error Budgets&lt;/b&gt;&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://sre.google/sre-book/embracing-risk/#xref_risk-management_unreliability-budgets" rel="noopener noreferrer"&gt;Google's Motivation for Error Budgets&lt;/a&gt;, defines Error Budget as,&lt;/p&gt;

&lt;p&gt;“&lt;em&gt;the tool SRE uses to balance service reliability with the pace of innovation&lt;/em&gt;"&lt;/p&gt;

&lt;p&gt;"&lt;em&gt;the amount of error that your service can accumulate over a certain period before your users start being unhappy.&lt;/em&gt;”&lt;/p&gt;

&lt;p&gt;SLI is expressed as a percentage, and the objectives derived from SLIs are the SLOs. Now, Error budget is the remainder value of the SLOs mentioned.&lt;/p&gt;

&lt;p&gt;The formula for Error budget is,&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Error budget = &lt;a href="https://dev.toin%20%"&gt;100 - Internal Availability SLOs&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;So, in the above example, if the internal availability SLO is 99.95%, then the corresponding error budget would be (100-99.5) 0.05%. That is, you can serve up to or below the error of 0.05%.&lt;/p&gt;

&lt;p&gt;According to &lt;a href="https://www.google.com/amp/s/cloudblog.withgoogle.com/products/gcp/sre-fundamentals-slis-slas-and-slos/amp/" rel="noopener noreferrer"&gt;Google's SRE blog&lt;/a&gt;, you have to measure every service you offer with an availability SLO, without which you cannot decide on making your systems more reliable. And if you assure the services to be more reliable, then the cost to operate will be expensive. So, by &lt;strong&gt;quantifying your services with availability SLOs&lt;/strong&gt; you can either allow greater momentum for product development (but less reliable) or make your systems more reliable (but slow in product development).&lt;/p&gt;

&lt;p&gt;And to improve your services you can build "&lt;strong&gt;deemed SLIs&lt;/strong&gt;" or &lt;a href="https://www.google.com/amp/s/cloudblog.withgoogle.com/products/management-tools/using-deemed-slis-to-measure-customer-reliability/amp/" rel="noopener noreferrer"&gt;approximate SLIs&lt;/a&gt; to measure customer reliability of your platform at a very granular level. This contributes to measuring low-level outages and drives the operational response with which you can refine your customer expectations. This, in turn, helps you in scaling your product for better customer experience.&lt;/p&gt;

&lt;h4 id="setting-slos"&gt;&lt;b&gt;Setting SLOs according to Customer Expectations&lt;/b&gt;&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Set an SLO buffer, which would help in accommodating maintenance window, improve the performance of the system without disappointing the users&lt;/li&gt;
&lt;li&gt;Restrict over-dependence between the services that which drags down other services and takes longer time to load&lt;/li&gt;
&lt;li&gt;While drafting an SLA, business and legal teams are required to pick appropriate consequences and penalties , in the event the agreement is breached. An SRE in the team helps them understand the likelihood and difficulty of meeting the SLOs contained in the SLA.&lt;/li&gt;
&lt;li&gt;Be smart and conservative while you advertise your services’ SLOs because you cannot delete any of the SLA that are not achievable&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id="takeaways"&gt;&lt;b&gt;Key Takeaways&lt;/b&gt;&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;You should prioritize setting up your availability SLOs than your SLA.&lt;/li&gt;
&lt;li&gt;Make sure you mention the value of reliability in the SLA slightly lower than the historical average of your availability SLOs. This is to safeguard against the average being high because a failure has not occurred yet.&lt;/li&gt;
&lt;li&gt;If your MTBF (mean time between failures) is 18 months and your service is only 6 months old then the measured SLA will be artificially high.&lt;/li&gt;
&lt;li&gt;Also, if you ensure the reliability value greater than or equal to your availability SLO, then your team would lose the buffer between your goal and the penalty level.&lt;/li&gt;
&lt;li&gt;Your accumulated errors for a certain period should fall within the Error budget calculated. If not then you will be breaching the SLA and that would correspond to financial loss.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SCaDKw0G--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c9200c49b1194323aff7304/6007e5f8bdea1110105d72aa_1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SCaDKw0G--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c9200c49b1194323aff7304/6007e5f8bdea1110105d72aa_1.png" width="800" height="469"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3 id="conclusion"&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;/h3&gt;

&lt;p&gt;Delivering product value solely depends on the performance and reliability of your services. Service level metrics act as a key tool to measure and quantify the capabilities of your product/service.&lt;/p&gt;

&lt;p&gt;And, yes, it is necessary to define the path of how you are going to deliver the commitment towards "always-on" services. Appropriate SLOs and SLIs will help you define that path.&lt;/p&gt;

&lt;p&gt;We hope that this article has helped you understand SLIs, SLOs, and SLA in a better way so that you can use them in improving your customer experience and overall product and service capabilities.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;a href="https://www.squadcast.com/" rel="noopener noreferrer"&gt;Squadcast&lt;/a&gt; is an incident management tool that’s purpose-built for SRE. Your team can get rid of unwanted alerts, receive relevant notifications, work in collaboration using the virtual incident war rooms, and use automated tools like runbooks to eliminate toil.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://app.squadcast.com/register/" rel="noopener noreferrer"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cj1VUnAS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://uploads-ssl.webflow.com/5c51758c58939b30a6fd3d73/5e16013f80ad26b00925d758_image--5--1.png" width="800" height="304"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>sre</category>
      <category>bestpractices</category>
    </item>
  </channel>
</rss>
