aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--plugin/mysql.php103
1 files changed, 103 insertions, 0 deletions
diff --git a/plugin/mysql.php b/plugin/mysql.php
new file mode 100644
index 0000000..607e223
--- /dev/null
+++ b/plugin/mysql.php
@@ -0,0 +1,103 @@
1<?php
2
3# Collectd MySQL plugin
4
5require_once 'conf/common.inc.php';
6require_once 'type/GenericStacked.class.php';
7require_once 'inc/collectd.inc.php';
8
9$obj = new Type_GenericStacked($CONFIG);
10$obj->width = $width;
11$obj->heigth = $heigth;
12
13switch($obj->args['type'])
14{
15 case 'mysql_commands':
16 $obj->generate_colors();
17 $obj->rrd_title = sprintf('MySQL commands (%s)', $obj->args['pinstance']);
18 $obj->rrd_vertical = 'Issues/s';
19 $obj->rrd_format = '%5.1lf%s';
20 break;
21 case 'mysql_handler':
22 $obj->colors = array(
23 'commit' => 'ff0000',
24 'delete' => 'ff00e7',
25 'read_first' => 'cc00ff',
26 'read_key' => '3200ff',
27 'read_next' => '0065ff',
28 'read_prev' => '00fff3',
29 'read_rnd' => '00ff65',
30 'read_rnd_next' => '33ff00',
31 'update' => 'cbff00',
32 'write' => 'ff9800',
33 'rollback' => '000000',
34 );
35 $obj->rrd_title = sprintf('MySQL handler (%s)', $obj->args['pinstance']);
36 $obj->rrd_vertical = 'Invocations';
37 $obj->rrd_format = '%5.1lf%s';
38 break;
39 case 'mysql_locks':
40 $obj->colors = array(
41 'immediate' => 'ff0000',
42 'waited' => '00ff00',
43 );
44 $obj->rrd_title = sprintf('MySQL locks (%s)', $obj->args['pinstance']);
45 $obj->rrd_vertical = 'locks';
46 $obj->rrd_format = '%5.1lf%s';
47 break;
48 case 'mysql_octets':
49 $obj->data_sources = array('rx', 'tx');
50 $obj->ds_names = array(
51 'rx' => 'Receive',
52 'tx' => 'Transmit',
53 );
54 $obj->colors = array(
55 'rx' => '0000ff',
56 'tx' => '00b000',
57 );
58 $obj->rrd_title = sprintf('MySQL traffic (%s)', $obj->args['pinstance']);
59 $obj->rrd_vertical = 'Bits per second';
60 $obj->rrd_format = '%5.1lf%s';
61 break;
62 case 'mysql_qcache':
63 $obj->data_sources = array('not_cached', 'inserts', 'hits', 'lowmem_prunes', 'queries_in_cache');
64 $obj->ds_names = array(
65 'not_cached' => 'Not Cached',
66 'inserts' => 'Inserts',
67 'hits' => 'Hits',
68 'lowmem_prunes' => 'Lowmem Prunes',
69 'queries_in_cache' => 'Queries in Cache',
70 );
71 $obj->colors = array(
72 'not_cached' => 'f0a000',
73 'inserts' => '0000ff',
74 'hits' => '00e000',
75 'lowmem_prunes' => 'ff0000',
76 'queries_in_cache' => 'cccccc',
77 );
78 $obj->rrd_title = sprintf('MySQL query cache (%s)', $obj->args['pinstance']);
79 $obj->rrd_vertical = 'Queries/s';
80 $obj->rrd_format = '%5.1lf%s';
81 break;
82 case 'mysql_threads':
83 $obj->data_sources = array('cached', 'connected', 'running', 'created');
84 $obj->ds_names = array(
85 'cached' => 'Cached',
86 'connected' => 'Connected',
87 'running' => 'Running',
88 'created' => 'Created',
89 );
90 $obj->colors = array(
91 'cached' => '00e000',
92 'connected' => '0000ff',
93 'running' => 'ff0000',
94 'created' => 'cccccc',
95 );
96 $obj->rrd_title = sprintf('MySQL threads (%s)', $obj->args['pinstance']);
97 $obj->rrd_vertical = 'Threads';
98 $obj->rrd_format = '%5.1lf%s';
99 break;
100}
101
102collectd_flush($obj->identifiers);
103$obj->rrd_graph();