Skip to content
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

Adding optional SLA definitions with the Spec #541

Open
pjmolina opened this issue Jan 15, 2016 · 12 comments
Open

Adding optional SLA definitions with the Spec #541

pjmolina opened this issue Jan 15, 2016 · 12 comments
Labels
metadata tags, info, license, contact, markdown usage, etc.

Comments

@pjmolina
Copy link

Related to #51

We have identified in the market a need for measuring and enforcement SLA in APIs. Specially, API vendors would benefit from an standard import of SLA metrics to measure and track importing them along with the OpenAPI definition in an standard way.

In this line, we have started a R&D project by Icinetic and the University of Seville at Spain to work on: "Extension on OpenAPI for the definition of Service Level Agreements (SLA)".

The project is looking forward to:

  1. Setup a basic and optional profile extension to describe a set of plan prices over APIs, Quota enforcement policies, constraints, etc.
  2. This information can (always optionally) decorate the OpenAPI spec inline on in a side file/resource linked from the main spec.
  3. Third party tools like Hivepod: can generate both: Swagger spec, service implementation, and SLA policy + SLA enforcement code, data repository to store the metrics and tools for analysis
  4. Third party tools like API Management tools can use this SLA info also to measure and track the level of compliant with respect this SLA specified.
  5. The ISA Research Group in the University of Seville is looking forward to provide tools for validation, creation and verification of SLAs for free.
  6. We will provide a reference implementation showing the full scenario: from sample Microservice being measured, using a data store to gather metrics and an analysis tool to visualize the SLA grade of compliance.
  7. Eventually, we would love to contribute to OAI (next version) with an open source extension for SLA definition.

Looking forward for early feedback and to join forces with OAI wanting to support an extension for this in an standardized way.

@webron
Copy link
Member

webron commented Jan 19, 2016

Thanks for the information. We've explicitly chose to exclude support for 2.0, though there are a few ideas to be taken into account for the next version. We'll take your work under consideration.

@discordianfish
Copy link

I'm currently working on adding SLA definitions to our swagger definition and would be very interested in taking that and turning it into prometheus alerting definition. Happy to test-drive whatever you come up with.

@pjmolina
Copy link
Author

Excellent @discordianfish ! Anyone interested write me an email to pjmolina (at) icinetic.com and I will share with you our initial draft material.

@fehguy
Copy link
Contributor

fehguy commented Mar 1, 2016

Parent issue #560

@fehguy
Copy link
Contributor

fehguy commented Apr 7, 2016

@discordianfish @pjmolina if you have examples of how this would look, please feel free to share it.

@earth2marsh
Copy link
Member

Seems like a great use of an x-extension, and if that gets traction, it should be considered in a future version.

@jcarres-mdsol
Copy link

@webron I can't see anything related to this in the 3.0 spec. Will this still be addressed with custom extensions?

@webron
Copy link
Member

webron commented May 25, 2017

@jcarres-mdsol It won't be addressed in 3.0 directly or indirectly, we didn't get a chance to discuss it.

@jcarres-mdsol
Copy link

Thank you for the response. Then I'll go for an extension.
Thanks for replying so fast

@vtolstov
Copy link

any progress?

@pjmolina
Copy link
Author

Hi @vtolstov
Yes: working on it here: https://github.com/isa-group/SLA4OAI-TC/blob/master/specs/index.md
Feel free to join or add yout ideas to push it forward.

@vtolstov
Copy link

@pjmolina hi! thanks for answer. I'm try to solve problem from other side - i have go micro framework that based on proto generates handlers for client and server. And our analytics team want to specify timeout for handlers based on SLA and understanding how much time needs each handler to process. And based on this proto i'm generate swagger/openapi spec to publish

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
metadata tags, info, license, contact, markdown usage, etc.
Projects
None yet
Development

No branches or pull requests

8 participants