prometheus / prometheus

The Prometheus monitoring system and time series database.
https://prometheus.io/
Apache License 2.0
55.76k stars 9.16k forks source link

no option for zero-based graphs #520

Open robey opened 9 years ago

robey commented 9 years ago

I thought there was consensus that graphs should start at 0 on the Y axis to avoid misinterpretation, but a quick google search shows that there's not total agreement on that.

So, I would like the option to make the graph zero-based, without forcing everyone else to agree. :)

For some stats (like "users online"), the graph may stay flat for hours at a time. Currently, prometheus will draw such a graph as blank, with a minimal Y range, and a single line at the baseline where it's effectively invisible.

juliusv commented 9 years ago

Agreed. I believe 0-based is the default in PromDash (vs. Prometheus itself), though it's possible to manually set a Y-axis range (but no option to simply dynamically clamp the Y-axis to the available values).

0-based Y-axes have the problem that very large counters will just look like flat lines even if they're increasing rapidly. But yeah, the reverse problems also exist.

So I think this might actually be worth another UI button, both in Prometheus and in PromDash.

brian-brazil commented 9 years ago

Note that http://prometheus.io/docs/visualization/consoles/#graph-library has a min option.

juliusv commented 9 years ago

Yeah, it's less about the graphing library support than about the question of what UI elements to add to get a balance between UI clutter and really needed features (for the server-side built-in graphing at least).

brian-brazil commented 9 years ago

I think for /graph we should do something a bit more reasonable when all the values are the same, such as say making the main and max 10% either side of the value.

discordianfish commented 8 years ago

I just realize how problematic this can be: "Peaks in the metrics are lower than they appear" :) Do we have consensus how it should look like? Making it 10% will help with the invisible steady metric but won't change that it's sometime visually misleading. I guess a simply checkbox with whatever default would make most sense since I believe there are scenarios for both.

matthiasr commented 7 years ago

another case: stacked graphs should always include the zero line. Right now I'm looking at a stacking of 5 up == 1 and it's … weird.

prometheus_time_series_collection_and_processing_server

theophani commented 7 years ago

@matthiasr A stacked graph was exactly what I was looking at when we discussed this yesterday in our company channel. Maybe that is a nice mini-change.

In this graph, I was trying to understand the contribution that the green area contributed to the whole. For a moment, I was convinced it contributed more than half.

screen shot 2016-11-22 at 11 02 03

I understand the desire to see “the interesting” part of the graph in detail, but I think that should be an active choice, not the other way around.

discordianfish commented 7 years ago

This seems easy to fix. Are we in agreement that it should be changed? And how is it suppose to look? Just another button beside [ ] Stacked? I'd also say we make it default for all graphs.

matthiasr commented 7 years ago

👍

SameerMahajan-GSLab commented 3 years ago

Is this issue still Open as shown on top or now Closed as marked towards the end of the discussion?

roidelapluie commented 3 years ago

It is open.

beorn7 commented 2 months ago

This should now be addressed in the new UI (coming with v3).

juliusv commented 2 months ago

This should now be addressed in the new UI (coming with v3).

Uhm. That'd be news to me?

beorn7 commented 2 months ago

I mean, not as a blocker for launch. But since this is marked as "help wanted" and "good first issue", I thought I should mention that it doesn't make sense to implement it for the current UI, as we will get rid of it soon. So if somebody wants to work on this, they should implement it for the new UI.

juliusv commented 2 months ago

I see, yeah. I don't know if I'd want to add it to the new UI to be honest. There's already again more buttons and options and clutter than I wanted, and we should draw the line somewhere...

beorn7 commented 2 months ago

OK, given that nobody worked on this issue in more than three years (despite tags like "help wanted" and "low hanging fruit"), maybe it isn't even desired that much.

I will simply close this issue. If people feel it is really needed and if they have concrete plans to implement it (and of course are willing to have the discussion if it is a net gain for UX), please follow up here, and we can re-open as needed.

kokes commented 2 months ago

I have actually wanted this for years now and I'd usually default to stacked charts and isolating a single series, which is the only way to achieve this, currently.

I took a stab at this and produced a POC, linked above. There's also this deployment preview, where you can try the checkbox in action.

(I won't comment on the UI clutter implications, I'm not enough of an insider to have a strong opinion on that.)

beorn7 commented 2 months ago

I don't have a strong opinion of my own, and I'm not a UI expert anyway.

@juliusv I leave it to you to decide if you want to re-open this, based on the PoC linked above.

juliusv commented 2 months ago

So that's a bit of a philosophical question of which bells and whistles we want to add to Prometheus' own UI, and when to send people to Grafana instead. I can see the argument that this option is actually helpful not only for dashboarding, but when just digging around during an incident and wanting to interpret the data better (which is pretty much the use case we want to cover with the Prometheus UI, not full dashboarding).

Currently I already know of at least one other checkbox that I'll need to add (but already styled it differently, as a button), and with that one I'm already running into the situation that the graph options don't fit into a single line anymore on narrower windows. Maybe a decent-enough solution to all this would be to move some of the visualization settings out of the way into a dropdown submenu, just like I did with the "..." menu on the expression input.

We have the big Prometheus 3.0 release tomorrow at PromCon, so not sure if I'll get to play with that idea before then, but it sounds worth at least exploring, so reopening for now.