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

Adopting pre-existing SLOs #1248

Open
philippeVV opened this issue Jun 25, 2024 · 2 comments
Open

Adopting pre-existing SLOs #1248

philippeVV opened this issue Jun 25, 2024 · 2 comments

Comments

@philippeVV
Copy link

The Datadog Operator should implement resource adoption for the SLO CRD.

Use case

We have existing SLOs in our Datadog account that we would like to import into the operator. Deleting and recreating these SLOs would erase their historical data and break all associated dashboards, monitors, and references by ID. In our scenario, we frequently need to adopt resources due to cluster A/B testing on major changes.

Why it doesn’t work

The operator currently doesn’t support importing SLOs. It will always try to create them when the CR is first created.

Expected behavior

When an SLO CR is created, we expect the operator to import the SLO from Datadog if an SLO with the same name already exists. If no such SLO exists, the operator should create a new one.

@philippeVV
Copy link
Author

We are willing to contribute if there's interest in the feature and we get support selecting the right design.

@philippeVV
Copy link
Author

Crossplane uses annotation to import pre-existing resources.

We could also use the SLO's name or SLO's name and tags to make a search query to Datadog.
The human operator would be responsible for managing SLO unicity.

  • If 0 SLO matching the query exists, it's created.
  • If 1 SLO matching the query exists, it's imported.
  • If >1 SLO matching the query exists, there's an error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants