Creating a dial gauge graph
The Dial Gauge feature enables you to see monitor data graphically in a semi-circular gauge with a dynamic needle that fluctuates between the last three data poll values for the specified attribute. Dial gauges are used to show a real-time feed of the latest data points, which is best suited for very important attributes that require close attention.
Views containing dial gauges are not updated every two minutes like other views. The gauge fluctuates between the last three data poll values, simulating real-time movement. Displayed color zones are as per threshold settings of the specified monitor and show red for critical, orange for major, yellow for minor thresholds, and green for normal behavior.
Like other graph options, when you click the thumbnail, the Graph Display screen appears, and you can modify the graph as needed.
The dial gauge applet polls the server for data according to the predefined poll interval. (This can be configured.) The gauge displays the current value at the bottom. The needle pauses for a longer duration at the CURRENT data point highlighting the most current value. If there is no response or no data from the monitor, the needle points to zero, and the system displays an appropriate message at the bottom.
To create a dial gauge graph
- In the navigation pane in the Operations Console, click Views & Graphs.
- In the Views & Graphs drawer, click the Custom Graphs icon
.
- In the Custom Graphs screen, select the Dial Gauge option
.
- Select Group Filter.
- Select Monitor Type, and click Next.
The system populates the corresponding instances in the lower pane. - Select Monitor Instance, and click Apply.
- On the Custom Graphs screen, select Single Attribute.
- Under Display Options, select the display options from the list.
You can choose to show either Intelligent Event or SLO threshold zones on the gauge. The dial gauge displays major, minor, critical, or SLO thresholds and show the actual value of the attribute on the gauge. - In the Add this Graph to View section (Dial Gauges can only be configured to be seen from a View), specify the graph name (name for the dial gauge).
- Choose to create a new view or add the graph to an existing view.
Click Add to View.
For add to new view selection, specify the name of the view. For add to existing view selection, the graph is available under the selected view. Any other graph you add to the view is also visible. From here, you can add, edit, and delete the view by choosing the corresponding buttons.
The gauge repeats the last three values over and over again until a new data point is received from the monitor, at which point the oldest data point in the gauge is discarded. That is, every time the needle changes position on the gauge, it does not mean that the gauge is displaying a new data point. The latest three data values for that attribute, which give an indication of the latest trend and most up to date values, are displayed. The last data value is always shown for the longest period to make it clear that it is the most current value.
Limitations of dial gauge graphs
- Dial gauges can be added ONLY to a view.
- Dial gauge administration can be done only through the Operations Console.
- Dial gauge display requires a supported version of Java Plug-in. If the plug-in is not available, then a gray box is displayed. For information about supported Java Plug-in versions, see _System requirements and product compatibility_information in the online technical documentation for BMC ProactiveNet at http://docs.bmc.com/docs/display/PN90/System+requirements+and+product+compatibility.
- For instances or attributes where thresholds are defined both above and below, example, yahoo response time minor > 100ms and major < 50 ms (this must not happen but in case it is configured this way), the below type threshold is ignored.
- It is assumed that thresholds are defined in an increasing order (for above type thresholds), that is, minor < major < critical; if this is not so, then the larger zone overlaps the smaller one.
- Initial loading of the applet takes some time.So, when the user accesses the page for the first time, the delay is more compared to subsequent accesses.
Due to the increased loading time for applets, too many dial gauges in a single view have performance implications. It is recommended that a maximum of 12 dial gauges be used in a single view.
- If threshold is not defined, the system displays a normal gauge (that is, full green).
- Tooltips are not displayed for dial gauges on the View page. However, tooltip is available for the link below.
- If the difference between threshold values is very less, the user may not be able to notice the color defined for the zone in the dial gauge.
- Dial gauge displays zero for negative data values.
- Very large numbers (11 or more digits) may not appear clearly on the gauge. However, there is no implication on the accuracy of data displayed below the gauge.
- For large values, the value may overlap with the zone separator line.
- For very small values that is values below 0.001, the needle displays very close to zero.
- If the proxy server used requires authentication, the user is prompted for the user name and password while accessing a view containing dial gauges.
- Exceptions on the plug-in console do not interfere with the functioning of the gauge and can be ignored.
The following exceptions may be seen in the plug-in console:
- On some Internet Explorer versions, if the dashboard contains a dial gauge in the second row, sometimes, the dial gauge in the second row appears as overlapped with the All Events page below. Scrolling the dashboard clears this.
Exceptions that may be observed in the plug-in console:
java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
at java.util.Vector.elementAt(Unknown Source)
at com.elegantj.gauges.dial.Circle.calValueAngle(Circle)
at com.elegantj.gauges.dial.Circle.drawNeedle(Circle)
at com.elegantj.gauges.dial.Dial.renderDial(Dial)
at com.elegantj.gauges.dial.Dial.paint(Dial)
at com.elegantj.gauges.dial.Dial.update(Dial)
at sun.awt.RepaintArea.paint(Unknown Source)
at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
-------------------------------------------------------------------------------
java.lang.NullPointerException
at com.elegantj.gauges.dial.Circle.totalDiv1(Circle)
at com.elegantj.gauges.dial.Circle.drawZone(Circle)
at com.elegantj.gauges.dial.Dial.renderDial(Dial)
at com.elegantj.gauges.dial.Dial.paint(Dial)
at com.elegantj.gauges.dial.Dial.update(Dial)
at sun.awt.RepaintArea.paint(Unknown Source)
at sun.awt.windows.WComponentPeer.handleEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)