From 390c5c6ca5555c9f5bfe2a76f2a46a290564e3bb Mon Sep 17 00:00:00 2001
From: Brian Warner <warner@lothar.com>
Date: Mon, 14 Jul 2008 13:25:35 -0700
Subject: [PATCH] munin/tahoe_stats: add server operations per second
 (allocate/get/writev/readv

---
 misc/munin/tahoe_stats | 68 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/misc/munin/tahoe_stats b/misc/munin/tahoe_stats
index 46f3c25f..f5c54936 100644
--- a/misc/munin/tahoe_stats
+++ b/misc/munin/tahoe_stats
@@ -103,6 +103,74 @@ PLUGINS = {
                                      ]),
         },
 
+    'tahoe_storage_operations_allocate':
+        { 'statid': 'storage_server.allocate',
+          'category': 'counters',
+          'configheader': '\n'.join(['graph_title Tahoe Storage Server Allocate_Bucket Operations',
+                                     'graph_vlabel operations per second',
+                                     'graph_category tahoe_storage_server',
+                                     'graph_info This graph shows how many allocate_buckets operations occured per second. Each immutable file upload causes one such operation per server.',
+                                     ]),
+          'graph_config': '\n'.join(['%(name)s.label %(name)s',
+                                     '%(name)s.type DERIVE',
+                                     '%(name)s.min 0',
+                                     '%(name)s.draw LINE1',
+                                     ]),
+          'graph_render': '\n'.join(['%(name)s.value %(value)s',
+                                     ]),
+        },
+
+    'tahoe_storage_operations_get':
+        { 'statid': 'storage_server.get',
+          'category': 'counters',
+          'configheader': '\n'.join(['graph_title Tahoe Storage Server get_bucket Operations',
+                                     'graph_vlabel operations per second',
+                                     'graph_category tahoe_storage_server',
+                                     'graph_info This graph shows how many get_bucket operations occured per second. Each immutable file download/check causes one such operation per server.',
+                                     ]),
+          'graph_config': '\n'.join(['%(name)s.label %(name)s',
+                                     '%(name)s.type DERIVE',
+                                     '%(name)s.min 0',
+                                     '%(name)s.draw LINE1',
+                                     ]),
+          'graph_render': '\n'.join(['%(name)s.value %(value)s',
+                                     ]),
+        },
+
+    'tahoe_storage_operations_writev':
+        { 'statid': 'storage_server.writev',
+          'category': 'counters',
+          'configheader': '\n'.join(['graph_title Tahoe Storage Server writev Operations',
+                                     'graph_vlabel operations per second',
+                                     'graph_category tahoe_storage_server',
+                                     'graph_info This graph shows how many writev operations occured per second. Each mutable file / dirnode write causes one such operation per server.',
+                                     ]),
+          'graph_config': '\n'.join(['%(name)s.label %(name)s',
+                                     '%(name)s.type DERIVE',
+                                     '%(name)s.min 0',
+                                     '%(name)s.draw LINE1',
+                                     ]),
+          'graph_render': '\n'.join(['%(name)s.value %(value)s',
+                                     ]),
+        },
+
+    'tahoe_storage_operations_readv':
+        { 'statid': 'storage_server.readv',
+          'category': 'counters',
+          'configheader': '\n'.join(['graph_title Tahoe Storage Server readv Operations',
+                                     'graph_vlabel operations per second',
+                                     'graph_category tahoe_storage_server',
+                                     'graph_info This graph shows how many readv operations occured per second. Each dirnode read causes one such operation per server.',
+                                     ]),
+          'graph_config': '\n'.join(['%(name)s.label %(name)s',
+                                     '%(name)s.type DERIVE',
+                                     '%(name)s.min 0',
+                                     '%(name)s.draw LINE1',
+                                     ]),
+          'graph_render': '\n'.join(['%(name)s.value %(value)s',
+                                     ]),
+        },
+
 
     # HELPER
     'tahoe_helper_incoming_files':
-- 
2.45.2