-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SLOs API - Phase 1 #137323
Comments
Pinging @elastic/actionable-observability (Team: Actionable Observability) |
I want to share some thoughts and questions that could help create the technical issue, and also share knowledge with the engineering team. Important note: This epic (Phase 1) is ONLY about defining the SLO (no SLIs, no link between SLOs and SLIs, no alerts based on a specified threshold, etc.)I'm highlighting this note to make it clear that in this phase, we are ONLY CRUD SLOs (docs in an index) and not the entire/final SLO solution (which is what I thought at the beginning when I started thinking about how/who going to call our API, etc...) Thoughts
Questions
|
Yes, the implementation for this project will happen under the observability plugin.
Yes, this will be a multiple release project so we will need to hide the feature under a flag.
In this phase I would like to achieve the following:
At a minimum, for read access they will need "read" permissions on the SLO data indices (created by the transform). For the SLO detail page, to see the status of the transform, they would need
The isn't a great "As Code" story for using Kibana APIs today. The best we can do is create a REST endpoint, and then work with the Kibana team to make using those endpoints easier. |
On #5 above, one additional note is that not all REST APIs are automatically Ansible and Terraform friendly. Part of the effort should be to ensure something easily written in those products can interact with our SLO capability via those REST APIs. |
@vinaychandrasekhar Our best approach is to use Ansible to test the API during development. |
@simianhacker, I had to be more precise, I know it's under the observability plugin 😄. But my question is where under the observability plugin? |
@fkanout I was talking to @kdelemme about this and I would prefer we had a function called |
Context
Objective
The objective of this first phase is to provide an API for CRUD operations on SLOs that would support
Service
andTransaction
types of entity, and the following APM metrics:That should allow for tracking:
Requirements
record/document count
based, ortime
basedbudgetingMethod enum(Occurrences | Timeslices)
, required fieldDelete SLO
API must be Terraform, Ansible friendly (“Friendly” = an SRE must be able to write a Terraform based script that can successfully utilize our APIs to perform CRUD on SLOs without requiring a PhD)
Implementation
For version 8.5.0:
For version 8.6.0:
The text was updated successfully, but these errors were encountered: