-
Notifications
You must be signed in to change notification settings - Fork 8.8k
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
Panel as an iframe #11702
Comments
Technically, I don't think this would be too difficult. All the configuration information for a graph is already serialized in the URL anyway so all we would need to do is make a page that only has the graph component. The question of is it in scope is a little more tricky. I personally think the iframe functionality is on the border of what our simple UI should be doing. I wouldn't necessarily be opposed to it, but I'm not familiar enough the decisions made in the UI to make a determination. cc @juliusv |
I'm also on the fence about that in Prometheus itself... btw., one way you can already do it is by using the console templates in Prometheus (https://prometheus.io/docs/visualization/consoles/#console-templates) that already come with an example graphing library as well. You could use that to serve an HTML page straight from Prometheus that only shows a graph. On a totally different front (but at the moment still only in a separate project), the Perses project (https://github.com/perses/perses) had embeddability of Prometheus graphs as one of its main goals. @Nexucis is this already usable by others? |
I feel stupid because didn't figured out what is consoles and how to use them when first read the docs. Nice feature. It would be great to add a menu item for them. The consoles aren't not the same as the React UI built-in to Prometheus binary. So I'm not sure if I can get the same functionality like query autocompletion. Ideally the main UI must be also implemented as a default console. Then users may play and hack it. Anyway, this is basically not related directly to the feature request. The iframe would be very useful at least for my case but I don't know how many of others would need it. Given that I was a first who asked about it I assume that this is not needed. Right now for my app I took chart.js library and making a CORS request to the Prometheus with Base Authorization and credentials are just written in the client JS. This is a bad solution from security perspective but I don't have other options for now. And even with the CORS I have a trouble and had to put nginx behind. P.S. You see, this is all basically talk more about direction of the Prometheus itself. When I created the issue I was pissed off. And next hour I just started looking how to get rid off the Prometheus and use plain PostgreSQL instead. I spent too much time on the Prom and not a single of my needs wasn't solved without a headache:
And many of other small problems like removing a metric series that consumed too mush of a disk space. I spending about 30% of time to fight with it and this is just insane. |
@stokito It seems to me that you came with the expectations of a commercial product to an open-source project built and maintained in large parts by volunteers, often in their free time (although some companies also pay some people for specific things). Still, it is good feedback, and definitely we could do a better job in many of these things. When it comes to Debian / Ubuntu packages, they are indeed often out of date or not feature-complete, as Debian's own packaging guidelines make it quite tough to ship Prometheus packages with all features and in a timely way. That's currently done by a volunteer outside of the official project. It would be nice if the project itself could ship its own .debs and other packages with less packaging restrictions, but currently nobody is doing that unfortunately (again, it would need a volunteer). With point 5, I'm not sure what you mean... Prometheus supports integrating with a lot of common types of service discovery, where k8s is just one (see https://prometheus.io/docs/prometheus/latest/configuration/configuration/#configuration). It also allows custom integrations over HTTP or local files. What other way were you expecting Prometheus to discover services? Anyway, it seems like Prometheus wasn't a match for what you were expecting, which is fine. |
Well on the paper, it should be usable by others, but for the moment there is no guideline or explanation on how to do it. |
Proposal
I don't want to use Grafana and the basic Prometheus graphs are fine to me. But I need to include the graph into a dashboard. The Grafana has such a feature and it looks for me like a simple thing to implement for the Prometheus.
Even now I can include the /graph page but I just want to hide a header. Is it something that can be done in Prometheus or it's UI is not a subject for a serious use and we should use the Grafana instead?
The text was updated successfully, but these errors were encountered: