SHOWGRAPH.CGI(1)
π SHOWGRAPH.CGI(1) π
okay bestie, pull up a chair, because today we're learning about showgraph.cgi β a whole CGI script whose entire job is making Xymon trend graphs pop off. it lives in section 1 of the manual (you know, the general commands manual) and honestly? she's iconic. β¨
β¨ SYNOPSIS β¨
showgraph [options]
πΈ DESCRIPTION πΈ
so the tea is: showgraph.cgi doesn't just walk in the front door, no ma'am. she gets invoked as a CGI script through the showgraph.sh CGI wrapper. that's the whole entrance situation. π
and how does she know what you want? she gets handed a QUERY_STRING environment variable stuffed with the following parameters, and she reads them like a group chat she's been waiting all day to reply to:
hostβ the name of the host you want a graph for. like, whose graph are we making, babe?serviceβ the name of the service you want a graph for.dispβ the display-name of the host. this is what actually shows up on the generated graphs instead of the hostname. cute nickname energy, lowkey.graphβ can be"hourly","daily","weekly"or"monthly", and it picks the time period the graph covers. choose your era. β°firstβ used to split multi-graphs into multiple graphs. this makesshowgraph.cgigenerate only the graphs starting with the"first"th graph and continuing for"count". yes, the original really does put"first"and"count"in quotes like that, we respect the lore. πcountβ the number of graphs in a multi-graph. how many are we serving today.upperβ sets the upper limit of the graph. peeprrdgraph(1)for the description of the-uoption.lowerβ sets the lower limit of the graph. peeprrdgraph(1)for the description of the-loption.graph_startβ sets the starttime of the graph. this one is used in zoom-mode. πgraph_endβ sets the end-time of the graph. also zoom-mode coded.action=menuβ generates an HTML page with links to 4 graphs, representing the hourly, weekly, monthly and yearly graphs. and get this β it doesn't actually generate any graphs at all, just the HTML that links to them. she's a connector, not a maker. πaction=selzoomβ generates an HTML page with a link to a single graph, plus JavaScript code that lets the user select part of the graph for a zoom-operation. the JavaScript then invokesshowgraph.cgiwith"action=showzoom"to generate the zoomed graph webpage. nesting dolls but make it graphs.action=showzoomβ generates HTML with a link to the zoomed graph image. that link goes to an"action=view"invocation ofshowgraph.cgi.action=viewβ generates a single graph image. that's it, that's the one. β¨
π OPTIONS π
--config=FILENAMEβ loads the graph configuration file from FILENAME. if you don't specify one, the file$XYMONHOME/etc/graphs.cfggets used instead. wanna know all about that file? checkgraphs.cfg(5), it spills everything. π--env=FILENAMEβ loads the environment settings defined in FILENAME before executing the CGI. get dressed before you go out, basically. π§--rrddir=DIRECTORYβ the top-level directory for the RRD files. if you don't specify it, the directory given by theXYMONRRDSenvironment gets used. home is wherever the RRDs are. π--save=FILENAMEβ instead of returning the image via the CGI interface (i.e. on stdout), it saves the generated image to FILENAME. no stage fright, just file it away. πΎ--debugβ enable debugging output. turn the mic on, bestie. π€
π ENVIRONMENT π
QUERY_STRINGβ provided by the webserver CGI interface, this is the thing that decides what graph gets generated. she's the main character of the env vars, no cap. πRRDGRAPHOPTSβ RRD-specific options for the graph. this is usually set in thexymonserver.cfg(5)file.
π¦ FILES π¦
graphs.cfgβ the configuration file determining how graphs are generated from RRD files. the blueprint, the vision board, the whole plan. π
β SEE ALSO β
and that's the whole page, bestie β go forth and graph. this was Xymon, Version 4.3.30: 4 Sep 2019, and honestly? she ate. periodt. πβ¨π«Ά
π¦ where this page comes from
- debian bookworm: xymon 4.3.30-1+b2 Β· GPL-2.0-only WITH OpenSSL exception
- debian trixie: xymon 4.3.30-4 Β· GPL-2.0-only WITH OpenSSL exception
- ubuntu jammy: xymon 4.3.30-1build2 Β· GPL-2.0-only WITH OpenSSL exception
- ubuntu jammy: xymon 4.3.30-1ubuntu0.1 Β· GPL-2.0-only WITH OpenSSL exception
- ubuntu noble: xymon 4.3.30-2build3 Β· GPL-2.0-only WITH OpenSSL exception
- ubuntu noble: xymon 4.3.30-2ubuntu0.1 Β· GPL-2.0-only WITH OpenSSL exception
- ubuntu questing: xymon 4.3.30-4
- ubuntu resolute: xymon 4.3.30-5 Β· GPL-2.0-only WITH OpenSSL exception
- ubuntu stonking: xymon 4.3.30-6 Β· GPL-2.0-only WITH OpenSSL exception
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms