The Tahoe-LAFS decentralized secure filesystem.
Go to file
robk-tahoe 7b9f3207d0 stats: add a simple stats gathering system
We have a desire to collect runtime statistics from multiple nodes primarily
for server monitoring purposes.   This implements a simple implementation of
such a system, as a skeleton to build more sophistication upon.

Each client now looks for a 'stats_gatherer.furl' config file.  If it has
been configured to use a stats gatherer, then it instantiates internally
a StatsProvider.  This is a central place for code which wishes to offer
stats up for monitoring to report them to, either by calling 
stats_provider.count('stat.name', value) to increment a counter, or by
registering a class as a stats producer with sp.register_producer(obj).

The StatsProvider connects to the StatsGatherer server and provides its
provider upon startup.  The StatsGatherer is then responsible for polling
the attached providers periodically to retrieve the data provided.
The provider queries each registered producer when the gatherer queries
the provider.  Both the internal 'counters' and the queried 'stats' are
then reported to the gatherer.

This provides a simple gatherer app, (c.f. make stats-gatherer-run)
which prints its furl and listens for incoming connections.  Once a
minute, the gatherer polls all connected providers, and writes the
retrieved data into a pickle file.

Also included is a munin plugin which knows how to read the gatherer's
stats.pickle and output data munin can interpret.  this plugin, 
tahoe-stats.py can be symlinked as multiple different names within
munin's 'plugins' directory, and inspects argv to determine which
data to display, doing a lookup in a table within that file.
It looks in the environment for 'statsfile' to determine the path to
the gatherer's stats.pickle.  An example plugins-conf.d file is
provided.
2008-01-30 20:11:07 -07:00
bin setup: fix bin/tahoe to include .egg's from the source tree root dir as well 2008-01-01 01:51:28 -07:00
contrib tahoe_fuse: cmdline args & system test: Allow nonstandard client basedirs to be specified and update the system tests to use this feature... 2008-01-20 20:56:27 -07:00
docs install-details.html: debian 3.1 is better known as 'sarge' 2008-01-30 17:03:42 -07:00
mac better mac .app icon 2008-01-24 20:23:47 -07:00
misc stats: add a simple stats gathering system 2008-01-30 20:11:07 -07:00
src/allmydata stats: add a simple stats gathering system 2008-01-30 20:11:07 -07:00
twisted/plugins change #!/usr/bin/python to #!/usr/bin/env python 2007-03-29 14:01:28 -07:00
windows cleanup mac and windows build code 2008-01-23 21:06:41 -07:00
_auto_deps.py _auto_deps.py: update comment 2008-01-29 13:53:21 -07:00
.darcs-boringfile setup: src/allmydata/_auto_deps.py is boring 2008-01-22 17:37:22 -07:00
COPYING.GPL new licences, move details from README to doc/install-details.html 2008-01-04 12:27:42 -07:00
COPYING.TGPPL.html more introductory doc cleanup 2008-01-04 18:09:19 -07:00
CREDITS CREDITS for nejucomo 2008-01-08 10:54:17 -07:00
ez_setup.py setup: use a customized version of ez_setup.py which bootstraps from Python-version-agnostic setuptools bootstrap eggs 2008-01-22 11:00:56 -07:00
Makefile stats: add a simple stats gathering system 2008-01-30 20:11:07 -07:00
README docs: some documentation updates for 0.7.0 2008-01-08 10:32:41 -07:00
README.win32 short note about building cryptopp under cywin/native on win 2008-01-07 17:50:20 -07:00
relnotes.txt docs: relnotes for 0.7.0 2008-01-08 11:01:44 -07:00
roadmap.txt updated roadmap.txt to show things that are finished and add WebDAV 2008-01-03 17:57:06 -07:00
setup.cfg setup: remove the --always-copy option, because it causes setuptools to ignore system and development apps 2008-01-22 14:05:04 -07:00
setup.py setup: require specific versions of dependencies, both at run-time (if pkg_resources is available) and at build-time, and make there be only once place where we specify those versions 2008-01-22 17:24:33 -07:00
Tahoe.home rename bin/allmydata-tahoe to bin/tahoe. Closes #155. 2007-10-11 03:38:24 -07:00

Welcome to the Tahoe project, a secure, decentralized, fault-tolerant
filesystem.  All of the source code is available under a Free Software, Open
Source licence.

Please see docs/about.html for an introduction, docs/install.html for install
instructions, docs/running.html for usage instructions.