Replies: 2 comments
-
Just to give some examples of the kind of things I'd want to do:
|
Beta Was this translation helpful? Give feedback.
-
Hello @PMunch I have taken the liberty of converting the issue you opened into a Github discussion, to make it more visible and make it easier for other to participate. With regard to your question: the way binjr can be extended at the moment is by creating a plugin called a DataAdapter: this is a way to plug in java code to prepare and expose the time series that are available . The data source that are supported by binjr out-of-the-box are implemented like this, but it is possible to create new one as a separate project, to be distributed on its own, as a jar file (e.g.https://github.com/binjr/binjr-adapter-demo). Responsibilities for a data adapter are to create a list of available series (i.e. it populates the tree in the left hand side panel) and know how to fetch data for a given time interval and a list of sources, either by querying a remote backend (i.e. Netdata, JRDS) or a local one (RRD) or from an internal data cache that was generated from a source file (CSV, JFR, logs). This approach works best when you have a clear idea of what to do with a specific source of data (what series you want to expose, which one you want to generate, transform, etc.. and what type of visualization to use for each), and basically lets allows to connect to any kind of existing sources and apply any type of transformation or inference on the data itself. It is pretty rigid, however, and not well suited if you cannot know in advance what pre-processing you'll need to apply that which part of the data. It also comes with a learning curve that might be too steep for most users; it requires programming skills and a non-null time investment to familiarize with the API. And the lack of documentation doesn't help, but I could always produce some if someone demonstrated enough interest into building and maintaining a useful plugin. |
Beta Was this translation helpful? Give feedback.
-
I've been enjoying looking at data in Binjr, but apart from averages and min/max I'm not presented very much in terms of actual analysis. Optimally I'd want to be able to write simple scripts or dynamic libraries which did analysis of my data and then be able to draw these either as separate graphs, fields for a given time series, or even as a popup or widget for comparing time-series.
My workflow for this now would be to have a separate program calculate these and optionally enhance my CSV files with this data before opening them in Binjr. But this is a bit tedious.
I was just wondering if you had thought about adding any such capabilities to Binjr, so feel free to reply with your thoughts on the topic and close the issue regardless of your plans.
Beta Was this translation helpful? Give feedback.
All reactions