The only question I have is will this new libhttpd approach allow for
easy customization of the look and feel, like how the current php
version has templates that can be modified for the local site.  Also,
will there be a frontend plugin feature or something to go along with
the new gmetric plugin replacement so custom metrics can be included in
the frontend display?

~Jason


On Wed, 2003-09-03 at 15:03, matt massie wrote:
> guys-
> 
> i know you haven't heard from me in a while.  i've been pretty busy lately
> at work and personally.  i moved out of berserkly. in between packing
> boxes i did sit at my laptop and get to the code.  there have been a lot
> of changes.
> 
> i got to work on writing the PHP code when it hit me.  why do we need to 
> have a web server with PHP anyway??  i found i was rewriting much of my C 
> code in PHP just to make it work.  the PHP scripts were connecting to a 
> gmetad .. pulling the data over the wire .. putting it into a PHP data 
> structure.
> 
> enter libhttpd
> 
> libhttpd is a C library that lets you embed a web server into any 
> application.  http://www.hughes.com.au/products/libhttpd/
> 
> libhttpd has some limitations but i think it will get us going in the 
> right direction.  i hacked to work with the non-blocking i/o PTH model,  
> changed a couple of functions to report error conditions (such as a client 
> prematurely snapping the connection)... if you want to know all the 
> details to a look at ./lib/httpd_NOTES in the latest snapshot.
> 
> btw, i just uploaded the latest snapshot to the g3 page.  you can get it 
> from http://ganglia.sourceforge.net/g3blog/ganglia-3.0.0.tar.gz .  i've 
> tested this snapshot on linux and cygwin.. please let me know what you 
> find on other operating systems.
> 
> if you want to see a demo of the new gmetad in action visit,
> 
>          http://touch.millennium.berkeley.edu:8652/
> 
> don't expect the most amazing web page you've ever seen (yet).  it just 
> has a generic welcome (which can be altered in the gmetad config) and 
> links to two pages.
> 
> if you want to browse the data tree on this gmetad server, visit..
> 
>         http://touch.millennium.berkeley.edu:8652/browse/
> 
> i hope this web page will give you an idea of how fast gmetad can search 
> and serve data (at the bottom of the page is information on how many 
> seconds it takes to search for the data and serve the page).  this demo 
> gmetad is monitoring 190 machines.  try as many search queries as you like 
> and please tell me if you find it takes more than a 1/1000th of a second 
> to perform your query.  of course the time it takes to send the data is 
> another story.. it takes a second or so to send all the html over the 
> wire.  
> 
> i know the browse page is not all that amazing.  but when you see how 
> little C code was required to make it.. that's the amazing part.  i'll be 
> adding historical data browsing (aka graphs) today (along with fixing the 
> on-the-fly summaries and reporting hosts up and down).
> 
> if you want to just get the raw XML in "text/xml" format instead of html 
> just tune your browser/client to...
> 
>        http://touch.millennium.berkeley.edu:8652/query/
> 
> and you'll get an XML stream.  this XML stream is what upstream gmetad 
> will pull to add other gmetad to their data tree.  try this...
> 
> % curl http://touch.millennium.berkeley.edu:8652/query/?depth=1
> 
> you will get an XML stream of all data directly connected to the gmetad 
> data root.  on this server it is 4 clusters and all the summary data for 
> the 4 clusters.
> 
> examples,
> 
> % curl 
> "http://touch.millennium.berkeley.edu:8652/query/?filter=load_one&depth=1";
> 
> will give you the overall 1-minute load for all machines known to the 
> server.
> 
> % curl http://touch.millennium.berkeley.edu:8652/query/?age=15
> 
> will return all data that has changed on this gmetad in the last 15 
> seconds.
> 
> i'm thinking that in g3 there will only be a single daemon (gangliad) that 
> replaces gmond/gmetad.  when you think about it.. there is no difference 
> between gmond and gmetad really.  gmond listens to multicast traffic and 
> talks XML .. gmetad listens to xml traffic and talks xml.  if we broaden 
> our idea of a data source.. i think we can have instances of gangliad 
> running everywhere playing different roles.
> 
> you would have gangliad running on each node in your cluster polling 
> modules locally to collect metric information and sharing it over 
> multicast and via XML.  another gangliad would poll a group of gangliad 
> and have historical processing turned on (like the old gmetad).  aggregate 
> the data and share it upstream.
> 
> tcp://1.1.1.1:4567
> module://load
> module://memory
> http://2.3.4.5/query/?depth=1
> udp://239.2.11.71:8649
> 
> would all be valid data sources.
> 
> i'll check back in soon .. let me know if you find a way to crash the 
> demo gmetad.  
> 
> also, for the developers in the U.S.... i hope you had a great labor day 
> weekend. 
> 
> -matt
> 
> p.s. please let me know if you think we're going in the wrong direction 
> with g3.  feedback is appreciated.
> 
> 
> 
> 
> -------------------------------------------------------
> This sf.net email is sponsored by:ThinkGeek
> Welcome to geek heaven.
> http://thinkgeek.com/sf
> _______________________________________________
> Ganglia-developers mailing list
> Ganglia-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ganglia-developers
-- 
/------------------------------------------------------------------\
|  Jason A. Smith                          Email:  [EMAIL PROTECTED] |
|  Atlas Computing Facility, Bldg. 510M    Phone:  (631)344-4226   |
|  Brookhaven National Lab, P.O. Box 5000  Fax:    (631)344-7616   |
|  Upton, NY 11973-5000                                            |
\------------------------------------------------------------------/


Reply via email to