Bug 1614857

Summary: Memory Utilization chart doesn't follow usual conventions for reporting memory usage
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Martin Bukatovic <mbukatov>
Component: web-admin-tendrl-monitoring-integrationAssignee: gowtham <gshanmug>
Status: CLOSED WONTFIX QA Contact: sds-qe-bugs
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rhgs-3.4CC: fbalak, julim, nthomas, rhs-bugs, sankarshan
Target Milestone: ---Keywords: ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-08 16:25:01 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
screenshot 1: Memory Utilization chart on Host dashboard
none
screenshot 2: munin memory chart for the same machine and time range, which uses stacked area graph
none
google image search, looking for "memory utilization graph" images: all top results reports memory utilization using stacked are charts none

Description Martin Bukatovic 2018-08-10 14:34:42 UTC
Description of problem
======================

Memory Utilization chart doesn't follow usual conventions for reporting
memory usage:

 * stacked area graph[1] is not used to convey the data

 * choice of different types of memory allocation reported in the chart
   looks weird (eg. both cache and slab reclaimable is reported, even though
   cache (usually) includes slab reclaimable memory as well)

This makes this chart less convenient and harder to understand.

[1] https://datavizcatalogue.com/methods/stacked_area_graph.html

Version-Release number of selected component
============================================

tendrl-monitoring-integration-1.6.3-7.el7rhgs.noarch

Steps to Reproduce
==================

1. Instal RHGS WA using tendrl-ansible
2. Import Trusted storage pool with at least one volume
3. Let RHGS WA to monitor cluster for some time
4. Go to Host dashboard and check Memory Utilization chart there

Actual results
==============

The chart report each type of memory allocation independently, plotting it
as a line chart.

This makes it hard to understand the data reported there.

See screenshot 1.

Expected results
================

The Memory Utilization panel uses tacked area graph (see screenshots with
example of such charts).

Values reported on the chart matches Red Hat recommendations about reporting
memory usage.

Additional info
===============

Related to BZ 1614001 (Description of Memory Utilization panel on Host
dashboard is misleading).

Definition of stacked are graph:
https://datavizcatalogue.com/methods/stacked_area_graph.html

Why is stacked area graph preferred for reporting memory utilization:
https://blog.serverdensity.com/how-to-design-useful-monitoring-graphs-and-visualizations/

See screenshot of google image search, looking for "memory utilization graph"
images: all top results reports memory utilization using stacked are charts.

This particular design of RHGS WA Memory Utilization charts has been discussed
upstream here: https://github.com/Tendrl/monitoring-integration/issues/164

See also design wikipage of Cockpit project about fMemory graphs:
https://github.com/cockpit-project/cockpit/wiki/Feature:-Memory-graphs

Comment 1 Martin Bukatovic 2018-08-10 14:41:06 UTC
Created attachment 1475092 [details]
screenshot 1: Memory Utilization chart on Host dashboard

Comment 2 Martin Bukatovic 2018-08-10 14:43:12 UTC
Created attachment 1475094 [details]
screenshot 2: munin memory chart for the same machine and time range, which uses stacked area graph

Comment 3 Martin Bukatovic 2018-08-10 14:46:09 UTC
Created attachment 1475098 [details]
google image search, looking for "memory utilization graph" images: all top results reports memory utilization using stacked are charts

Comment 5 Ju Lim 2018-08-13 16:19:48 UTC
I too agree the memory and CPU "trend" charts should be stacked.  I don't recall the previous upstream issues on this, but I know there's lots of issues raised upstream how to do stacked charts in grafana and it not always working and depends on the grafana version and plug-in.

That being said, I don't believe we can stack if with line charts (as stacked area charts like in Munin), but it looks like we can do this with the stacked bar charts in grafana.  See http://docs.grafana-zabbix.org/guides/gettingstarted/ (do a find for "stacked bars" and it should be fairly straight forward to change this, and there might be some adjustments with regards to max data points to make it look better.)

Thoughts?

Similar to https://bugzilla.redhat.com/show_bug.cgi?id=1614877.