Skip to content

Dynatrace Provider: Support DQL #1879

@mtfurlan

Description

@mtfurlan

Describe the feature

Dynatrace really wants people to use their new DQL API over the metrics API.
At this point, they only have one tool to help design metrics API queries (that's annoying to use and doesn't save), and Many ways to design and test DQL queries.

The problem is that the DQL api is not a single endpoint, you have to initiate the query, and then hit a polling endpoint till it's done.
Grail Service docs

Right now, I'm having trouble making the query I want for metrics work under the metrics API, but I have a working DQL query.

Proposed solution

Support both metrics API and DQL the way Keda does.

Given how the current crd for MetricTemplate is setup, it's probably easiest to add a second provider for dynatraceDQL, instead of the optional fields that Keda uses.

Any alternatives you've considered?

I could make the query I need today work by changing the resolution in the metrics API to not be a hardcoded Inf
But that doesn't really solve the problem of "dynatrace is pushing really hard for new api"

Implementation question

Is it cool to just wait in the metrics provider while polling, or do we need some kind of new async api for the metrics providers?

The final result is guaranteed to be available for one minute after the query has finished

I'm gonna go try and see if I can get it working by just blocking in RunQuery, if that isn't an acceptable approach I'm going to need help because I really don't know go.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions