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

[FeatureRequest] Allow to create transform plugins #33154

Closed
ralequi opened this issue Apr 20, 2021 · 4 comments
Closed

[FeatureRequest] Allow to create transform plugins #33154

ralequi opened this issue Apr 20, 2021 · 4 comments

Comments

@ralequi
Copy link

ralequi commented Apr 20, 2021

What would you like to be added: The ability to create plugins that adds a custom type of transform

Why is this needed: Some kind of data requieres some ad-hoc preprocess that may be too complex for the underlying DB.

Now a days this can be done by very complex queries repeated across many panels (which makes it hard to maintain) or by re-doing panel/datasource plugins to inject such kind of ad-hoc preprocesses. Probably a worse solution that the other one but sometimes, in fact, actually is the only possible way to do it.

@ralequi ralequi changed the title Allow to create transform plugins [FeatureRequest] Allow to create transform plugins Apr 20, 2021
@wbrowne wbrowne added this to Todo in Plugins Platform (DEPRECATED) via automation Jul 5, 2021
@wbrowne
Copy link
Member

wbrowne commented Aug 17, 2021

@ralequi Is there any particular transformation operations that you're considering? It would be great if people would share their use case because it might be something we can contribute directly to Grafana's built-in transforms in the meantime. The idea of pluggable transforms is certainly interesting and one we will keep in mind for the future.

Aside: Will also link a comment here made on the plugins platform roadmap issue that relates to this as well

@fl4p
Copy link

fl4p commented Oct 24, 2023

@wbrowne I'd use it for computing fractional change (pandas pct_change()) of a time series. Maybe that's implemented somehow? And FIR filtering, DSP and etc crunching.

@dosgood1968
Copy link

I would use this to find the ratio of a list of data series to another single or list of data series, without knowing in advance how many series are in each list.

For example, Query A can return N series of data, depending on template variables. Query B can return a single series.

My desired output is Query-A[0..N] / Query-B.

I would extend this so Query B can also return more than one series. Every series in Query-A would be divided by one series in Query-B, matched by naming conventions.

The current math transform doesn't work if the number of series is unknown.

It would be great if someone could implement a more flexible math transform and plug it in. It would also be interesting to see a Transform that is scriptable via Javascript (for example), for arbitrary transformations.

FWIW I have implemented this use case using a Plotly panel plugin. This solved my problem but required that I code the visualization as well as the transform. I would have preferred to use a built-in visualization and only code the transform.

@sympatheticmoose
Copy link
Contributor

To provide an update, this isn't something we're looking at implementing as the complexity of introducing additional plugin types outweighs the benefits.

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

Successfully merging a pull request may close this issue.

6 participants