aboutsummaryrefslogtreecommitdiff
path: root/README.rst
diff options
context:
space:
mode:
Diffstat (limited to 'README.rst')
-rw-r--r--README.rst46
1 files changed, 46 insertions, 0 deletions
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..039db10
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,46 @@
+metrics: distributed measurement system
+=======================================
+
+Goals
+-----
+
+- essential, simple and reliable.
+- minimum maintenance.
+
+Architecture
+------------
+
+- probes: run probes that gather data from the current or any remote node.
+- analyzers: process collected hosts, triggering events (notifications, graphing, etc).
+- syncer: send collected and analyzed data to remote locations.
+
+Worflow
+-------
+
+- cronjob: synced dispatch.
+- command line: asynced dispatch.
+
+Plugable
+--------
+
+- plugin lookup in shared folders such as `~/.local/share` and `/usr/local/share`.
+- analyzer cronjobs detects collected data and dispatch available analyzers.
+
+Formats
+-------
+
+- outputs: yaml, json or any other format understood by each probe/analyzer pair.
+- version field: so analyzers knows by which schema they should process data.
+
+Filesystem
+----------
+
+- unique locations per host/probe/analyzer to ease syncing.
+- folders: {/etc,/var/lib}/metrics/$HOSTNAME/{probes,analyzers,syncers}/{localhost,$HOST}/$NAME/.
+- files: config.yaml (failing back to defaults) and $TIMESTAMP.{json,yaml,rrd,etc}.
+
+Usage
+-----
+
+::
+ metrics <action> <target>