Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Re-tagging 3.1.0 (SVN r1562)

  • Loading branch information...
commit a712c9162a1fceaa4bafa99ec5394ce45cb99189 2 parents 18e0cb1 + a1948a9
bernardli authored
Showing with 1 addition and 35,958 deletions.
  1. +1 −1  configure.in
  2. +0 −7 monitor-core-3.1/AUTHORS
  3. +0 −4 monitor-core-3.1/BUGS
  4. +0 −18 monitor-core-3.1/COPYING
  5. +0 −55 monitor-core-3.1/INSTALL
  6. +0 −68 monitor-core-3.1/Makefile.am
  7. +0 −2  monitor-core-3.1/NEWS
  8. +0 −56 monitor-core-3.1/README.AIX
  9. +0 −37 monitor-core-3.1/README.SVNusers
  10. +0 −50 monitor-core-3.1/README.WIN
  11. +0 −153 monitor-core-3.1/STATUS
  12. +0 −138 monitor-core-3.1/acinclude.m4
  13. +0 −23 monitor-core-3.1/bootstrap
  14. +0 −636 monitor-core-3.1/configure.in
  15. +0 −35 monitor-core-3.1/contrib/README.contrib
  16. +0 −98 monitor-core-3.1/contrib/diskfree_report.php
  17. +0 −34 monitor-core-3.1/contrib/ganglia_gmetad.xml
  18. +0 −34 monitor-core-3.1/contrib/ganglia_gmond.xml
  19. +0 −109 monitor-core-3.1/ganglia-config.in
  20. +0 −1,048 monitor-core-3.1/ganglia.pod
  21. +0 −245 monitor-core-3.1/ganglia.spec.aix
  22. +0 −466 monitor-core-3.1/ganglia.spec.in
  23. +0 −22 monitor-core-3.1/gmetad/Makefile.am
  24. +0 −2  monitor-core-3.1/gmetad/build_type_hash
  25. +0 −2  monitor-core-3.1/gmetad/build_xml_hash
  26. +0 −223 monitor-core-3.1/gmetad/cleanup.c
  27. +0 −541 monitor-core-3.1/gmetad/cmdline.c
  28. +0 −178 monitor-core-3.1/gmetad/cmdline.h
  29. +0 −86 monitor-core-3.1/gmetad/cmdline.sh
  30. +0 −323 monitor-core-3.1/gmetad/conf.c
  31. +0 −27 monitor-core-3.1/gmetad/conf.h
  32. +0 −186 monitor-core-3.1/gmetad/data_thread.c
  33. +0 −63 monitor-core-3.1/gmetad/gmetad.aix.init
  34. +0 −433 monitor-core-3.1/gmetad/gmetad.c
  35. +0 −114 monitor-core-3.1/gmetad/gmetad.conf
  36. +0 −248 monitor-core-3.1/gmetad/gmetad.h
  37. +0 −46 monitor-core-3.1/gmetad/gmetad.init
  38. +0 −120 monitor-core-3.1/gmetad/gmetad.init.SuSE
  39. +0 −146 monitor-core-3.1/gmetad/metric_hash.c
  40. +0 −1,206 monitor-core-3.1/gmetad/process_xml.c
  41. +0 −208 monitor-core-3.1/gmetad/rrd_helpers.c
  42. +0 −6 monitor-core-3.1/gmetad/rrd_helpers.h
  43. +0 −636 monitor-core-3.1/gmetad/server.c
  44. +0 −107 monitor-core-3.1/gmetad/type_hash.c
  45. +0 −24 monitor-core-3.1/gmetad/type_hash.gperf
  46. +0 −129 monitor-core-3.1/gmetad/xml_hash.c
  47. +0 −42 monitor-core-3.1/gmetad/xml_hash.gperf
  48. +0 −20 monitor-core-3.1/gmetric/Makefile.am
  49. +0 −690 monitor-core-3.1/gmetric/cmdline.c
  50. +0 −204 monitor-core-3.1/gmetric/cmdline.h
  51. +0 −96 monitor-core-3.1/gmetric/cmdline.sh
  52. +0 −104 monitor-core-3.1/gmetric/gmetric.c
  53. +0 −45 monitor-core-3.1/gmond/Makefile.am
  54. +0 −658 monitor-core-3.1/gmond/cmdline.c
  55. +0 −198 monitor-core-3.1/gmond/cmdline.h
  56. +0 −91 monitor-core-3.1/gmond/cmdline.sh
  57. +0 −482 monitor-core-3.1/gmond/conf.pod
  58. +0 −66 monitor-core-3.1/gmond/core_metrics.c
  59. +0 −57 monitor-core-3.1/gmond/dtd.h
  60. +0 −363 monitor-core-3.1/gmond/g25_config.c
  61. +0 −41 monitor-core-3.1/gmond/g25_config.h
  62. +0 −63 monitor-core-3.1/gmond/gmond.aix.init
  63. +0 −2,469 monitor-core-3.1/gmond/gmond.c
  64. +0 −46 monitor-core-3.1/gmond/gmond.init
  65. +0 −116 monitor-core-3.1/gmond/gmond.init.SuSE
  66. +0 −17 monitor-core-3.1/gmond/modules/Makefile.am
  67. +0 −35 monitor-core-3.1/gmond/modules/conf.d/example.conf.in
  68. +0 −65 monitor-core-3.1/gmond/modules/conf.d/modgstatus.conf.in
  69. +0 −17 monitor-core-3.1/gmond/modules/conf.d/modpython.conf.in
  70. +0 −52 monitor-core-3.1/gmond/modules/conf.d/multicpu.conf.in
  71. +0 −24 monitor-core-3.1/gmond/modules/cpu/Makefile.am
  72. +0 −90 monitor-core-3.1/gmond/modules/cpu/mod_cpu.c
  73. +0 −65 monitor-core-3.1/gmond/modules/cpu/mod_load.c
  74. +0 −598 monitor-core-3.1/gmond/modules/cpu/mod_multicpu.c
  75. +0 −14 monitor-core-3.1/gmond/modules/disk/Makefile.am
  76. +0 −93 monitor-core-3.1/gmond/modules/disk/mod_disk.c
  77. +0 −19 monitor-core-3.1/gmond/modules/example/Makefile.am
  78. +0 −126 monitor-core-3.1/gmond/modules/example/mod_example.c
  79. +0 −15 monitor-core-3.1/gmond/modules/memory/Makefile.am
  80. +0 −94 monitor-core-3.1/gmond/modules/memory/mod_mem.c
  81. +0 −15 monitor-core-3.1/gmond/modules/network/Makefile.am
  82. +0 −69 monitor-core-3.1/gmond/modules/network/mod_net.c
  83. +0 −15 monitor-core-3.1/gmond/modules/python/Makefile.am
  84. +0 −153 monitor-core-3.1/gmond/modules/python/README
  85. +0 −748 monitor-core-3.1/gmond/modules/python/mod_python.c
  86. +0 −14 monitor-core-3.1/gmond/modules/status/Makefile.am
  87. +0 −110 monitor-core-3.1/gmond/modules/status/mod_gstatus.c
  88. +0 −19 monitor-core-3.1/gmond/modules/system/Makefile.am
  89. +0 −63 monitor-core-3.1/gmond/modules/system/mod_proc.c
  90. +0 −74 monitor-core-3.1/gmond/modules/system/mod_sys.c
  91. +0 −6 monitor-core-3.1/gmond/python_modules/Makefile.am
  92. +0 −26 monitor-core-3.1/gmond/python_modules/conf.d/diskusage.pyconf
  93. +0 −32 monitor-core-3.1/gmond/python_modules/conf.d/example.pyconf
  94. +0 −69 monitor-core-3.1/gmond/python_modules/conf.d/tcpconn.pyconf
  95. +0 −11 monitor-core-3.1/gmond/python_modules/disk/Makefile.am
  96. +0 −132 monitor-core-3.1/gmond/python_modules/disk/multidisk.py
  97. +0 −11 monitor-core-3.1/gmond/python_modules/example/Makefile.am
  98. +0 −98 monitor-core-3.1/gmond/python_modules/example/example.py
  99. +0 −11 monitor-core-3.1/gmond/python_modules/network/Makefile.am
  100. +0 −344 monitor-core-3.1/gmond/python_modules/network/tcpconn.py
  101. +0 −17 monitor-core-3.1/gstat/Makefile.am
  102. +0 −248 monitor-core-3.1/gstat/cmdline.c
  103. +0 −57 monitor-core-3.1/gstat/cmdline.h
  104. +0 −90 monitor-core-3.1/gstat/cmdline.sh
  105. +0 −162 monitor-core-3.1/gstat/gstat.c
  106. +0 −3  monitor-core-3.1/include/Makefile.am
  107. +0 −75 monitor-core-3.1/include/ganglia.h
  108. +0 −52 monitor-core-3.1/include/ganglia_gexec.h
  109. +0 −105 monitor-core-3.1/include/gm_metric.h
  110. +0 −45 monitor-core-3.1/include/gm_mmn.h
  111. +0 −20 monitor-core-3.1/include/gm_msg.h
  112. +0 −34 monitor-core-3.1/include/gm_value.h
  113. +0 −41 monitor-core-3.1/lib/Makefile.am
  114. +0 −340 monitor-core-3.1/lib/apr_net.c
  115. +0 −28 monitor-core-3.1/lib/apr_net.h
  116. +0 −36 monitor-core-3.1/lib/become_a_nobody.c
  117. +0 −9 monitor-core-3.1/lib/become_a_nobody.h
  118. +0 −21 monitor-core-3.1/lib/daemon_inetd.c
  119. +0 −101 monitor-core-3.1/lib/daemon_init.c
  120. +0 −7 monitor-core-3.1/lib/daemon_init.h
  121. +0 −42 monitor-core-3.1/lib/debug_msg.c
  122. +0 −414 monitor-core-3.1/lib/default_conf.h.in
  123. +0 −1,371 monitor-core-3.1/lib/dotconf.c
  124. +0 −264 monitor-core-3.1/lib/dotconf.h
  125. +0 −165 monitor-core-3.1/lib/error_msg.c
  126. +0 −144 monitor-core-3.1/lib/file.c
  127. +0 −13 monitor-core-3.1/lib/file.h
  128. +0 −340 monitor-core-3.1/lib/ganglia.c
  129. +0 −38 monitor-core-3.1/lib/ganglia_priv.h
  130. +0 −1,252 monitor-core-3.1/lib/getopt.c
  131. +0 −181 monitor-core-3.1/lib/getopt.h
  132. +0 −188 monitor-core-3.1/lib/getopt1.c
  133. +0 −75 monitor-core-3.1/lib/getopt_init.c
  134. +0 −167 monitor-core-3.1/lib/gm_protocol.x
  135. +0 −54 monitor-core-3.1/lib/gm_scoreboard.h
  136. +0 −423 monitor-core-3.1/lib/hash.c
  137. +0 −60 monitor-core-3.1/lib/hash.h
  138. +0 −346 monitor-core-3.1/lib/inetaddr.c
  139. +0 −789 monitor-core-3.1/lib/libgmond.c
  140. +0 −129 monitor-core-3.1/lib/llist.c
  141. +0 −38 monitor-core-3.1/lib/llist.h
  142. +0 −21 monitor-core-3.1/lib/my_inet_ntop.c
  143. +0 −4 monitor-core-3.1/lib/my_inet_ntop.h
  144. +0 −113 monitor-core-3.1/lib/net.h
  145. +0 −89 monitor-core-3.1/lib/rdwr.c
  146. +0 −38 monitor-core-3.1/lib/rdwr.h
  147. +0 −142 monitor-core-3.1/lib/readdir.c
  148. +0 −99 monitor-core-3.1/lib/readdir.h
  149. +0 −185 monitor-core-3.1/lib/scoreboard.c
  150. +0 −256 monitor-core-3.1/lib/tcp.c
  151. +0 −1  monitor-core-3.1/libmetrics/AUTHORS
  152. +0 −18 monitor-core-3.1/libmetrics/COPYING
  153. 0  monitor-core-3.1/libmetrics/ChangeLog
  154. +0 −10 monitor-core-3.1/libmetrics/Makefile.am
  155. +0 −1  monitor-core-3.1/libmetrics/NEWS
  156. +0 −2  monitor-core-3.1/libmetrics/README
  157. +0 −309 monitor-core-3.1/libmetrics/acinclude.m4
  158. +0 −4 monitor-core-3.1/libmetrics/aix/Makefile.am
  159. +0 −928 monitor-core-3.1/libmetrics/aix/metrics.c
  160. 0  monitor-core-3.1/libmetrics/autoscan.log
  161. +0 −17 monitor-core-3.1/libmetrics/bootstrap
  162. +0 −160 monitor-core-3.1/libmetrics/configure.in
  163. +0 −5 monitor-core-3.1/libmetrics/cygwin/Makefile.am
  164. +0 −951 monitor-core-3.1/libmetrics/cygwin/metrics.c
  165. +0 −4 monitor-core-3.1/libmetrics/darwin/Makefile.am
  166. +0 −1,307 monitor-core-3.1/libmetrics/darwin/metrics.c
  167. +0 −4 monitor-core-3.1/libmetrics/dragonfly/Makefile.am
  168. +0 −1,119 monitor-core-3.1/libmetrics/dragonfly/metrics.c
  169. +0 −4 monitor-core-3.1/libmetrics/freebsd/Makefile.am
  170. +0 −1,284 monitor-core-3.1/libmetrics/freebsd/metrics.c
  171. +0 −205 monitor-core-3.1/libmetrics/get_ifi_info.c
  172. +0 −4 monitor-core-3.1/libmetrics/hpux/Makefile.am
  173. +0 −910 monitor-core-3.1/libmetrics/hpux/metrics.c
  174. +0 −86 monitor-core-3.1/libmetrics/interface.c
  175. +0 −9 monitor-core-3.1/libmetrics/interface.h
  176. +0 −4 monitor-core-3.1/libmetrics/irix/Makefile.am
  177. +0 −658 monitor-core-3.1/libmetrics/irix/metrics.c
  178. +0 −13 monitor-core-3.1/libmetrics/libmetrics.c
  179. +0 −107 monitor-core-3.1/libmetrics/libmetrics.h
  180. +0 −4 monitor-core-3.1/libmetrics/linux/Makefile.am
  181. +0 −1,307 monitor-core-3.1/libmetrics/linux/metrics.c
  182. +0 −4 monitor-core-3.1/libmetrics/netbsd/Makefile.am
Sorry, we could not display the entire diff because it was too big.
View
2  configure.in
@@ -45,7 +45,7 @@ GANGLIA_MICRO_VERSION=0
# If we are releasing a snapshot (beta), set GANGLIA_SNAPSHOT to "yes"
# If we are creating an official release, set it to "no"
-GANGLIA_SNAPSHOT="yes"
+GANGLIA_SNAPSHOT="no"
# If there are any changes to libganglia in this release, you need to...
# LIBGANGLIA_MICRO_VERSION += 1;
View
7 monitor-core-3.1/AUTHORS
@@ -1,7 +0,0 @@
-Matt Massie <massie@cs.berkeley.edu>
-Preston Smith <psmith@physics.purdue.edu>
-Steve Wagner
-Federico Sacerdoti <fds@sdsc.edu>
-
-and many others...
-http://sourceforge.net/project/memberlist.php?group_id=43021
View
4 monitor-core-3.1/BUGS
@@ -1,4 +0,0 @@
-Report all bugs to the Ganglia Bugzilla Page at
-
- http://bugzilla.ganglia.info/cgi-bin/bugzilla/index.cgi
-
View
18 monitor-core-3.1/COPYING
@@ -1,18 +0,0 @@
-Copyright (c) 2001, 2002, 2003, 2004, 2005 by
-The Regents of the University of California. All rights reserved.
-
-Permission to use, copy, modify, and distribute this software and its
-documentation for any purpose, without fee, and without written agreement is
-hereby granted, provided that the above copyright notice and the following
-two paragraphs appear in all copies of this software.
-
-IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
-DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
-OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
-CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
-AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
-ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
-PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
View
55 monitor-core-3.1/INSTALL
@@ -1,55 +0,0 @@
-Installation Instructions
-*************************
-
-Dependencies
-============
-
-* APR (http://apr.apache.org/)
-* libConfuse (http://www.nongnu.org/confuse/)
-* expat (http://expat.sourceforge.net/)
-* python (http://www.python.org/)
-* RRDtool (http://oss.oetiker.ch/rrdtool/)
-* GNU Make (http://www.gnu.org/software/make/)
-* GNU C Compiler (http://gcc.gnu.org/)
-
-Basic Installation
-==================
-
-Briefly, the shell commands `./configure; make; make install' should
-configure, build, and install this package.
-
-If your default make is not GNU Make you might want to use the appropiate
-command invocation instead (probably gmake) because some of the Makefile
-rules might not be compatible with your system make, resulting in a failed
-build.
-
-Compilers and Options
-=====================
-
-Some systems require unusual options for compilation or linking that the
-`configure' script does not know about. Run `./configure --help' for
-details on some of the pertinent environment variables.
-
-You can give `configure' initial values for configuration parameters
-by setting variables in the command line or in the environment. Here
-is an example:
-
- ./configure CC=c99 CFLAGS=-g LIBS=-lposix
-
-Optional Features
-=================
-
-support for python as a metric scripting language is optional and could be
-disabled by using :
-
- --disable-python
-
-gmetad is only needed to be able to generate reports and summary of the metric
-data collected and so will only be built if explicitally requested with :
-
- --with-gmetad
-
-for more details in some of the flags available refer to the README and the
-ouput of :
-
- ./configure --help
View
68 monitor-core-3.1/Makefile.am
@@ -1,68 +0,0 @@
-# $Id$
-#
-if BUILD_GMETAD
-GMETAD_SUBDIR = gmetad
-else
-GMETAD_SUBDIR =
-endif
-
-EXTRA_SUBDIRS = "./web"
-EXTRA_DIST_FILES =
-INCLUDES = @APR_INCLUDES@
-
-AUTOMAKE_OPTIONS = dist-bzip2 dist-tarZ dist-shar dist-zip
-
-GANGLIA_SUBDIRS = lib libmetrics tests $(GMETAD_SUBDIR) gmond gstat gmetric include
-SUBDIRS = $(GANGLIA_SUBDIRS)
-# Make sure that no matter the setting for --with-gmetad
-# that the gmetad directory gets distributed
-GANGLIA_SUBDIRS_DIST = lib libmetrics tests gmetad gmond gstat gmetric include
-DIST_SUBDIRS = $(GANGLIA_SUBDIRS_DIST)
-
-EXTRA_DIST = README.WIN README.AIX ganglia.spec.aix ganglia.spec ganglia.pod ganglia.html mans $(EXTRA_DIST_FILES)
-
-ganglia.sub: ganglia.pod
- sed -e 's/GANGLIA_VERSION/@VERSION@/' < $(srcdir)/ganglia.pod > ganglia.sub
-
-man_create: ganglia.sub
- pod2man --section 3 --center "ganglia" --release "@VERSION@" --date "`date`" --name ganglia ganglia.sub ganglia.man
-
-ganglia.html: ganglia.sub
- pod2html --title="Ganglia" --infile=ganglia.sub --outfile=ganglia.html
-
-README: ganglia.sub
- pod2text ganglia.sub README
-
-CHANGE_LOG_GEN_BIN = scripts/svn2cl.sh
-CHANGE_LOG_GEN_FLAGS = --revision HEAD:1
-
-ChangeLog::
- touch ChangeLog
- $(CHANGE_LOG_GEN_BIN) $(CHANGE_LOG_GEN_FLAGS)
-
-CLEANFILES = ganglia.sub pod2htm*
-
-dist-local: README ganglia.html ChangeLog
-
-
-# We go through and make sure all the files have
-# the same timestamp with the last command here...
-dist-hook:
- for subdir in $(EXTRA_SUBDIRS); do \
- tar -c --exclude=".libs" --exclude "core.*" \
- --exclude ".svn" --exclude="*.o" --exclude="*.lo" \
- --exclude="*.la" --exclude=".deps" \
- --exclude="Makefile" --exclude="libtool" \
- --exclude="config.h" \
- --exclude="*.spec" --exclude="stamp-h1" --exclude="*-config" \
- --exclude="autom4te.cache" --exclude="test-metrics" \
- --exclude="*.tar.gz" --exclude="config.status" \
- --exclude="config.log" --exclude="config.cache" \
- --exclude="configure.lineno" --exclude="configure.status.lineno" \
- -f - $$subdir | (cd $(distdir) && tar -xf -)\
- done;
- find $(distdir) -name ".svn" -type d -prune -exec rm -rf {} \;
- touch $(distdir)/Makefile.am
- find $(distdir) -exec touch -r $(distdir)/Makefile.am {} \;
-
-bin_SCRIPTS = ganglia-config
View
2  monitor-core-3.1/NEWS
@@ -1,2 +0,0 @@
-===== Ganglia Monitoring Core =====
-Visit http://ganglia.info/ for the latest news
View
56 monitor-core-3.1/README.AIX
@@ -1,56 +0,0 @@
-Using Ganglia on AIX
-~~~~~~~~~~~~~~~~~~~~
-
-This Version is tested on AIX 5.3. AIX 6.1 might work as well,
-but it's not tested by now.
-
-Installation
-~~~~~~~~~~~~
-
-You still need some "tricks" to use ganglia on a AIX system:
-
-1. The AIX-Version should not be compiled with shared libraries
- You must add the "--enable-static-build" and "--disable-python"
- configure flags if you running on AIX. Python support was not
- tested up to now.
-
- ./configure --enable-static-build --disable-python
-
-2. To compile Ganglia you will need some additional tools,
- take a look at this page http://www.perzl.org/aix/
-
-3. You should use "gcc".
-
-Known problems and Limitations
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-- No Power metrics are included
-
-Upgrading to 3.1 from 3.0
-~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Starting with 3.1, the disk metrics units had changed from MB to GB for
-consistency with other platforms, therefore when upgrading a system you
-should expect to see a step function in the graphs from the time that the
-new version starts reporting.
-
-If you would rather avoid that jump, you could then prepare before upgrading
-to normalize your disk metrics rrd to store instead values in the new units
-which are 1/1000th smaller (ex: 1.5660300000e+05 to 1.5660300000e+02) for all
-stored values, using rrdtool's dump/restore functionality :
-
-1) stop gmond in the node to upgrade (ex: aix.example.com)
-2) locate the directory in the gmetad server where the metrics for that node
- are being stored (ex: /var/lib/ganglia/rrds/unspecified/aix.example.com)
-3) locate the rrd metric files for the disk metrics that will be affected
- (ex: disk_free.rrd and disk_total.rrd)
-4) stop gmetad
-5) dump the data to an XML file that can then be edited
- (ex: rrdtool dump disk_free.rrd > disk_free.xml)
-6) edit all values to reflect the new metric unit
- (ex: perl -pi -e "s/e\+05/e+02/g" disk_total.xml)
-7) restore the "normalized" data back into the RRD
- (ex: rm -f disk_free.rrd && rrdtool restore -f disk_free.xml disk_free.rrd)
-8) remove the temporary files and be sure that permissions are correct and
- start gmetad (ex: rm -f disk_free.xml && chown nobody disk_free.rrd)
-9) upgrade ganglia and start gmond in the node that was going to be updated
View
37 monitor-core-3.1/README.SVNusers
@@ -1,37 +0,0 @@
-Welcome to the Bleeding Edge of Ganglia Development
-
-The SVN source represents the latest snapshot of ganglia
-development.
-
-To prepare the distribution for compilation, run the
-script "./bootstrap".
-
-If you are interested in getting a snapshot for distribution
-you have to first (before running bootstrap) edit the configure.in
-file and update the value of the variable GANGLIA_NANO_VERSION that
-your snapshot represents and that usually corresponds to the numeric
-value returned by:
-
-./svnversion .
-
-To build a distribution tarball, run:
-
-./configure
-make dist-gzip
-
-To prepare a distribution tree, run:
-
-./configure
-make distdir
-
-To build RPMs after building the tarball:
-
-rpmbuild -ta --target i686,noarch <tarball>
-
-For best results, make sure you have
-at least the following installed.
-
-automake (GNU automake) 1.8.3
-autoconf (GNU Autoconf) 2.53
-ltmain.sh (GNU libtool) 1.4.2
-xsltproc (The XSLT C library for GNOME)
View
50 monitor-core-3.1/README.WIN
@@ -1,50 +0,0 @@
-Build Ganglia source from the repository using Cygwin on Windows
-================================================================
-
-Ganglia (Gmond, Gmetric and Gstat) may be built in the Cygwin environment for
-use by Cygwin applications. As with the Unix platform, Ganglia on Cygwin uses
-GNU tools. Therefore Ganglia on Cygwin could be built using the same
-instructions as in the UNIX platforms with some work arounds.
-
-Prerequisites
--------------
-
-Latest version of Cygwin with the following packages: apr1, autoconf, automake,
-bison, expat, diffutils, flex, gcc, libtool, make, python, sharutils, sunrpc
-and svn to checkout the source code.
-
-CheckOut the source files of Ganglia in the Cygwin command console:
-
- svn co http://ganglia.svn.sourceforge.net/svnroot/ganglia/trunk/monitor-core ganglia
-
-Go to the ganglia directory and bootstrap your sources:
-
- ./bootstrap
-
-The steps above generate the configure file and are common to all platforms
-that want to use the development version.
-
-Download libconfuse, build it and install the libconfuse library (this will
-be linked statically and will only be needed in the build machine)
-
- ./configure
- make
- make install
-
-Go to the ganglia directory, and run the following command to build Ganglia
-
- ./configure --with-libconfuse=/usr/local --enable-static-build
-
-If everything works right, then you should see a gmond.exe, gstat.exe and
-gmetric.exe created in the gmond, gstat and gmetric directories
-respectively.
-
-The binaries generated depend on cygwin (cygwin1.dll), the apr cygwin
-library (cygapr-1-0.dll), the expat cygwin library (cygexpat-0.dll) and
-the python cygwin library (libpython2.5.dll).
-
-if you want to use them in a different system you'll need to copy and
-install all of them together with an appropiate configuration.
-
-gmetad cannot be built on Cygwin but you can use gmetad in any other supported
-architecture with the gmond agents running in Cygwin.
View
153 monitor-core-3.1/STATUS
@@ -1,153 +0,0 @@
-GANGLIA 3.1 STATUS: -*-text-*-
-Last modified at [$Date$]
-
-The current version of this file can be found at:
-
- * http://ganglia.svn.sourceforge.net/svnroot/ganglia/branches/monitor-core-3.1/STATUS
-
-Release history:
-
- 3.1.0 : in development
-
-Contributors looking for a mission:
-
- * Just do an egrep on "TODO", "XXX" or "FIXME" in the source.
- * Review the bug database at: http://bugzilla.ganglia.info/
- * Open bugs in the bug database.
-
-CURRENT RELEASE NOTES:
-
- * Dynamically loaded metric support (DSO)
- * Scriptable metric support with Python
- * Modular frontend graph support
- * Platform support for DragonFlyBSD
- * Improved native metric support for Windows (Built with CygWin)
- * Bug fixes and Enhancements
-
-RELEASE SHOWSTOPPERS:
- <TEMPLATE>
- * <Brief description of showstopper bug>
- <http:// link to email list or bugzilla bug describing the issue>
- <Comments prefixed with user id of comment author>
-
-BACKPORT PROPOSALS:
- <TEMPLATE>
- * <Brief description of proposal or bug>
- <http:// link to email list or bugzilla bug describing the issue -optional>
- <http:// link to committed patch in the trunk repository>
- +1: <userid>
- 0: <userid>
- -1: <userid>
- <Optional comments prefixed with user id of comment author>
-
-BACKPORT PROPOSALS NEXT VERSION:
- These proposals are not targeted at the current version. They should be
- addressed after the current version is released.
-
- * gmetad: use platform specific directory for storing RRD
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1306
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1307
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1308
- +1: carenas
-
- * contrib: include ganglia-rrd-modify.pl from contrib
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1365
- +1: carenas, bnicholes
-
- * Allow both a C and python module to create a metric that will spoof a specific host.
- This provides the same spoofing functionality as gmetric but through a metric module.
- It is done by adding SPOOF_HOST and SPOOF_NAME as extra metadata to the metric
- description. This is patch contains fairly significant code changes so rather than
- risk destabilizing the current release, this is a proposal for a follow-on release.
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1386
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1389
- +1: bnicholes
-
- * build: solaris support for Sun Studio
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1417
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1418
- +1: carenas
-
- * gmetad: support for C99 in gperf generated files and build cleanup
- http://www.mail-archive.com/ganglia-developers@lists.sourceforge.net/msg04365.html
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1445
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1446
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1471
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1472
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1476
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1479
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1485
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1486
- +1: carenas
-
- * build: respect libdir setting and allow for working default in 64bit linux
- http://www.mail-archive.com/ganglia-developers@lists.sourceforge.net/msg04275.html
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1452
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1461
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1462
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1467
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1468
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1475
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1487
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1505
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1506
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1507
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1508
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1519
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1521
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1522
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1524
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1525
- +1: carenas
-
- * include: support building modules with a C++ compiler
- http://www.mail-archive.com/ganglia-general@lists.sourceforge.net/msg03961.html
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1464
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1492
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1494
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1495
- +1: carenas
-
- * gmond: mod_example code cleanup for portability and usability
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1489
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1513
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1514
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1515
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1516
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1517
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1543
- +1: carenas
-
- * gmond: solaris: define fabsf for solaris < 10
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1518
- -1: carenas
- carenas: incomplete fix, should use autoconf instead to handle Solaris>=10
-
- * build: include contrib in package
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1538
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1552
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1556
- +1: carenas, bnicholes
-
- * web: remove redirect hack for grid pulldown navigation
- http://www.mail-archive.com/ganglia-developers@lists.sourceforge.net/msg04052.html
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1253
- +1: carenas
-
- * web: keep grid summary always on top for meta view for all sorting methods
- http://bugzilla.ganglia.info/cgi-bin/bugzilla/show_bug.cgi?id=186
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1480
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1482
- +1: carenas
-
- * build: remove bogus svn:executable from package
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1481
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1483
- +1: carenas
-
- * gmond: avoid latency and timeouts when using the tcpconn python module
- http://www.mail-archive.com/ganglia-developers@lists.sourceforge.net/msg04432.html
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1528
- http://ganglia.svn.sourceforge.net/viewvc/ganglia?view=rev&revision=1544
- -1: carenas
- carenas: incomplete fix, latency to shutdown, lose sample data
View
138 monitor-core-3.1/acinclude.m4
@@ -1,138 +0,0 @@
-dnl
-dnl Check for the Linux /proc filesystem
-dnl
-dnl usage: AC_DNET_LINUX_PROCFS
-dnl results: HAVE_LINUX_PROCFS
-dnl
-AC_DEFUN([AC_DNET_LINUX_PROCFS],
- [AC_MSG_CHECKING(for Linux proc filesystem)
- AC_CACHE_VAL(ac_cv_dnet_linux_procfs,
- if test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" ; then
- ac_cv_dnet_linux_procfs=yes
- else
- ac_cv_dnet_linux_procfs=no
- fi)
- AC_MSG_RESULT($ac_cv_dnet_linux_procfs)
- if test $ac_cv_dnet_linux_procfs = yes ; then
- AC_DEFINE(HAVE_LINUX_PROCFS, 1,
- [Define if you have the Linux /proc filesystem.])
- fi])
-
-dnl
-dnl Check for 4.4 BSD sa_len member in sockaddr struct
-dnl
-dnl usage: AC_DNET_SOCKADDR_SA_LEN
-dnl results: HAVE_SOCKADDR_SA_LEN (defined)
-dnl
-AC_DEFUN([AC_DNET_SOCKADDR_SA_LEN],
- [AC_MSG_CHECKING(for sa_len in sockaddr struct)
- AC_CACHE_VAL(ac_cv_dnet_sockaddr_has_sa_len,
- AC_TRY_COMPILE([
-# include <sys/types.h>
-# include <sys/socket.h>],
- [u_int i = sizeof(((struct sockaddr *)0)->sa_len)],
- ac_cv_dnet_sockaddr_has_sa_len=yes,
- ac_cv_dnet_sockaddr_has_sa_len=no))
- AC_MSG_RESULT($ac_cv_dnet_sockaddr_has_sa_len)
- if test $ac_cv_dnet_sockaddr_has_sa_len = yes ; then
- AC_DEFINE(HAVE_SOCKADDR_SA_LEN, 1,
- [Define if sockaddr struct has sa_len.])
- fi])
-
-dnl
-dnl ##################################################
-dnl the AC_CHECK_TYPE macro only checks for a type in
-dnl <sys/types.h>, <stdlib.h> and <stddef.h>. this macro
-dnl in more generic and allows for arbitrary headers to
-dnl be included in the search
-dnl
-dnl
-AC_DEFUN([AC_SEARCH_TYPE],
- [AC_MSG_CHECKING(if $1 defined)
- AC_CACHE_VAL(ac_cv_type_$1,
- AC_TRY_COMPILE(
-[
-#include "confdefs.h" /* the header built by configure so far */
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#endif
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-# include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-# include <sys/time.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-# include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-# include <arpa/inet.h>
-#endif
-#ifdef HAVE_ERRNO_H
-# include <errno.h>
-#endif
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-#ifdef HAVE_NETDB_H
-# include <netdb.h>
-#endif
-#ifdef HAVE_SIGNAL_H
-# include <signal.h>
-#endif
-#ifdef HAVE_STDIO_H
-# include <stdio.h>
-#endif
-#ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
-#ifdef HAVE_STRING_H
-# include <string.h>
-#endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef HAVE_SYS_UIO_H
-# include <sys/uio.h>
-#endif
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-#ifdef HAVE_SYS_WAIT_H
-# include <sys/wait.h>
-#endif
-#ifdef HAVE_SYS_UN_H
-# include <sys/un.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-# include <sys/select.h>
-#endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-# include <sys/ioctl.h>
-#endif
-#ifdef HAVE_SYS_FILIO_H
-# include <sys/filio.h>
-#endif
-#ifdef HAVE_SYS_SOCKIO_H
-# include <sys/sockio.h>
-#endif
-#ifdef HAVE_PTHREAD_H
-# include <pthread.h>
-#endif],
- [ $1 foo ],
- ac_cv_type_$1=yes,
- ac_cv_type_$1=no))
- AC_MSG_RESULT($ac_cv_type_$1)
- if test $ac_cv_type_$1 = no ; then
- AC_DEFINE($1, $2, $1)
- fi
-])
View
23 monitor-core-3.1/bootstrap
@@ -1,23 +0,0 @@
-#!/bin/sh
-# $Id$
-echo "Bootstrapping libmetrics"
-cd libmetrics && ./bootstrap
-cd ..
-
-echo "Create distribution timestamp"
-touch Makefile.am
-echo "Running aclocal" &&
-aclocal &&
-echo "Running autoheader" &&
-autoheader &&
-echo "Creating build" &&
-mkdir -p build &&
-echo "Running automake" &&
-automake --add-missing --copy 2>/dev/null
-echo "Running libtoolize" &&
-libtoolize --automake --copy && automake --add-missing --copy &&
-echo "Running autoconf" &&
-autoconf
-
-echo &&
-echo "To begin installation, run \"./configure\" now"
View
636 monitor-core-3.1/configure.in
@@ -1,636 +0,0 @@
-dnl
-dnl $Id$
-dnl
-dnl "Copyright (c) 2001 by Matt Massie and The Regents of the University
-dnl of California. All rights reserved."
-dnl
-dnl Permission to use, copy, modify, and distribute this software and its
-dnl documentation for any purpose, without fee, and without written agreement is
-dnl hereby granted, provided that the above copyright notice and the following
-dnl two paragraphs appear in all copies of this software.
-dnl
-dnl IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
-dnl DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
-dnl OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
-dnl CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-dnl
-dnl THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
-dnl INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
-dnl AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
-dnl ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
-dnl PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
-dnl
-
-AC_REVISION([$Revision$])
-AC_INIT(gmond/gmond.c)
-AC_CONFIG_AUX_DIR(build)
-
-### BEGIN RELEASE VARIABLES ############################
-# On making a release...
-# If this release is just a minor bug fix release, increment
-# GANGLIA_MICRO_VERSION.
-#
-# If this release adds significant features or breaks backward compatibility,
-# increment GANGLIA_MINOR_VERSION and set GANGLIA_MICRO_VERSION to 0 (zero).
-#
-# If this release is a complete restructuring of
-# the overall architecture of ganglia,
-# increment GANGLIA_MAJOR_VERSION and set
-# GANGLIA_MINOR_VERSION and GANGLIA_MICRO_VERSION
-# to 0 (zero)
-GANGLIA_RELEASE_NAME="Amelia"
-GANGLIA_MAJOR_VERSION=3
-GANGLIA_MINOR_VERSION=1
-GANGLIA_MICRO_VERSION=0
-
-# If we are releasing a snapshot (beta), set GANGLIA_SNAPSHOT to "yes"
-# If we are creating an official release, set it to "no"
-GANGLIA_SNAPSHOT="no"
-
-# If there are any changes to libganglia in this release, you need to...
-# LIBGANGLIA_MICRO_VERSION += 1;
-# LIBGANGLIA_INTERFACE_AGE += 1;
-# LIBGANGLIA_BINARY_AGE += 1;
-# if any functions have been added, set LIBGANGLIA_INTERFACE_AGE to 0.
-# if backwards compatibility has been broken,
-# set LIBGANGLIA_BINARY_AGE _and_ LIBGANGLIA_INTERFACE_AGE to 0.
-LIBGANGLIA_MICRO_VERSION=0
-LIBGANGLIA_INTERFACE_AGE=0
-LIBGANGLIA_BINARY_AGE=0
-### END RELEASE VARIABLES #############################
-
-if test "$GANGLIA_SNAPSHOT" != yes;
-then
-GANGLIA_VERSION=$GANGLIA_MAJOR_VERSION.$GANGLIA_MINOR_VERSION.$GANGLIA_MICRO_VERSION
-else
-GANGLIA_NANO_VERSION=999
-AC_DEFINE_UNQUOTED(GANGLIA_NANO_VERSION, $GANGLIA_NANO_VERSION, GANGLIA_NANO_VERSION)
-GANGLIA_VERSION=$GANGLIA_MAJOR_VERSION.$GANGLIA_MINOR_VERSION.$GANGLIA_MICRO_VERSION.$GANGLIA_NANO_VERSION
-fi
-
-AM_INIT_AUTOMAKE(ganglia, $GANGLIA_VERSION)
-
-AC_SUBST(GANGLIA_MAJOR_VERSION)
-AC_SUBST(GANGLIA_MINOR_VERSION)
-AC_SUBST(GANGLIA_MICRO_VERSION)
-AC_SUBST(GANGLIA_VERSION)
-AC_SUBST(GANGLIA_RELEASE_NAME)
-
-AC_SUBST(LIBGANGLIA_INTERFACE_AGE)
-AC_SUBST(LIBGANGLIA_BINARY_AGE)
-
-# libtool versioning
-# the LT_RELEASE variable is passed with the --release option... it is just
-# a way to tie our internal package library with the release numbers of ganglia in general
-LT_RELEASE=$GANGLIA_VERSION
-# The most current libganglia interface is MICRO - INTERFACE
-LT_CURRENT=`expr $LIBGANGLIA_MICRO_VERSION - $LIBGANGLIA_INTERFACE_AGE`
-# The implementation number of the current interface is simply LIBGANGLIA_INTERFACE_AGE
-LT_REVISION=$LIBGANGLIA_INTERFACE_AGE
-# The different between the new and oldest interfaces this library implements is BINARY-INTERFACE
-LT_AGE=`expr $LIBGANGLIA_BINARY_AGE - $LIBGANGLIA_INTERFACE_AGE`
-
-AC_SUBST(LT_RELEASE)
-AC_SUBST(LT_CURRENT)
-AC_SUBST(LT_REVISION)
-AC_SUBST(LT_AGE)
-
-# Define version stuff
-AC_DEFINE_UNQUOTED(GANGLIA_MAJOR_VERSION, $GANGLIA_MAJOR_VERSION, GANGLIA_MAJOR_VERSION)
-AC_DEFINE_UNQUOTED(GANGLIA_MINOR_VERSION, $GANGLIA_MINOR_VERSION, GANGLIA_MINOR_VERSION)
-AC_DEFINE_UNQUOTED(GANGLIA_MICRO_VERSION, $GANGLIA_MICRO_VERSION, GANGLIA_MICRO_VERSION)
-
-
-########################
-AC_CANONICAL_HOST
-AM_CONFIG_HEADER(config.h)
-
-dnl Install with /usr are the root by default
-AC_PREFIX_DEFAULT(/usr)
-
-dnl The following cpu_vendor_os string goes into config.h.
-dnl
-AC_DEFINE_UNQUOTED(HOST_OS, "$host_os", HOST_OS)
-AC_DEFINE_UNQUOTED(CPU_VENDOR_OS, "$host", CPU_VENDOR_OS)
-dnl AC_CYGWIN
-
-nl='
-'
-ganglia_popdir=`pwd`
-
-dnl ##################################################################
-dnl Checks for programs.
-dnl
-AC_PROG_CC
-AC_PROG_CC_STDC
-AM_PROG_LIBTOOL
-
-AC_ARG_ENABLE( static-build,
-[ --enable-static-build Statically link libGanglia, APR, Expat and Confuse libraries (may disable some metric modules) ],
-[ enable_static_build=yes ],[ enable_static_build=no ])
-
-AC_SUBST(modpathstart)
-AM_CONDITIONAL(STATIC_BUILD, test x"$enable_static_build" = xyes)
-
-echo $ac_n "${nl}Configuring libmetrics ...${nl}"
-cd libmetrics && ./configure --cache-file=$ganglia_popdir/config.cache
-cd $ganglia_popdir
-
-modpathstart=""
-if test x"$enable_static_build" = xyes ; then
- modpathstart="#"
-fi
-
-dnl ##################################################################
-dnl Special parameters
-dnl
-
-AC_ARG_WITH( gmetad,
-[ --with-gmetad compile and install the Ganglia Meta Daemon],
-if test "$withval" = yes; then gmetad=yes; fi)
-
-AM_CONDITIONAL(BUILD_GMETAD, test x$gmetad = xyes)
-
-AC_ARG_WITH( python,
-[ --with-python=PATH Specify prefix for python or full path to interpreter],
-[if test x"$withval" != xno; then enable_python="yes"; PYTHON_BIN=$withval; fi])
-
-AC_ARG_WITH( librrd,
-[ --with-librrd=DIR Specify location for librrd],
-[if test x"$withval" != xno; then librrd=yes; librrdpath=$withval; fi])
-
-AC_ARG_WITH( libapr,
-[ --with-libapr=PATH Specify location for libapr-1 or full path to apr-1-config],
-[if test x"$withval" != xno; then libapr=yes; libaprpath=$withval; fi])
-
-AC_ARG_WITH( libexpat,
-[ --with-libexpat=DIR Specify location for libexpat],
-[if test x"$withval" != xno; then libexpat=yes; libexpatpath=$withval; fi])
-
-AC_ARG_WITH( libconfuse,
-[ --with-libconfuse=DIR Specify location for libconfuse],
-[if test x"$withval" != xno; then libconfuse=yes; libconfusepath=$withval; fi])
-
-AC_ARG_ENABLE(debug,
-[
- --enable-debug turn on debugging output and compile options],
-[ CFLAGS="$CFLAGS -ggdb"
- AC_DEFINE(DEBUG, 1, DEBUG)])
-# Turn off optimizations when debugging.
-#[ CFLAGS="$CFLAGS -O2"
-# AC_DEFINE(DEBUG, 0, DEBUG)])
-
-AC_ARG_ENABLE(gexec,
-[ --enable-gexec turn on gexec support (platform-specific) ],
-AC_DEFINE(SUPPORT_GEXEC, 1, SUPPORT_GEXEC), AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC))
-
-AC_ARG_ENABLE(pedantic,
-[ --enable-pedantic turn on pedantic mode during compile],
-[ CFLAGS="$CFLAGS --pedantic" ],)
-
-AC_ARG_ENABLE(memcheck,
-[ --enable-memcheck turn on memory checking during compile
- note: requires mpatrol from
- http://www.cbmamiga.demon.co.uk/mpatrol/],
-[ enable_memcheck="yes" ])
-
-AC_ARG_ENABLE( python,
-[ --disable-python exclude mod_python and support for metric modules written in python],
-[ if test x"$enableval" != xyes; then enable_python="no"; fi ], [ enable_python="yes" ] )
-
-
-AC_ARG_ENABLE( status,
-[ --enable-status compile and install modgstatus to enable gmond status metric module support],
-[ enable_status="yes"
- AC_DEFINE(GSTATUS, 1, GSTATUS)],
-[ enable_status="no" ] )
-
-AM_CONDITIONAL(BUILD_STATUS, test "$enable_status" = yes)
-
-dnl ##################################################################
-dnl Checks for libraries.
-dnl The order of these tests is the *reverse* order of the libraries in
-dnl the LIBS variable that is constructed: each new one gets prepended,
-dnl not appended.
-dnl
-AC_CHECK_LIB(pthread, pthread_create)
-dnl if test "$ac_cv_lib_pthread_pthread_create" = yes ; then
-dnl CFLAGS="$CFLAGS -D_REENTRANT"
-dnl else
-AC_CHECK_LIB(pthreads, pthread_create)
-dnl if test "$ac_cv_lib_pthreads_pthread_create" = yes ; then
-dnl CFLAGS="$CFLAGS -D_REENTRANT"
-dnl fi
-dnl fi
-
-if test x"$librrdpath" != x && test x"$librrdpath" != xyes ; then
- CFLAGS="$CFLAGS -I$librrdpath/include"
- LDFLAGS="$LDFLAGS -L$librrdpath/lib"
-fi
-
-if test x"$gmetad" = xyes ; then
- AC_CHECK_HEADERS(rrd.h)
- AC_CHECK_LIB(rrd, rrd_create, [echo "The ganglia graphs are created using RRDTool (http://www.rrdtool.org/)"], [], [-lm])
- if test x"$ac_cv_lib_rrd_rrd_create" != xyes; then
- echo "Trying harder by including the X library path"
- unset ac_cv_lib_rrd_rrd_create
- LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/X11R6/lib"
- AC_CHECK_LIB(rrd, rrd_create, [echo "The ganglia graphs are created using RRDTool (http://www.rrdtool.org/)"], [], [-lm])
- if test x"$ac_cv_lib_rrd_rrd_create" != xyes; then
- echo
- echo "The Ganglia Meta Daemon uses the Round-Robin Database Tool (rrdtool)"
- echo "for storing historical information. You have chosen to compile the"
- echo "monitoring core with gmetad but librrd could not be found. Please"
- echo "visit http://www.rrdtool.org/, download rrdtool and then try again"
- echo
- exit;
- fi
- fi
-fi
-
-if test "$enable_python" = yes ; then
- echo
- echo Checking for python
-
- # check for Python executable
- if test -z "$PYTHON_BIN"; then
- AC_PATH_PROG(PYTHON_BIN, python)
- else
- if test -d $PYTHON_BIN; then
- PYTHON_BIN="$PYTHON_BIN/bin/python"
- fi
- fi
-
- if test -n "$PYTHON_BIN"; then
- # find out python version
- AC_MSG_CHECKING(Python version)
- PyVERSION=`$PYTHON_BIN -c ['import sys; print sys.version[:3]'`]
- PyMAJVERSION=`$PYTHON_BIN -c ['import sys; print sys.version[:1]'`]
- AC_MSG_RESULT($PyVERSION)
- PYTHON_VERSION=$PyVERSION
- AC_SUBST(PYTHON_VERSION)
-
- PyEXEC_INSTALLDIR=`$PYTHON_BIN -c "import sys; print sys.exec_prefix"`
- if test -d "$PyEXEC_INSTALLDIR/include/python"; then
- PYTHON_INCLUDES="-I$PyEXEC_INSTALLDIR/include/python"
- else
- if test -d "$PyEXEC_INSTALLDIR/include/python$PyVERSION"; then
- PYTHON_INCLUDES="-I$PyEXEC_INSTALLDIR/include/python$PyVERSION"
- else
- PYTHON_INCLUDES=""
- enable_python="no"
- fi
- fi
- AC_SUBST(PYTHON_INCLUDES)
- else
- enable_python="no"
- fi
-fi
-
-AC_MSG_CHECKING(Python support)
-AC_MSG_RESULT($enable_python)
-AM_CONDITIONAL(BUILD_PYTHON, test "$enable_python" = "yes")
-
-echo
-echo Checking for apr
-if test x"$libaprpath" != x && test x"$libaprpath" != xyes ; then
- if test -f "$libaprpath" ; then
- APR_INCLUDES=`$libaprpath --includes`
- AC_SUBST(APR_INCLUDES)
- APR_LIBPATH=`$libaprpath --link-ld`
- LDFLAGS="$LDFLAGS -L`expr "x$APR_LIBPATH" : '.*-L\(.*\) '`"
- AC_CHECK_LIB(apr-1, apr_socket_send,,,[`$libaprpath --libs`])
- else
- CFLAGS="$CFLAGS -I$libaprpath/include"
- LDFLAGS="$LDFLAGS -L$libaprpath/lib"
- echo "Added -I$libaprpath/include to CFLAGS"
- echo "Added -L$libaprpath/lib to LDFLAGS"
- AC_CHECK_LIB(apr-1, apr_socket_send)
- fi
-else
- AC_PATH_PROG(APR_CONFIG, apr-1-config)
- if test -z "$APR_CONFIG"; then
- AC_MSG_ERROR(apr-1-config binary not found in path)
- fi
- APR_INCLUDES=`$APR_CONFIG --includes`
- AC_SUBST(APR_INCLUDES)
- APR_LIBPATH=`$APR_CONFIG --link-ld`
- APR_LIBPATH=`expr "x$APR_LIBPATH" : '.*-L\(.*\) '`
- if test x$APR_LIBPATH != x; then
- LDFLAGS="$LDFLAGS -L$APR_LIBPATH"
- fi
- AC_CHECK_LIB(apr-1, apr_socket_send,,,[`$APR_CONFIG --libs`])
-fi
-
-if test $ac_cv_lib_apr_1_apr_socket_send = yes; then
- echo "The ganglia utilities use the Apache Portable Runtime functions (http://www.apache.org/)"
- echo "Found a suitable libapr1 library"
-else
- echo "libapr not found"
- exit;
-fi
-
-echo
-echo Checking for confuse
-if test x"$libconfusepath" != x && test x"$libconfusepath" != xyes ; then
- CFLAGS="$CFLAGS -I$libconfusepath/include"
- LDFLAGS="$LDFLAGS -L$libconfusepath/lib"
- echo "Added -I$libconfusepath/include to CFLAGS"
- echo "Added -L$libconfusepath/lib to LDFLAGS"
-fi
-AC_CHECK_LIB(confuse, cfg_parse)
-if test $ac_cv_lib_confuse_cfg_parse = no; then
- echo Trying harder including gettext
- unset ac_cv_lib_confuse_cfg_parse
- LDFLAGS="$LDFLAGS -lintl"
- AC_CHECK_LIB(confuse, cfg_parse)
- if test $ac_cv_lib_confuse_cfg_parse = no; then
- echo Trying harder including iconv
- unset ac_cv_lib_confuse_cfg_parse
- LDFLAGS="$LDFLAGS -liconv"
- AC_CHECK_LIB(confuse, cfg_parse)
- if test $ac_cv_lib_confuse_cfg_parse = no; then
- echo "libconfuse not found"
- exit
- fi
- fi
-fi
-if test $ac_cv_lib_confuse_cfg_parse = yes; then
- echo "Found a suitable Confuse library"
-fi
-
-echo
-echo Checking for expat
-if test x"$libexpatpath" != x && test x"$libexpatpath" != xyes ; then
- CFLAGS="$CFLAGS -I$libexpatpath/include"
- LDFLAGS="$LDFLAGS -L$libexpatpath/lib"
- echo "Added -I$libexpatpath/include to CFLAGS"
- echo "Added -L$libexpatpath/lib to LDFLAGS"
-fi
-AC_CHECK_LIB(expat, XML_ParserCreate)
-if test $ac_cv_lib_expat_XML_ParserCreate = yes; then
- echo "Found a suitable Expat library"
-else
- echo "libexpat not found"
- exit;
-fi
-echo
-
-AC_CHECK_LIB(rpc, xdr_string)
-AC_CHECK_LIB(socket, socket)
-AC_CHECK_LIB(nsl, inet_addr)
-AC_CHECK_LIB(nsl, gethostbyaddr_r)
-AC_CHECK_FUNC(inet_aton, , [AC_CHECK_LIB(resolv, inet_aton)])
-AC_CHECK_LIB(kstat, kstat_open)
-AC_CHECK_LIB(kvm, kvm_open)
-AC_CHECK_LIB(odm, odm_initialize)
-AC_CHECK_LIB(cfg, _system_configuration)
-AC_CHECK_LIB(perfstat, perfstat_cpu_total)
-AC_CHECK_LIB(dl, dlopen)
-dnl AC_CHECK_LIB(crypto, RSA_sign)
-dnl if test "$ac_cv_lib_crypto_RSA_sign" = no; then
-dnl echo "$PACKAGE $VERSION requires IPv4 OpenSSL."
-dnl echo "See http://www.openssl.org/."
-dnl exit;
-dnl fi
-
-
-dnl ##################################################################
-dnl Checks for header files.
-dnl
-
-dnl Check for stdlib.h stdarg.h string.h float.h
-AC_HEADER_STDC
-
-AC_CHECK_HEADERS(syslog.h pthread.h fcntl.h signal.h sys/time.h sys/types.h sys/stat.h sys/socket.h sys/ioctl.h netinet/in.h arpa/inet.h net/if.h netinet/tcp.h unistd.h stropts.h sys/sockio.h ctype.h errno.h netdb.h stdio.h sys/uio.h sys/wait.h sys/un.h sys/select.h sys/filio.h getopt.h net/if_dl.h net/raw.h poll.h)
-AC_CHECK_HEADERS(inttypes.h limits.h sys/param.h sys/mount.h sys/vfs.h sys/statfs.h sys/statvfs.h)
-
-dnl ##################################################################
-dnl Checks for typedefs.
-dnl
-dnl AC_TYPE_SIZE_T
-AC_HEADER_TIME
-dnl AC_SEARCH_TYPE is a custom macro in acinclude.m4
-AC_SEARCH_TYPE(uchar_t, unsigned char)
-AC_SEARCH_TYPE(int8_t, signed char)
-AC_SEARCH_TYPE(uint8_t, unsigned char)
-AC_SEARCH_TYPE(int16_t, signed short)
-AC_SEARCH_TYPE(uint16_t, unsigned short)
-AC_SEARCH_TYPE(int32_t, signed int)
-AC_SEARCH_TYPE(uint32_t, unsigned int)
-AC_SEARCH_TYPE(size_t, unsigned int)
-AC_SEARCH_TYPE(ssize_t, signed int)
-AC_SEARCH_TYPE(socklen_t, unsigned int)
-AC_SEARCH_TYPE(time_t, long)
-
-dnl AC_CHECK_SIZEOF(char)
-dnl AC_CHECK_SIZEOF(short)
-dnl AC_CHECK_SIZEOF(int)
-dnl AC_CHECK_SIZEOF(long)
-dnl AC_CHECK_SIZEOF(void *)
-
-dnl ##################################################################
-dnl Check for structure definitions.
-dnl
-
-
-dnl ##################################################################
-dnl Check the compiler characteristics
-dnl
-dnl Don't need this now that all data is send in XDR
-AC_C_BIGENDIAN
-
-dnl ##################################################################
-dnl Checks for library functions.
-dnl
-dnl AC_FUNC_MEMCMP
-AC_CHECK_FUNCS([snprintf vsnprintf strlcat])
-
-dnl ##################################################################
-dnl Check for function prototypes in headers.
-dnl
-AC_CHECK_FUNCS(getopt_long inet_ntop strdup)
-dnl AC_CHECK_FUNC(getopt_long)
-dnl AC_CHECK_FUNC(pthread_rwlock_rdlock,
-dnl [AC_DEFINE(HAVE_PTHREAD_RWLOCK, 1)])
-
-dnl ##################################################################
-dnl Check for system services.
-
-dnl ##################################################################
-dnl If the compiler is gcc, enable all warnings. Main purpose is to
-dnl catch any function call where the function has not been prototyped.
-dnl
-dnl Add "-Wcast-qual again later"...
-dnl if test "$ac_cv_prog_gcc" = yes; then
-if test "$ac_cv_gcc" = yes; then
- CFLAGS="$CFLAGS -Wall -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes"
-fi
-
-dnl disable type punning optimization until verified safe
-if test "$ac_cv_c_compiler_gnu" = yes; then
- SAVE_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -fno-strict-aliasing"
- AC_MSG_CHECKING([whether disabling type punning in gcc is possible])
- AC_TRY_COMPILE([], [], type_punning=yes, type_punning=no)
- if test $type_punning = no; then
- CFLAGS="$SAVE_CFLAGS"
- fi
- AC_MSG_RESULT($type_punning)
- unset type_punning
- unset SAVE_CFLAGS
- CFLAGS="$CFLAGS -Wall"
-fi
-
-if test "$enable_memcheck" = yes; then
- echo "Setting up for memory checking via mpatrol"
- CFLAGS="$CFLAGS -fcheck-memory-usage "
- LDFLAGS="$LDFLAGS -lmpatrol -lbfd -liberty "
-fi
-
-dnl Some system-specific stuff ...
-dnl Some operating systems require additional flags in order to get all
-dnl the definitions that we're looking for in some system headers.
-
-dnl default VARSTATEDIR to /var/lib since that's the traditional location.
-dnl
-varstatedir="/var/lib"
-
-EXPORT_SYMBOLS="-export-dynamic"
-case "$host" in
-*linux*)
- CFLAGS="$CFLAGS -D_REENTRANT"
- AC_DEFINE(LINUX, 1, LINUX)
-dnl
-dnl For fsusage.c - disk usage.
-dnl
- AC_DEFINE(STAT_STATVFS, 1, STAT_STATVFS)
- AC_DEFINE(SUPPORT_GEXEC, 1, SUPPORT_GEXEC)
- ;;
-*ia64-*hpux*) CFLAGS="$CFLAGS -D_PSTAT64 -D_HPUX_SOURCE"
- LIBS="-lpthread $LIBS"
- EXPORT_SYMBOLS="-Wl,-E"
- AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- AC_DEFINE(IA64,1,IA64)
- AC_DEFINE(HPUX,1,HPUX);;
-*aix*) CFLAGS="$CFLAGS -D_ALL_SOURCE -DAIX"
- EXPORT_SYMBOLS="-Wl,-bexpfull"
- AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- if test "$ac_cv_lib_perfstat_perfstat_cpu_total" = yes ; then
- CFLAGS="$CFLAGS -DHAVE_PERFSTAT"
- else
- echo "libperfstat not detected."
- echo "For AIX 5 you need to install bos.perf.libperfstat"
- fi
- AC_DEFINE(AIX, 1, AIX);;
-
-*hpux*) CFLAGS="$CFLAGS -D_HPUX_SOURCE"
- LIBS="-lpthread $LIBS"
- EXPORT_SYMBOLS="-Wl,-E"
- AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- AC_DEFINE(HPUX,1,HPUX);;
-*irix*) AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- CFLAGS="$CFLAGS -D_IRIX_SOURCE"
- AC_DEFINE(IRIX,1,IRIX);;
-*osf*) metric_source="osf.c"
- CFLAGS="$CFLAGS -D_SOCKADDR_LEN"
- AC_DEFINE(OSF,1,OSF);;
-*darwin*) AC_DEFINE(DARWIN,1,DARWIN)
- EXPORT_SYMBOLS="-export-all-symbols"
- ;;
-*solaris*) AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- if test "$ac_cv_prog_gcc" = yes; then
- CFLAGS="$CFLAGS -D__EXTENSIONS__ -D_POSIX_C_SOURCE=200112L -DHAVE_STRERROR"
- else
- CFLAGS="$CFLAGS -D__STDC__ -D_POSIX_C_SOURCE=200112L -DHAVE_STRERROR"
- fi
- AC_DEFINE(SOLARIS,1,SOLARIS);;
-*freebsd*) CFLAGS="-pthread $CFLAGS -D_REENTRANT"
- AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- varstatedir="/var/db"
- osreldate=`awk '/^\#define[[:space:]]*__FreeBSD_version/ { print $3 }' /usr/include/osreldate.h`
- if test $osreldate -lt 502102; then
- CFLAGS="-pthread $CFLAGS -D_REENTRANT"
- fi
- AC_DEFINE(FREEBSD, 1, FREEBSD);;
-*dragonfly*) CFLAGS="-pthread $CFLAGS -D_REENTRANT"
- AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- varstatedir="/var/db"
- AC_DEFINE(DRAGONFLYBSD, 1, DRAGONFLYBSD);;
-*netbsd*) AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- varstatedir="/var/db"
- AC_DEFINE(NETBSD, 1, NETBSD);;
-*openbsd*) AC_DEFINE(SUPPORT_GEXEC, 0, SUPPORT_GEXEC)
- varstatedir="/var/db"
- AC_DEFINE(OPENBSD, 1, OPENBSD);;
-*cygwin*) LDFLAGS="-L/bin"
- EXPORT_SYMBOLS="-export-all-symbols"
- AC_DEFINE(CYGWIN, 1, CYGWIN)
-esac
-
-AC_SUBST(EXPORT_SYMBOLS)
-
-dnl Define VARSTATEDIR in config.h
-dnl
-AC_SUBST(varstatedir)
-AC_DEFINE_UNQUOTED(VARSTATEDIR, "$varstatedir", VARSTATEDIR)
-
-if test x"$libdir" = x"\${exec_prefix}/lib"; then
- if test x"$exec_prefix" = xNONE; then
- if test x"$prefix" = xNONE; then
- exec_prefix="$ac_default_prefix"
- else
- exec_prefix="$prefix"
- fi
- fi
- libdir=`eval echo "$libdir"`
-fi
-AC_SUBST(libdir)
-
-AC_OUTPUT(Makefile
- ganglia-config
- tests/Makefile
- ganglia.spec
- gmetad/Makefile
- lib/default_conf.h
- lib/Makefile
- gmond/Makefile
- gstat/Makefile
- gmond/modules/Makefile
- gmond/modules/conf.d/example.conf
- gmond/modules/conf.d/modpython.conf
- gmond/modules/conf.d/multicpu.conf
- gmond/modules/conf.d/modgstatus.conf
- gmond/modules/example/Makefile
- gmond/modules/cpu/Makefile
- gmond/modules/disk/Makefile
- gmond/modules/memory/Makefile
- gmond/modules/network/Makefile
- gmond/modules/python/Makefile
- gmond/modules/status/Makefile
- gmond/modules/system/Makefile
- gmond/python_modules/Makefile
- gmond/python_modules/disk/Makefile
- gmond/python_modules/example/Makefile
- gmond/python_modules/network/Makefile
- gmetric/Makefile
- include/Makefile
- web/version.php)
-
-
-echo ""
-echo "Welcome to.."
-echo " ______ ___"
-echo " / ____/___ _____ ____ _/ (_)___ _"
-echo " / / __/ __ \`/ __ \/ __ \`/ / / __ \`/"
-echo " / /_/ / /_/ / / / / /_/ / / / /_/ /"
-echo " \____/\__,_/_/ /_/\__, /_/_/\__,_/"
-echo " /____/"
-echo ""
-echo "Copyright (c) 2005 University of California, Berkeley"
-echo ""
-echo "Version: $GANGLIA_VERSION ($GANGLIA_RELEASE_NAME)"
-echo "Library: Release $LT_RELEASE $LT_CURRENT:$LT_REVISION:$LT_AGE"
-echo ""
-echo "Type \"make\" to compile."
-
View
35 monitor-core-3.1/contrib/README.contrib
@@ -1,35 +0,0 @@
-The files in this directory have been graciously contributed by the
-Ganglia users' community. While the various files and scripts are
-believed to work, they are *NOT* supported by core Ganglia development
-team. Use at your own risk, YMMV, etc, etc.
-
-If you have any questions about the files, please contact the original
-authors or try emailing the ganglia-general mailing list. Information
-about joining this list can be found at:
-
- https://lists.sourceforge.net/lists/listinfo/ganglia-general
-
-New contributions are welcome! Please send them to the ganglia-general
-mailing list as well.
-
-========================================================================
-The files:
-------------------------------------------------------------------------
-
-ganglia_gmond.xml
-ganglia_gmetad.xml
- Contributed by Ben Rockwood (benr {@} joyent . com)
- Solaris/X86 SMF Manifest files. Both manifests assume that
- Ganglia was installed with the prefix /opt/ganglia. To load
- load them (for example for gmond) run :
-
- # svccfg import ganglia_gmond.xml
-
-
-diskfree_report.php
- Contributed by Jesse Becker ( hawson _AT_ gmail . com)
- Fancy diskfree report that attempts to predict when you
- will run out of disk space. Currently only works on aggregate
- disk usage, but could be altered to work on individual hosts
- as well.
-
View
98 monitor-core-3.1/contrib/diskfree_report.php
@@ -1,98 +0,0 @@
-<?php
-
-/* Report to predict when the overall diskfree figures will reach zero */
-
-/* Place this in the graph.d/ directory, and add "diskfree" to the
- $optional_graphs array in web/conf.php */
-
-function graph_diskfree_report ( &$rrdtool_graph ) {
-
-/* this is just the cpu_report (from revision r920) as an example, but with extra comments */
-
- // pull in a number of global variables, many set in conf.php (such as colors and $rrd_dir),
- // but other from elsewhere, such as get_context.php
-
- global $context,
- $cpu_idle_color,
- $cpu_nice_color,
- $cpu_system_color,
- $cpu_user_color,
- $cpu_wio_color,
- $hostname,
- $range,
- $rrd_dir,
- $size;
- //
- // You *MUST* set at least the 'title', 'vertical-label', and 'series' variables.
- // Otherwise, the graph *will not work*.
- //
- $rrdtool_graph['title'] = 'Diskfree Report';
- // This will be turned into:
- // "Clustername $TITLE last $timerange", so keep it short
- $rrdtool_graph['vertical-label'] = 'Percent Free Space';
- $rrdtool_graph['upper-limit'] = '100';
- $rrdtool_graph['lower-limit'] = '0';
- $rrdtool_graph['extras'] = '--rigid';
-
- switch ($range) {
-
- case "day" :
- $rrdtool_graph['end'] = '+6h';
- break;
- case "week" :
- $rrdtool_graph['end'] = '+2d';
- break;
- case "month" :
- $rrdtool_graph['end'] = '+3w';
- break;
- case "year" :
- $rrdtool_graph['end'] = '+2m';
- break;
- default:
- $rrdtool_graph['end'] = 'N';
- break;
- }
-
-
- /* Here we actually build the chart series. This is moderately complicated
- to show off what you can do. For a simpler example, look at network_report.php */
- if($context != "host" ) {
-
- }
- // Context is not "host"
- else {
-
- }
-
- $series_a = array(
- "DEF:'total_free'=$rrd_dir/disk_free.rrd:sum:AVERAGE",
- "DEF:'num_nodes'=$rrd_dir/disk_free.rrd:num:AVERAGE",
- "CDEF:free=total_free,num_nodes,/",
- "CDEF:threshold=num_nodes,UN,0,0,IF,5,+",
- "VDEF:intercept=free,LSLINT",
- "VDEF:slope=free,LSLSLOPE",
- "VDEF:correlation=free,LSLCORREL",
- "CDEF:free_trend=free,POP,intercept,COUNT,slope,*,+",
- "CDEF:space_exceeded=free_trend,threshold,LE,1,UNKN,IF",
- "VDEF:space_date=space_exceeded,FIRST",
-
- "AREA:free#999999",
- "LINE2:threshold#ff0000",
- "LINE1:free#000000:'Free Disk space\l'",
- "LINE2:free_trend#0000FF:'Current usage trend'",
- "VRULE:space_date#f00",
- "GPRINT:correlation:'Correlation is %1.2lf\l'",
- "GPRINT:space_date:' Estimated out-of-space date is %a %d %B %Y\l':strftime",
- );
-
- $series = implode(' ',$series_a);
-
- // We have everything now, so add it to the array, and go on our way.
- $rrdtool_graph['series'] = $series;
-
-// error_log(var_export($rrdtool_graph,TRUE));
-
- return $rrdtool_graph;
-}
-
-?>
View
34 monitor-core-3.1/contrib/ganglia_gmetad.xml
@@ -1,34 +0,0 @@
-<?xml version='1.0'?>
-<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
-<service_bundle type='manifest' name='gmetad'>
- <service name='application/ganglia/gmetad' type='service' version='1'>
-
- <dependency name='fs' grouping='require_all' restart_on='none' type='service'>
- <service_fmri value='svc:/system/filesystem/local'/>
- </dependency>
- <dependency name='net' grouping='require_all' restart_on='none' type='service'>
- <service_fmri value='svc:/network/physical:default'/>
- </dependency>
- <dependency name='config' grouping='require_all' restart_on='none' type='path'>
- <service_fmri value='file://localhost/etc/gmetad.conf'/>
- </dependency>
-
- <exec_method name='start' type='method' exec='/opt/ganglia/sbin/gmetad' timeout_seconds='60'/>
- <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60' />
-
- <instance name="default" enabled="true">
- </instance>
-
- <stability value='Unstable' />
-
- <template>
- <common_name>
- <loctext xml:lang='C'>Ganglia Gmeta Daemon</loctext>
- </common_name>
- <documentation>
- <doc_link name='ganglia.sourceforge.net' uri='http://ganglia.sourceforge.net/' />
- </documentation>
- </template>
-
- </service>
-</service_bundle>
View
34 monitor-core-3.1/contrib/ganglia_gmond.xml
@@ -1,34 +0,0 @@
-<?xml version='1.0'?>
-<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>
-<service_bundle type='manifest' name='gmond'>
- <service name='application/ganglia/gmond' type='service' version='1'>
-
- <dependency name='fs' grouping='require_all' restart_on='none' type='service'>
- <service_fmri value='svc:/system/filesystem/local'/>
- </dependency>
- <dependency name='net' grouping='require_all' restart_on='none' type='service'>
- <service_fmri value='svc:/network/physical:default'/>
- </dependency>
- <dependency name='config' grouping='require_all' restart_on='none' type='path'>
- <service_fmri value='file://localhost/etc/gmond.conf'/>
- </dependency>
-
- <exec_method name='start' type='method' exec='/opt/ganglia/sbin/gmond' timeout_seconds='60'/>
- <exec_method name='stop' type='method' exec=':kill' timeout_seconds='60' />
-
- <instance name="default" enabled="true">
- </instance>
-
- <stability value='Unstable' />
-
- <template>
- <common_name>
- <loctext xml:lang='C'>Ganglia Gmon Daemon</loctext>
- </common_name>
- <documentation>
- <doc_link name='ganglia.sourceforge.net' uri='http://ganglia.sourceforge.net/' />
- </documentation>
- </template>
-
- </service>
-</service_bundle>
View
109 monitor-core-3.1/ganglia-config.in
@@ -1,109 +0,0 @@
-#!/bin/sh
-
-DIFS='
-'
-
-prefix="@prefix@"
-exec_prefix="@exec_prefix@"
-
-ganglia_prefix="$prefix"
-ganglia_exec_prefix="$exec_prefix"
-ganglia_bindir="@bindir@"
-ganglia_libdir="@libdir@"
-ganglia_includedir="@includedir@"
-ganglia_datarootdir="@varstatedir@/ganglia"
-ganglia_cflags="@CFLAGS@"
-ganglia_ldflags="@LDFLAGS@"
-ganglia_libs="@LIBS@"
-ganglia_version="@VERSION@"
-
-help=no
-version=no
-
-usage="ganglia-config"
-usage="$usage [--help] [--version] [--all]"
-usage="$usage [--prefix] [--exec-prefix] [--bindir] [--libdir] [--includedir] [--datarootdir]"
-usage="$usage [--cflags] [--ldflags] [--libs]"
-if [ $# -eq 0 ]; then
- echo "ganglia-config:Error: Invalid option" 1>&2
- echo "ganglia-config:Usage: $usage" 1>&2
- exit 1
-fi
-output=''
-output_extra=''
-all=no
-prev=''
-OIFS="$IFS" IFS="$DIFS"
-for option
-do
- if [ ".$prev" != . ]; then
- eval "$prev=\$option"
- prev=''
- continue
- fi
- case "$option" in
- -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) optarg='' ;;
- esac
- case "$option" in
- --help|-h)
- echo "Usage: $usage"
- echo "Report bugs to ganglia-developers@lists.sourceforge.net"
- exit 0
- ;;
- --version|-v)
- echo "Ganglia $ganglia_version"
- exit 0
- ;;
- --all)
- all=yes
- ;;
- --prefix)
- output="$output $ganglia_prefix"
- ;;
- --exec-prefix)
- output="$output $ganglia_exec_prefix"
- ;;
- --bindir)
- output="$output $ganglia_bindir"
- ;;
- --libdir)
- output="$output $ganglia_libdir"
- ;;
- --includedir)
- output="$output $ganglia_includedir"
- ;;
- --datarootdir)
- output="$output $ganglia_datarootdir"
- ;;
- --cflags)
- output="$output -I$ganglia_includedir"
- output_extra="$output_extra $ganglia_cflags"
- ;;
- --ldflags)
- output="$output -L$ganglia_libdir"
- output_extra="$output_extra $ganglia_ldflags"
- ;;
- --libs)
- output="$output -lganglia"
- output_extra="$output_extra $ganglia_libs"
- ;;
- * )
- echo "ganglia-config:Error: Invalid option" 1>&2
- echo "ganglia-config:Usage: $usage" 1>&2
- exit 1;
- ;;
- esac
-done
-IFS="$OIFS"
-if [ ".$prev" != . ]; then
- echo "ganglia-config:Error: missing argument to --`echo $prev | sed 's/_/-/g'`" 1>&2
- exit 1
-fi
-if [ ".$output" != . ]; then
- if [ ".$all" = .yes ]; then
- output="$output $output_extra"
- fi
- echo $output
-fi
-
View
1,048 monitor-core-3.1/ganglia.pod
@@ -1,1048 +0,0 @@
-=pod
-
-=for comment The ganglia documentation is written in POD (Plain Old Documentation)
-format. If you want to edit this file but don't know the POD format, it is very
-easy to learn. Visit http://www.linuxgazette.com/issue73/spiel.html for a nice intro
-or read the http://www.perldoc.com/perl5.6.1/pod/perlpod.html perl pod documentation.
-
-=head1 Name
-
-B<ganglia> - distributed monitoring system
-
-=head1 Version
-
-B<ganglia> GANGLIA_VERSION
-
-The latest version of this software and document will always be found at
-http://ganglia.sourceforge.net/. You are currently reading
-$Revision$ of this document.
-
-=head1 Synopsis
-
- ______ ___
- / ____/___ _____ ____ _/ (_)___ _
- / / __/ __ `/ __ \/ __ `/ / / __ `/
- / /_/ / /_/ / / / / /_/ / / / /_/ /
- \____/\__,_/_/ /_/\__, /_/_/\__,_/
- /____/ Distributed Monitoring System
-
-Ganglia is a scalable distributed monitoring system for high-performance computing systems
-such as clusters and Grids. It is based on a hierarchical design targeted at federations of
-clusters. It relies on a multicast-based listen/announce protocol to monitor state within
-clusters and uses a tree of point-to-point connections amongst representative cluster nodes
-to federate clusters and aggregate their state. It leverages widely used technologies such as
-XML for data representation, XDR for compact, portable data transport, and RRDtool for data
-storage and visualization. It uses carefully engineered data structures and algorithms to
-achieve very low per-node overheads and high concurrency. The implementation is robust, has
-been ported to an extensive set of operating systems and processor architectures, and is
-currently in use on over 500 clusters around the world. It has been used to link clusters
-across university campuses and around the world and can scale to handle clusters with 2000 nodes.
-
-The ganglia system is comprised of two unique daemons, a PHP-based web frontend and a few other
-small utility programs.
-
-=over 4
-
-=item B<Ganglia Monitoring Daemon (gmond)>
-
-Gmond is a multi-threaded daemon which runs on each cluster node you want to monitor.
-Installation is easy. You don't have to have a common NFS filesystem or a database backend,
-install special accounts, maintain configuration files or other annoying hassles.
-
-Gmond has four main responsibilities: monitor changes in host state, announce relevant changes,
-listen to the state of all other ganglia nodes via a unicast or multicast channel and answer requests for
-an XML description of the cluster state.
-
-Each gmond transmits in information in two different ways: unicasting/multicasting host state in external data
-representation (XDR) format using UDP messages or sending XML over a TCP connection.
-
-=item B<Ganglia Meta Daemon (gmetad)>
-
-Federation in Ganglia is achieved using a tree of point-to-point
-connections amongst representative cluster nodes to aggregate the
-state of multiple clusters. At each node in the tree, a Ganglia Meta
-Daemon (C<gmetad>) periodically polls a collection of child data
-sources, parses the collected XML, saves all numeric, volatile metrics
-to round-robin databases and exports
-the aggregated XML over a TCP sockets to clients. Data sources may be either
-C<gmond> daemons, representing specific clusters, or other
-C<gmetad> daemons, representing sets of clusters. Data sources
-use source IP addresses for access control and can be specified using
-multiple IP addresses for failover. The latter capability is natural
-for aggregating data from clusters since each C<gmond> daemon
-contains the entire state of its cluster.
-
-=item B<Ganglia PHP Web Frontend>
-
-The Ganglia web frontend provides a view of the gathered information
-via real-time dynamic web pages. Most importantly, it displays Ganglia
-data in a meaningful way for system administrators and computer users.
-Although the web frontend to ganglia started as a simple HTML view of the
-XML tree, it has evolved into a system that keeps a colorful history of
-all collected data.
-
-The Ganglia web frontend caters to system administrators and users. For
-example, one can view the CPU utilization over the past hour, day, week,
-month, or year. The web frontend shows similar graphs for Memory usage,
-disk usage, network statistics, number of running processes, and all other
-Ganglia metrics.
-
-The web frontend depends on the existence of the C<gmetad> which provides it
-with data from several Ganglia sources. Specifically, the web frontend will
-open the local port 8651 (by default) and expects to receive a Ganglia XML tree.
-The web pages themselves are highly dynamic; any change to the Ganglia data appears
-immediately on the site. This behavior leads to a very responsive site, but requires
-that the full XML tree be parsed on every page access. Therefore, the Ganglia web
-frontend should run on a fairly powerful, dedicated machine if it presents a large
-amount of data.
-
-The Ganglia web frontend is written in the PHP scripting language, and uses graphs
-generated by C<gmetad> to display history information. It has been tested on many
-flavours of Unix (primarily Linux) with the Apache webserver and the PHP module (4.1 or later).
-
-=back
-
-=head1 Installation
-
-The latest version of all ganglia software can always be downloaded from http://ganglia.info/
-
-Ganglia runs on Linux (i386, ia64, sparc, alpha, powerpc, m68k, mips, arm, hppa, s390),
-FreeBSD, NetBSD, OpenBSD, DragonflyBSD, MacOS X, Solaris, AIX, IRIX, Tru64, HPUX and Windows NT/XP/2000/2003/2008 making it as
-portable as it is scalable.
-
-=head2 Monitoring Core Installation
-
-If you use the Linux RPMs provided on the ganglia web site, you can skip
-to the end of this section.
-
-Ganglia uses the GNU autoconf so compilation and installation of the monitoring core is basically
-
- % ./configure
- % make
- % make install
-
-but there are some issues that you need to take a look at first.
-
-=over 4
-
-=item B<Kernel multicast support>
-
-If you use the ganglia multicast support, you must have a kernel that
-supports multicast. The
-vast majority of machines have multicast support by default. If you have
-problems with ganglia this is a core issue.
-
-=item B<Gmetad is not installed by default>
-
-Since C<gmetad> relies on the Round-Robin Database Tool ( see http://www.rrdtool.org/ )
-it will not be compiled unless you explicit request it by using a B<--with-gmetad> flag.
-
- % ./configure --with-gmetad
-
-The configure script will fail if it cannot find the rrdtool library and header files.
-By default, it expects to find them at /usr/include/rrd.h and
-/usr/lib/librrd.so.
-If you installed them in different locations then you need to instruct
-configure where to find them using:
-
- % ./configure --with-librrd=/rrd/path --with-gmetad
-
-Of course, you need to substitute C</rrd/path> with the real location of the
-rrd tool directory where the header file can be located inside an include
-subdirectory and the library can be located inside a lib subdirectory.
-As an alternative you could set "-L" in LDFLAGS, and "-I" in CFLAGS and
-CPPFLAGS for the library path and the header path respectively.
-
-=item B<AIX should not be compiled with shared libraries>
-
-You must add the C<--disable-shared> configure flags if you are running on AIX.
-For more details refer to the README.AIX file
-
- % ./configure --disable-shared
-
-=item B<Solaris dependencies could be problematic>
-
-Not really a Solaris specific problem, but since Solaris has several different
-package repositories, all of them unofficial, it is difficult to be sure
-that all possible permutations have been confirmed to work reliably.
-
-Be sure to have all dependencies covered, as explained in the INSTALL file and
-to use GNU make and a gcc compiler that builds 32bit binaries with all other
-libraries matching that ISA.
-
-When in doubt, build the problematic dependency from source and remember
-to distribute it together with your ganglia build as everything is dynamically
-linked by default.
-
-Be particularly careful with libConfuse, especially if using the old 2.5 version.
-LibConfuse 2.5 is known to be incorrectly packaged and to compile by default
-as a static library which will fail to link with ganglia.
-
-=item B<Propietary *NIX systems might not work at all>
-
-The good news is that the libmetrics code that used to work before 3.1 is
-still most likely working fine and so there is nothing fundamentally broken
-about it.
-
-But the bad news is that in order to add the dynamic metric functionality,
-the build system and the way gmond used to locate its metrics had to be
-changed significantly. Therefore getting gmond to build and work again
-required fixes to be implemented for all platforms.
-
-Since none of the developers had access to HPUX, IRIX, Tru64 (OSF/1), or Darwin
-(MacOS X) those platforms might not be able to build or run a 3.1 gmond
-yet. If you have access to any of these platforms and want to run ganglia 3.1,
-feel free to drop by the ganglia-developers list with suggestions, or even
-better patches.
-
-=item B<GEXEC confusion>
-
-GEXEC is a scalable cluster remote execution system which provides fast, RSA authenticated
-remote execution of parallel and distributed jobs. It provides transparent forwarding of
-stdin, stdout, stderr, and signals to and from remote processes, provides local environment
-propagation, and is designed to be robust and to scale to systems over 1000 nodes. Internally,
-GEXEC operates by building an n-ary tree of TCP sockets and threads between gexec daemons and
-propagating control information up and down the tree. By using hierarchical control, GEXEC
-distributes both the work and resource usage associated with massive amounts of parallelism
-across multiple nodes, thereby eliminating problems associated with single node resource limits
-(e.g., limits on the number of file descriptors on front-end nodes).
-(from http://www.theether.org/gexec )
-
-C<gexec> is a great cluster execution tool but integrating it with ganglia is a bit clumsy.
-GEXEC can run standalone without access to a ganglia C<gmond>. In standalone
-mode gexec will use the hosts listed in your GEXEC_SVRS variable to run on. For example,
-say I want to run C<hostname> on three machines in my cluster: C<host1>, C<host2> and C<host3>.
-I use the following command line.
-
- % GEXEC_SVRS="host1 host2 host3" gexec -n 3 hostname
-
-and gexec would build an n-ary tree (binary tree by default) of TCP sockets to those machines
-and run the command C<hostname>
-
-As an added feature, you can have C<gexec> pull a host list from a locally running gmond and
-use that as the host list instead of GEXEC_SVRS. The list is load balanced and C<gexec> will
-start the job on the I<n> least-loaded machines.
-
-For example..
-
- % gexec -n 5 hostname
-
-will run the command C<hostname> on the five least-loaded machines in a cluster.
-
-To turn on the C<gexec> feature in ganglia you must configure ganglia with the C<--enable-gexec>
-flag
-
- % ./configure --enable-gexec
-
-Enabling C<gexec> means that by default any host running gmond will send a special
-message announcing that gexec is installed on it and open for requests.
-
-Now the question is, what if I don't want gexec to run on every host in my cluster? For
-example, you may not want to have C<gexec> run jobs on your cluster frontend nodes.
-
-You simply add the following line to your C<gmond> configuration file (C</etc/ganglia/gmond.conf> by
-default)
-
- no_gexec on
-
-Simple huh? I know the configuration file option, C<no_gexec>, seems crazy (and it is). Why
-have an option that says "yes to no gexec"? The early versions of gmond didn't use a configuration
-file but instead commandline options. One of the commandline options was simply C<--no-gexec>
-and the default was to announce gexec as on.
-
-=back
-
-Once you have successfully run
-
- % ./configure <options>
- % make
- % make install
-
-you should find the following files installed in C</usr> (by default).
-
- /usr/bin/gstat
- /usr/bin/gmetric
- /usr/sbin/gmond
- /usr/sbin/gmetad
-
-If you installed ganglia using RPMs then these files will be installed when you install
-the RPM. The RPM is installed simply by running
-
- % rpm -Uvh ganglia-gmond-GANGLIA_VERSION.i386.rpm
- % rpm -Uvh ganglia-gmetad-GANGLIA_VERSION.i386.rpm
-
-Once you have the necessary binaries installed, you can test your installation by running
-
- % ./gmond
-
-This will start the ganglia monitoring daemon. You should then be able to run
-
- % telnet localhost 8649
-
-And get an XML description of the state of your machine (and any other hosts running gmond
-at the time).
-
-If you are installing by source on Linux, scripts are provided to start C<gmetad> and C<gmond>
-at system startup. They are easy to install from the source root.
-
- % cp ./gmond/gmond.init /etc/rc.d/init.d/gmond
- % chkconfig --add gmond
- % chkconfig --list gmond
- gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
- % /etc/rc.d/init.d/gmond start
- Starting GANGLIA gmond: [ OK ]
-
-Repeat this step with gmetad.
-
-=head2 PHP Web Frontend Installation
-
-=over 4
-
-=item 1.
-
-The B<./web> directory of the ganglia distribution contains all the necessary PHP files for
-running your web frontend. Copy those files to C</var/www/html>, however look for the variable
-C<DocumentRoot> in your Apache configuration
-files to be sure. All the PHP script files use relative URLs in their links, so you may
-place the C<ganglia/> directory anywhere convenient.
-
-=item 2.
-
-Ensure your webserver understands how to process PHP script files. Currently, the
-web frontend contains certain php language that requires PHP version 4 or greater.
-Processing PHP script files usually requires a webserver module, such as the
-C<mod_php> for the popular Apache webserver. In RedHat Linux, the RPM package that
-provides this module is called simply "php".
-
-For Apache, C<mod_php> module must be enabled. The following lines should appear
-somewhere in Apache's *conf files. This example applies to RedHat and Mandrake
-Linux. The actual filenames may vary on your system. If you installed the php
-module using an RPM package, this work will have been done automatically.
-
- <IfDefine HAVE_PHP4>
- LoadModule php4_module extramodules/libphp4.so
- AddModule mod_php4.c
- </IfDefine>
-
- AddType application/x-httpd-php .php .php4 .php3 .phtml
- AddType application/x-httpd-php-source .phps
-
-=item 3.
-
-The webfrontend requires the existance of the gmetad package on the webserver.
-Follow the installation instructions on the gmetad page. Specifically, the webfrontend
-requires the rrdtool and the C<rrds/> directory from gmetad. If you are a power user,
-you may use NFS to simulate the local existance of the rrds.
-
-=item 4.
-
-Test your installation. Visit the URL:
-
- http://localhost/ganglia/
-
-With a web-browser, where localhost is the address of your webserver.
-
-=back
-
-Installation of the web frontend is simplified on Linux by using rpm.
-
- % rpm -Uvh ganglia-web-GANGLIA_VERSION-1.i386.rpm
- Preparing... ########################################### [100%]
- 1:ganglia-web ########################################### [100%]
-
-=head1 Configuration
-
-=head2 Gmond Configuration
-
-The configuration file format has changed between gmond version 2.5.x and version
-3.x. The change was necessary in order to allow more complex configuration options.
-
-Gmond has a default configuration it will use if it does not find the default configuration
-file B</etc/ganglia/gmond.conf>. To see the default configuration simply run the command:
-
- % gmond --default_config
-
-and gmond will output its default configuration to stdout. This default configuration can
-serve as a good starting place for building a more custom configuration.
-
- % gmond --default_config > gmond.conf
-
-would create a file B<gmond.conf> which you can then edit to taste and copy to B</etc/ganglia/gmond.conf>
-or elsewhere.
-
-To start gmond with a configuration file other then B</etc/ganglia/gmond.conf>, simply specify the
-configuration file location by running
-
- % gmond --config /my/ganglia/configs/custom.conf
-
-If you want to convert a 2.5.x configuration file to 3.x file format, run the following command
-
- % gmond --convert ./old_25_config.conf
-
-and gmond with output the equivalent 3.x configuration file to stdout. You can then redirect
-that output to a new configuration file which can serve as a starting point for your configuration.
-
- % gmond --convert ./old_25_config.conf > ./new_26_config.conf
-
-For details about gmond configuration options, simply run
-
- % man gmond.conf
-
-for a complete listing of options with detailed explanations.
-
-
-=head2 Gmetad Configuration
-
-The behavior of the Ganglia Meta Daemon is completely controlled by a single configuration
-file which is by default C</etc/ganglia/gmetad.conf>. For gmetad to do anything useful you much
-specify at least one C<data_source> in the configuration. The format of the data_source
-line is as follows
-
- data_source "Cluster A" 127.0.0.1 1.2.3.4:8655 1.2.3.5:8625
- data_source "Cluster B" 1.2.4.4:8655
-
-In this example, there are two unique data sources: "Cluster A" and "Cluster B". The
-Cluster A data source has three redundant sources. If gmetad cannot pull the data
-from the first source, it will continue trying the other sources in order.
-
-If you do not specify a port number, gmetad will assume the default ganglia port which
-is 8649 (U*N*I*X on a phone key pad)
-
-Here is a sample gmetad configuration file with comments
-
- # This is an example of a Ganglia Meta Daemon configuration file
- # http://ganglia.sourceforge.net/
- #
- #-------------------------------------------------------------------------------
- # Setting the debug_level to 1 will keep daemon in the forground and
- # show only error messages. Setting this value higher than 1 will make
- # gmetad output debugging information and stay in the foreground.
- # default: 0
- # debug_level 10
- #
- #-------------------------------------------------------------------------------
- # What to monitor. The most important section of this file.
- #
- # The data_source tag specifies either a cluster or a grid to
- # monitor. If we detect the source is a cluster, we will maintain a complete
- # set of RRD databases for it, which can be used to create historical
- # graphs of the metrics. If the source is a grid (it comes from another gmetad),
- # we will only maintain summary RRDs for it.
- #
- # Format:
- # data_source "my cluster" [polling interval] address1:port addreses2:port ...
- #
- # The keyword 'data_source' must immediately be followed by a unique
- # string which identifies the source, then an optional polling interval in
- # seconds. The source will be polled at this interval on average.
- # If the polling interval is omitted, 15sec is asssumed.
- #
- # A list of machines which service the data source follows, in the
- # format ip:port, or name:port. If a port is not specified then 8649
- # (the default gmond port) is assumed.
- # default: There is no default value
- #
- # data_source "my cluster" 10 localhost my.machine.edu:8649 1.2.3.5:8655
- # data_source "my grid" 50 1.3.4.7:8655 grid.org:8651 grid-backup.org:8651
- # data_source "another source" 1.3.4.7:8655 1.3.4.8
-
- data_source "my cluster" localhost
-
- #
- #-------------------------------------------------------------------------------
- # Scalability mode. If on, we summarize over downstream grids, and respect
- # authority tags. If off, we take on 2.5.0-era behavior: we do not wrap our output
- # in <GRID></GRID> tags, we ignore all <GRID> tags we see, and always assume
- # we are the "authority" on data source feeds. This approach does not scale to
- # large groups of clusters, but is provided for backwards compatibility.
- # default: on
- # scalable off
- #
- #-------------------------------------------------------------------------------
- # The name of this Grid. All the data sources above will be wrapped in a GRID
- # tag with this name.
- # default: Unspecified
- # gridname "MyGrid"
- #
- #-------------------------------------------------------------------------------
- # The authority URL for this grid. Used by other gmetads to locate graphs
- # for our data sources. Generally points to a ganglia/
- # website on this machine.
- # default: "http://hostname/ganglia/",
- # where hostname is the name of this machine, as defined by gethostname().
- # authority "http://mycluster.org/newprefix/"
- #
- #-------------------------------------------------------------------------------
- # List of machines this gmetad will share XML with. Localhost
- # is always trusted.
- # default: There is no default value
- # trusted_hosts 127.0.0.1 169.229.50.165 my.gmetad.org
- #
- #-------------------------------------------------------------------------------
- # If you want any host which connects to the gmetad XML to receive
- # data, then set this value to "on"
- # default: off
- # all_trusted on
- #
- #-------------------------------------------------------------------------------
- # If you don't want gmetad to setuid then set this to off
- # default: on
- # setuid off
- #
- #-------------------------------------------------------------------------------
- # User gmetad will setuid to (defaults to "nobody")
- # default: "nobody"
- # setuid_username "nobody"
- #
- #-------------------------------------------------------------------------------
- # The port gmetad will answer requests for XML
- # default: 8651
- # xml_port 8651
- #
- #-------------------------------------------------------------------------------
- # The port gmetad will answer queries for XML. This facility allows
- # simple subtree and summation views of the XML tree.
- # default: 8652
- # interactive_port 8652
- #
- #-------------------------------------------------------------------------------
- # The number of threads answering XML requests
- # default: 4
- # server_threads 10
- #
- #-------------------------------------------------------------------------------
- # Where gmetad stores its round-robin databases
- # default: "/var/lib/ganglia/rrds"
- # rrd_rootdir "/some/other/place"
-
-C<gmetad> has a C<--conf> option to allow you to specify alternate configuration files
-
- % ./gmetad -conf=/tmp/my_custom_config.conf
-
-=head2 PHP Web Frontend Configuration
-
-Most configuration parameters reside in the C<ganglia/conf.php> file. Here you
-may alter the template, gmetad location, RRDtool location, and set the default time range
-and metrics for graphs.
-
-The static portions of the Ganglia website are themable. This means you can alter elements
-such as section lables, some links, and images to suit your individual tastes and environment.
-The C<template_name> variable names a directory containing the current theme. Ganglia uses
-TemplatePower to implement themes. A user-defined skin must conform to the template interface
-as defined by the default theme. Essentially, the variable names and START/END blocks in a
-custom theme must remain the same as the default, but all other HTML elements may be changed.
-
-Other configuration variables in C<conf.php> specify the location of gmetad's files, and where
-to find the rrdtool program. These locations need only be changed if you do not run gmetad on
-the webserver. Otherwise the default locations should work fine. The C<default_range> variable
-specifies what range of time to show on the graphs by default, with possible values of hour,
-day, week, month, year. The C<default_metric> parameter specifies which metric to show on
-the cluster view page by default.
-
-=head1 Commandline Tools
-
-There are two commandline tools that work with C<gmond> to add custom metrics and
-query the current state of a cluster: C<gmetric> and C<gstat> respectively.
-
-=head2 Gmetric
-
-The B<Ganglia Metric Tool (gmetric)> allows you to easily monitor any arbitrary
-host metrics that you like expanding on the core metrics that gmond measures by default.
-
-If you want help with the gmetric sytax, simply use the "help" commandline option
-
- % gmetric --help
- gmetric GANGLIA_VERSION
-
- Purpose:
- The Ganglia Metric Client (gmetric) announces a metric
- on the list of defined send channels defined in a configuration file
-
- Usage: gmetric [OPTIONS]...
-
- -h, --help Print help and exit
- -V, --version Print version and exit
- -c, --conf=STRING The configuration file to use for finding send channels
- (default=`/etc/ganglia/gmond.conf')
- -n, --name=STRING Name of the metric
- -v, --value=STRING Value of the metric
- -t, --type=STRING Either
- string|int8|uint8|int16|uint16|int32|uint32|float|double
- -u, --units=STRING Unit of measure for the value e.g. Kilobytes, Celcius
- (default=`')
- -s, --slope=STRING Either zero|positive|negative|both (default=`both')
- -x, --tmax=INT The maximum time in seconds between gmetric calls
- (default=`60')
- -d, --dmax=INT The lifetime in seconds of this metric (default=`0')
- -S, --spoof=STRING IP address and name of host/device (colon separated) we
- are spoofing (default='')
- -H, --heartbeat spoof a heartbeat message (use with spoof option)
-
-Gmetric sends the metric specified on the commandline to all B<udp_send_channel>s specified
-in the configuration file B</etc/ganglia/gmond.conf> by default. If you want to send metric to
-alternate B<udp_send_channel>s, you can specify a different configuration file as such:
-
- % gmetric --conf=./custom.conf -n "wow" -v "it works" -t "string"
-
-All metrics in ganglia have a name, value, type and optionally units. For example, say I wanted
-to measure the temperature of my CPU (something gmond doesn't do by default) then I could
-send this metric with name="temperature", value="63", type="int16" and units="Celcius".
-
-Assume I have a program called C<cputemp> which outputs in text the temperature of the CPU
-
- % cputemp
- 63
-
-I could easily send this data to all listening gmonds by running
-
- % gmetric --name temperature --value `cputemp` --type int16 --units Celcius
-
-Check the exit value of gmetric to see if it successfully sent the data: 0 on success and -1 on failure.
-
-To constantly sample this temperature metric, you just need too add this command to your cron table.
-
-=head2 Gstat
-
-The Ganglia Cluster Status Tool (gstat) is a commandline utility that allows you to get status
-report for your cluster.
-
-To get help with the commandline options, simply pass C<gstat> the C<--help> option
-
- % gstat --help
- gstat GANGLIA_VERSION
-
- Purpose:
- The Ganglia Status Client (gstat) connects with a
- Ganglia Monitoring Daemon (gmond) and output a load-balanced list
- of cluster hosts
-
- Usage: gstat [OPTIONS]...
- -h --help Print help and exit
- -V --version Print version and exit
- -a --all List all hosts. Not just hosts running gexec (default=off)
- -d --dead Print only the hosts which are dead (default=off)
- -m --mpifile Print a load-balanced mpifile (default=off)
- -1 --single_line Print host and information all on one line (default=off)
- -l --list Print ONLY the host list (default=off)
- -n --numeric Print numeric addresses instead of hostnames (default=off)
- -iSTRING --gmond_ip=STRING Specify the ip address of the gmond to query (default='127.0.0.1')
- -pINT --gmond_port=INT Specify the gmond port to query (default=8649)
-
-Note: gstat with no option will only show gexec-enabled hosts. To see all hosts that are UP (regardless
-of their gexec state) you need to add the B<--all> flag.
-
- % gstat --all
-
-=head1 Extending Ganglia through metric modules
-
-There are currently two ways in which metric modules can be written and plugged into Gmond in order
-to extend the types of metrics that Ganglia is able to monitor. As of Ganglia 3.1, a pluggable
-interface has been added to allow the Gmond metric gathering agent to collect any type of metric
-that can be acquired through programatic means. The primary metric module interface is C with a
-secondary python interface. This means that pluggable modules can either be written and compiled
-into dynamically loadable C based language modules or written and deployed as python pluggable modules.
-
-The basic steps when writting a pluggable module either in C or in python, is as follows:
-
-=over 4
-
-=item 1. Create a module definition structure that contains callback data and metric information
-
-=item 2. Implement 3 callback functions that will serve as the links between the Gmond metric
-gathering agent and the metric module. These callback functions include module initialization,
-metric handler and module cleanup.
-
-=back
-
-There are simple metric module examples for both a C based and a python based module under the
-gmond/modules and gmond/python_modules source code sub-trees. Please see these module examples for
-more details.
-
-=head1 Frequently Asked Questions (FAQ)
-
-=over 4
-
-=item B<What metrics does ganglia collect on platform x?>
-
-To see a complete list of the metrics
-that a particular gmond supports, run the command:
-
- % gmond -m
-
-and gmond will output all the metrics that it is capable of collecting
-and sending.
-
-This table describes all the metrics that ganglia collects and
-shows what platforms the metric are supported on. (The following table
-is only partially complete).
-
-
- Metric Name Description Platforms
- -----------------------------------------------------------------------
- boottime System boot timestamp l,f
- bread_sec
- bwrite_sec
- bytes_in Number of bytes in per second l,f
- bytes_out Number of bytes out per second l,f
- cpu_aidle Percent of time since boot idle CPU l
- cpu_arm
- cpu_avm
- cpu_idle Percent CPU idle l,f
- cpu_intr
- cpu_nice Percent CPU nice l,f
- cpu_num Number of CPUs l,f
- cpu_rm
- cpu_speed Speed in MHz of CPU l,f
- cpu_ssys
- cpu_system Percent CPU system l,f
- cpu_user Percent CPU user l,f
- cpu_vm
- cpu_wait
- cpu_wio
- disk_free Total free disk space l,f
- disk_total Total available disk space l,f
- load_fifteen Fifteen minute load average l,f
- load_five Five minute load average l,f
- load_one One minute load average l,f
- location GPS coordinates for host e
- lread_sec
- lwrite_sec
- machine_type
- mem_buffers Amount of buffered memory l,f
- mem_cached Amount of cached memory l,f
- mem_free Amount of available memory l,f
- mem_shared Amount of shared memory l,f
- mem_total Amount of available memory l,f
- mtu Network maximum transmission unit l,f
- os_name Operating system name l,f
- os_release Operating system release (version) l,f
- part_max_used Maximum percent used for all partitions l,f
- phread_sec
- phwrite_sec
- pkts_in Packets in per second l,f
- pkts_out Packets out per second l,f
- proc_run Total number of running processes l,f
- proc_total Total number of processes l,f
- rcache
- swap_free Amount of available swap memory l,f
- swap_total Total amount of swap memory l,f
- sys_clock Current time on host l,f
- wcache
-
- Platform key:
- l = Linux, f = FreeBSD, a = AIX, c = Cygwin
- m = MacOS, i = IRIX, h = HPUX, t = Tru64
- e = Every Platform
-
-If you are interested in B<how> the metrics are collected, just
-take a look in directory C<./libmetrics> in the source distribution.
-There is a directory for each platform that is supported.
-
-=item B<What does the error "Process XML (x): XML_ParseBuffer() error at line x: not well-formed">
-
-This is an error that occurs when a ganglia components reads data from another ganglia component
-and finds that the XML is not well-formed. The most common time this is a problem is when the PHP
-web frontend tries to read the XML stream from gmetad.
-
-To troubleshoot this problem, capture an XML from the ganglia component in question (gmetad/gmond).
-This is easy to do if you have telnet installed. Simply login to the machine running the
-component and run.
-
- % telnet localhost 8651
-
-By default, gmetad exports its XML on port 8651 and gmond exports its XML on port 8649. Modify
-the port number above to suite your configuration.
-
-When you connect to the port you should get an XML stream. If not, look in the process table on
-the machine to ensure that the component is actually running.
-
-Once you are getting an XML stream, capture it to a file by running.
-
- % telnet localhost 8651 > XML.txt
- Connection closed by foreign host.
-
-If you open the file C<XML.txt>, you will see the captured XML stream. You will need to remove
-the first three lines of the C<XML.txt> which will read...
-
- Trying 127.0.0.1...
- Connected to localhost.
- Escape character is '^]'.
-
-Those lines are output from C<telnet> and not the ganglia component (I wish telnet would send
-those messages to C<stderr> but they are send to C<stdout>).