VMware Cloud Community
Seer
Contributor
Contributor

Viewing Charts 'Outside' of HQ

I am looking to make a simple Status Screen for our environment that can be put on a big screen. I have seen the wallmount plugin, but its not really what we want.

I am thinking a simple auto refreshed 8 frame page with a different chart on each. I realise I will have to log onto hq in each frame initially, cumbersome but then that machine just sits there and refreshes the same 8 charts every few minutes for eternity I would only need to reenter these details whenever the machine crashed (about once a year!). An example chart would be

http://ourserver.com:7080/resource/MetricChart?unitUnits=2&unitScale=1&showPeak=true&showHighRange=t...

so obviously the key things in the url I want to change are

start=1245049020395
end=1245077820395

Working out the URLS is relatively simple, except the timeframes.... how do I set the range 'Now minus 4 hours'

Secondly to try and avoid the logging in all 8 frames scenario is there a way to pass the username password in the url? (its access is restricted to a few internal IP's so security is not really an issue.
0 Kudos
8 Replies
iugav
Contributor
Contributor

i am looking for solution to aggregate different charts from different groups on the same screen. So i am also interested in this.

seer,
What is Wallmount plugin?
0 Kudos
jvalkeal_hyperi

times are epoch values as nano representation.

In java see java.lang.System.nanoTime. Don't know how you are planning to create those links, If using javascript, think you need:
var Now = new Date();
var Start = Now.getTime();
and then add extra three zeros to get nano. Well, you get the point, and google always helps.

wallmount:
http://support.hyperic.com/display/hypcomm/HQU+Wall+Mount
Seer
Contributor
Contributor

Thanks for the input so far.

As you have already been linked to the wallmount plugin, i will just give a summary description .... Its a configurable page with buttons that indicate the availability of platforms, servers, services etc.

What we want is charts.... if a server is unavailable you are already too late! It is meant to be a preventative tool where we can spot negative trends and act BEFORE something becomes unavailable 🙂

To be more thorough in my description of what I have been trying to achieve ... all we need is 8 charts laid out in a 2x4 grid on one auto refreshing page (the refreshing part is easy).

ThreadPool Size for all Appservers
Active Threads for all AppServers
JDBC Pool for all AppServers
Used JDBC Pool for all AppServers
JVM Free Heap for all AppServers
Throughput for all AppServers (need to make a custom plugin for this I think)
Busy Workers for all WebServers
Workers Waiting for all WebServers

To be honest, this area is one that Hyperic really does suck. Its a fantastic tool for collecting the metrics, but I think extracting the information in a format that you want is awful. For a product that is uses slogans such as "Operations Intelligence" it clearly is made by people who have never worked in any large Operations environment.

This problem is the clearest example of that, what large operations unit doesn't have a giant screen with key measurements for all to see? Such a mode's omission from HQ is pretty inexcusable frankly.

I have already made these rants elsewhere so won't go too much further 🙂
0 Kudos
iugav
Contributor
Contributor

that's exactly what i want! if you will find this "magic" please post it
0 Kudos
Seer
Contributor
Contributor

I am trying, but my problems are two-fold.

1. is the time stamp problem mentioned above. I have an ugly solution in mind with a cgi that gets the current time and calculates the time minus 4 hours in the correct format. But that now brings me onto the next issue...

2. the link to a graph that I gave above does exist until it has been requested 'within' HQ and then only exists for a certain amount of time. I am trying to work out the details of how it is done. But its getting more complicated minute by minute lol

So the quick and dirty solution is getting less quick and more dirty the more I dig into it, so it may be I have to look at brushing up my programming skills for a full-on HQU plugin. Unfortunately with my 'speed', upcoming vacations and other responsibilities it could be a very long time. Time I did not expect to be needing for a supposed complete solution 🙂
0 Kudos
jimesti
Contributor
Contributor

Actually the wallmount plugin is fairly close....it's just that it only shows the status instead of the graph.

Wouldn't it be possible to modify the wallmount plugin to show the charts/graphs instead of just a Yes/No button?

Jim
0 Kudos
Seer
Contributor
Contributor

Quite possibly, but I have 2 days left before vacation and parental leave of a couple of months... I will take a quick look if I get the chance, but wouldn't hold my breath 🙂 Hopefully by the the time I get back either Hyperic will implement something, someone far brighter and quicker than I will have figured it out, or I will have the time to create something from scratch 🙂
0 Kudos
Seer
Contributor
Contributor

Yes it is possible!!!!!! I finally had some time to work on it and I have achieved it with some javascript.

It is dead simple really, the only hard part (for me) was finding some way of getting the unix time since epoch within a page and then I found that javascript could do it. It was all downhill from there!

I attach an example script (obviously you need to change server names and metric id's). After editing the script to your needs you can just include it in any HTML and off you go.

A very rough draft of our wall screen is also attached. Simple, dirty, but effective 😉 When its finished it will be all ajax and sexy 🙂 I use meta refresh to refresh the page once every 60 secs, and the web chart on the right is a seperate cgi query webserver status in a frame which refreshes every 5 secs.

Now I have one outstanding issue. In order for this to work a user must log onto hyperic first, and then go to this page. Anyone know how to pass a username and password in the script so that it logs the user on automatically if no hyperic browser session already exists?
0 Kudos