Bug 1427571 - Unusable group metric graphs due to fix for BZ-1236021
Summary: Unusable group metric graphs due to fix for BZ-1236021
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: JBoss Operations Network
Classification: JBoss
Component: UI
Version: JON 3.3.8
Hardware: Unspecified
OS: Unspecified
urgent
high
Target Milestone: CR01
: JON 3.3.9
Assignee: Josejulio Martínez
QA Contact: Prachi
URL:
Whiteboard:
Depends On: 1425720
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-02-28 16:00 UTC by Larry O'Leary
Modified: 2020-04-15 15:23 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1425720
Environment:
Last Closed: 2017-10-02 17:21:51 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Suggestion 1 - Use extra line to plot curve without NaN and NULL values (23.80 KB, image/png)
2017-02-28 18:49 UTC, Larry O'Leary
no flags Details
Suggestion 2 - Use dotted line of the same color to plot curve without NaN and NULL values (38.88 KB, image/png)
2017-02-28 18:53 UTC, Larry O'Leary
no flags Details
Suggestion 1 - original intent (13.64 KB, image/png)
2017-03-01 09:36 UTC, Stian Lund
no flags Details
Suggestion 3 - small dots (13.65 KB, image/png)
2017-03-01 09:37 UTC, Stian Lund
no flags Details
Suggestion 4 - small ticks (13.62 KB, image/png)
2017-03-01 09:37 UTC, Stian Lund
no flags Details
Suggestion 1 - with data overlay (16.00 KB, image/png)
2017-03-01 09:57 UTC, Stian Lund
no flags Details
screenshots of proposed fix. (162.16 KB, application/zip)
2017-03-04 00:26 UTC, Josejulio Martínez
no flags Details
graph screen-shot (112.70 KB, image/png)
2017-09-11 13:26 UTC, Prachi
no flags Details
screen-shot-1 (208.80 KB, image/png)
2017-09-21 04:54 UTC, Prachi
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 2939841 0 None None None 2017-02-28 16:00:39 UTC
Red Hat Product Errata RHEA-2017:2846 0 normal SHIPPED_LIVE Red Hat JBoss Operations Network 3.3.9 bug fix update 2017-10-02 21:21:28 UTC

Description Larry O'Leary 2017-02-28 16:00:39 UTC
Description of problem:
The changes done in the Bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=1236021 (where a black circle is drawn every time there is a data) make group graphs unusable and very messy - see attached screen shots: Metrics5.png and Metrics3.png.

Additionally, according to the screen shot Metric4.png - the issue originally reported in the Bugzilla 1236021 is not fixed at all as graphs still show zero every time there is no data. 

Finally, have a look at the screen shot Metrics-suggestion1.png that shows a more clear way of representing metrics like this.


Version-Release number of selected component (if applicable):
JBoss ON 3.3.8

How reproducible:
Always

Steps to Reproduce:
1. Install JBoss ON 3.3.8;
2. Create metric group graph for 10 and more resources


Actual results:
Unusable and incorrect graphs as shown on the attached screen shots Metrics3.png, Metrics4.png and Metrics5.png

Expected results:
Group graph showing a line directly between the data points - as in the screen shot Metrics-suggestion1.png


Additional info:

Comment 2 Larry O'Leary 2017-02-28 18:49:47 UTC
Created attachment 1258481 [details]
Suggestion 1 - Use extra line to plot curve without NaN and NULL values

The screen shot demonstrates how the non-zero values can be clearly communicated using an extra line to plot the curve without the zeros.

The goal should be to only display a graphed point reflecting 0 if the metric value is truly 0.

Comment 3 Larry O'Leary 2017-02-28 18:53:13 UTC
Created attachment 1258482 [details]
Suggestion 2 - Use dotted line of the same color to plot curve without NaN and NULL values

Suggestion 2 is similar to suggestion one but instead of using an extra line, it uses the existing and removes the NaN and NULL values completely and changes the line's pattern for the data points that would previously have been displayed as 0 due to their NaN or NULL values.

This makes the graph represent the actual data but also makes it clear that the large gaps between actual data represents missing or non-collected data.

Comment 4 Stian Lund 2017-03-01 09:35:39 UTC
Larry, 
just to be clear, since I made the mock-up suggestion 1:

It was never intended to be suggesting that two lines should be drawn, the red line is what I suggest the graph should look like -- the blue one is there just because I wanted to show the difference in readability (and I was too lazy to erase it :).

I have made another showing what I mean more clearly (Metrics-suggestion1-1.png)

Generally I think the way JON drew lines for grouped metrics in the "old" method (before it was changed in JON 3.2 I belive) was working fine. Lines were drawn conneting the data-points, regardless of whether there was null data in between. Which makes sense - if there's no data we have no way of knowing how to draw the line, it could just as easily have been *higher* at that specific point, we just don't know.

Now there might be some details here on the reasons why it needs to explicitly show null/NaN points, that I am not aware of, if so excuse my ignorance, I do not know the code here.

I am not so sure I think the dotted lines are a good idea either, again for readability, especially when you have more than 2-3 resources. I could imagine it could be just as unreadable with the dots. Another problem is in small intervals, you would have every 2nd point being a null, so the graph would just be dots... how do you explain why it looks like this to the user?

My biggest issue with the new 3.3.8 implementation was that the black dots were so big they obscured everything else. Possibly another solution would be to make them *much* smaller, barely larger than the line width, or for instance draw small 'ticks' on the line instead of large dots.

I am attaching some other suggestions, Metrics-suggestion1-2 and Metrics-suggestion1-3.

Comment 5 Stian Lund 2017-03-01 09:36:31 UTC
Created attachment 1258618 [details]
Suggestion 1 - original intent

Comment 6 Stian Lund 2017-03-01 09:37:02 UTC
Created attachment 1258620 [details]
Suggestion 3 - small dots

Comment 7 Stian Lund 2017-03-01 09:37:32 UTC
Created attachment 1258621 [details]
Suggestion 4  - small ticks

Comment 8 Stian Lund 2017-03-01 09:57:16 UTC
Another really useful improvement would be the addition of a small overlay showing the resource name, time and metric, similar to the ones showing in the single-resource graphs.

This would show when hovering over the line data points. in this instance it would probably be better if some mark was drawn to show the data point, a small tick or a dot.

I made a small mock-up, obv. this is not as pretty as I think it could be with a smaller font and a semi-transparent layer :)

See Metrics-suggestion1-with Overlay.png

Comment 9 Stian Lund 2017-03-01 09:57:54 UTC
Created attachment 1258625 [details]
Suggestion 1 - with data overlay

Comment 10 Larry O'Leary 2017-03-02 15:38:55 UTC
Comment on attachment 1258481 [details]
Suggestion 1 - Use extra line to plot curve without NaN and NULL values

Marking as obsolete as this graph was redone and seen in attachment 1258618 [details]

Comment 11 Larry O'Leary 2017-03-02 19:03:33 UTC
@Stian, I think your original suggestion 1 from attachment 1258618 [details] would be the most appropriate. I also think my suggestion from attachment 1258482 [details] would work. The dotted/dashed line is no different then the solid line. However, it really is not necessary. 

The missing data points simply shouldn't matter. And therefore your solution 1 is ideal. If for some reason the design to include plotting non-existent data is important, then perhaps your solution 3 will work as well.

The JBoss ON product team will do some more research and determine what the best course of action should be based on your feedback.

As for what you bring up in comment 8, I agree. This would be very useful and is something that has been officially requested in the past. However, JBoss ON is currently in its maintenance life-cycle and therefore no new features or feature changes will be considered.

This particular issue falls into data integrity as the 0s are misleading and therefore, classifies the original issue as a bug.

If you need to discuss further or sensitive details, please capture a new ticket in the support portal.

Comment 12 Josejulio Martínez 2017-03-04 00:26:15 UTC
Created attachment 1259811 [details]
screenshots of proposed fix.

I attach a proposal (PR: https://github.com/rhq-project/rhq/pull/296 )

Datasource max time pool before this fix: graph01_before.png
Datasource max time pool after this fix: graph01_after.png

CPUs before this fix: graph02_before.png
CPUs after this fix: graph02_after.png

@(Larry, Stian): Please take a look.

Comment 13 Larry O'Leary 2017-03-08 16:25:57 UTC
@Josejulio, your suggested fix looks good to me.

I would recommend that we proceed unless you have other push back or other ideas.

Comment 14 Josejulio Martínez 2017-03-08 16:59:52 UTC
No other ideas to work on.

I think that currently it might look bit weird when missing data, but I guess it makes more obvious that we don't have the data.

Comment 15 Stian Lund 2017-03-08 18:06:17 UTC
I wholeheartedly agree :)

Comment 16 Josejulio Martínez 2017-03-09 17:20:43 UTC
commit 5c76d75d2a19f761179e98058ffafb0bdc87e25a
Merge: 499bdca 00bdb34
Author: Michael Burman <yak>
Date:   Thu Mar 9 16:18:00 2017 +0200

    Merge pull request #296 from josejulio/bugs/1427571
    
    Bug 1427571 - Solve Unusable group metric graphs.


commit 00bdb34c5aaacd11d8758c47d9f9fead3a904ae9
Author: Josejulio Martínez <jmartine>
Date:   Fri Mar 3 18:21:46 2017 -0600

    Bug 1427571 - Solve Unusable group metric graphs.

Comment 18 Simeon Pinder 2017-09-01 15:34:10 UTC
Moving to ON_QA as available for test with the following binary:
http://download.eng.bos.redhat.com/brewroot/packages/org.jboss.on-jboss-on-parent/3.3.0.GA/133/maven/org/jboss/on/jon-server-patch/3.3.0.GA/jon-server-patch-3.3.0.GA.zip

*NOTE Build represents JON 3.3.9 DR01 build.

Please report issues as you encounter them.

Comment 20 Prachi 2017-09-06 13:37:59 UTC
Version :	
3.3.0.GA Update 09
Build Number :	
74b22f5:8c38c0a

Verified in Firefox, need to test in IE

Comment 22 Prachi 2017-09-11 13:20:57 UTC
It is broken in IE 9

Comment 23 Prachi 2017-09-11 13:26:52 UTC
Created attachment 1324465 [details]
graph screen-shot

graph screen-shot IE 9

Comment 24 Josejulio Martínez 2017-09-12 22:13:38 UTC
commit 5b0c9f699d0f37c5c14103fa4c2a78af3bc60ef9
Merge: bed752f 6f20296
Author: Ruben Vargas <ruben.vp8510>
Date:   Tue Sep 12 13:33:55 2017 -0500

    Merge pull request #323 from josejulio/bugs/1427571
    
    Bug 1427571 - Sets height of chart area to 100% to avoid cropping whi…

commit 6f2029685c64799cbb4b1e9f56feb79b5cbd889f
Author: Josejulio Martínez <jmartine>
Date:   Tue Sep 12 13:26:01 2017 -0500

    Bug 1427571 - Sets height of chart area to 100% to avoid cropping while using IE9

Comment 26 Simeon Pinder 2017-09-19 11:33:14 UTC
Moving to ON_QA.

JON 3.3.9 CR01 artifacts are available for test from here:
http://download.eng.bos.redhat.com/brewroot/packages/org.jboss.on-jboss-on-parent/3.3.0.GA/135/maven/org/jboss/on/jon-server-patch/3.3.0.GA/jon-server-patch-3.3.0.GA.zip
 *Note: jon-server-patch-3.3.0.GA.zip maps to CR01 build of
 jon-server-3.3.0.GA-update-09.zip.

Comment 27 Prachi 2017-09-21 04:52:09 UTC
Verified

Version :	
3.3.0.GA Update 09
Build Number :	
44ba698:204e925

Comment 28 Prachi 2017-09-21 04:54:46 UTC
Created attachment 1328755 [details]
screen-shot-1

Comment 29 errata-xmlrpc 2017-10-02 17:21:51 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2017:2846


Note You need to log in before you can comment on or make changes to this bug.