Merge pull request #699 from marekbecka/innodb_stats
authorPierre-Yves Ritschard <pyr@spootnik.org>
Thu, 20 Nov 2014 15:38:57 +0000 (16:38 +0100)
committerPierre-Yves Ritschard <pyr@spootnik.org>
Thu, 20 Nov 2014 15:38:57 +0000 (16:38 +0100)
add more innodb metrics

1  2 
src/mysql.c
src/types.db

diff --combined src/mysql.c
@@@ -688,7 -688,7 +688,7 @@@ static int mysql_read (user_data_t *ud
                        else if (strcmp (key, "Innodb_buffer_pool_pages_dirty") == 0)
                                gauge_submit ("mysql_bpool_pages", "dirty", val, db);
                        else if (strcmp (key, "Innodb_buffer_pool_pages_flushed") == 0)
 -                              counter_submit ("mysql_bpool_counters", "flushed", val, db);
 +                              counter_submit ("mysql_bpool_pages", "flushed", val, db);
                        else if (strcmp (key, "Innodb_buffer_pool_pages_free") == 0)
                                gauge_submit ("mysql_bpool_pages", "free", val, db);
                        else if (strcmp (key, "Innodb_buffer_pool_pages_misc") == 0)
                                counter_submit ("mysql_bpool_counters", "reads", val, db);
                        else if (strcmp (key, "Innodb_buffer_pool_write_requests") == 0)
                                counter_submit ("mysql_bpool_counters", "write_requests", val, db);
+                       else if (strcmp (key, "Innodb_buffer_pool_bytes_data") == 0)
+                               gauge_submit ("mysql_bpool_bytes", "data", val, db);
+                       else if (strcmp (key, "Innodb_buffer_pool_bytes_dirty") == 0)
+                               gauge_submit ("mysql_bpool_bytes", "dirty", val, db);
  
                        /* data */
                        if (strcmp (key, "Innodb_data_fsyncs") == 0)
                        else if (strcmp (key, "Innodb_data_reads") == 0)
                                counter_submit ("mysql_innodb_data", "reads", val, db);
                        else if (strcmp (key, "Innodb_data_writes") == 0)
 -                              counter_submit ("mysql_bpool_counters", "writes", val, db);
 +                              counter_submit ("mysql_innodb_data", "writes", val, db);
                        else if (strcmp (key, "Innodb_data_written") == 0)
                                counter_submit ("mysql_innodb_data", "written", val, db);
  
                        else if (strcmp (key, "Innodb_dblwr_pages_written") == 0)
                                counter_submit ("mysql_innodb_dblwr", "written", val, db);
  
+                       /* log */
+                       else if (strcmp (key, "Innodb_log_waits") == 0)
+                               counter_submit ("mysql_innodb_log", "waits", val, db);
+                       else if (strcmp (key, "Innodb_log_write_requests") == 0)
+                               counter_submit ("mysql_innodb_log", "write_requests", val, db);
+                       else if (strcmp (key, "Innodb_log_writes") == 0)
+                               counter_submit ("mysql_innodb_log", "writes", val, db);
+                       else if (strcmp (key, "Innodb_os_log_fsyncs") == 0)
+                               counter_submit ("mysql_innodb_log", "fsyncs", val, db);
+                       else if (strcmp (key, "Innodb_os_log_written") == 0)
+                               counter_submit ("mysql_innodb_log", "written", val, db);
+                       /* pages */
+                       else if (strcmp (key, "Innodb_pages_created") == 0)
+                               counter_submit ("mysql_innodb_pages", "created", val, db);
+                       else if (strcmp (key, "Innodb_pages_read") == 0)
+                               counter_submit ("mysql_innodb_pages", "read", val, db);
+                       else if (strcmp (key, "Innodb_pages_written") == 0)
+                               counter_submit ("mysql_innodb_pages", "written", val, db);
+                       /* row lock */
+                       else if (strcmp (key, "Innodb_row_lock_time") == 0)
+                               counter_submit ("mysql_innodb_row_lock", "time", val, db);
+                       else if (strcmp (key, "Innodb_row_lock_waits") == 0)
+                               counter_submit ("mysql_innodb_row_lock", "waits", val, db);
                        /* rows */
                        else if (strcmp (key, "Innodb_rows_deleted") == 0)
                                counter_submit ("mysql_innodb_rows", "deleted", val, db);
diff --combined src/types.db
@@@ -8,14 -8,12 +8,14 @@@ ath_nodes             value:GAUGE:0:6553
  ath_stat              value:DERIVE:0:U
  backends              value:GAUGE:0:65535
  bitrate                       value:GAUGE:0:4294967295
 +blocked_clients value:GAUGE:0:U
  bytes                 value:GAUGE:0:U
  cache_eviction                value:DERIVE:0:U
  cache_operation               value:DERIVE:0:U
  cache_ratio           value:GAUGE:0:100
  cache_result          value:DERIVE:0:U
  cache_size            value:GAUGE:0:U
 +changes_since_last_save   value:GAUGE:0:U
  charge                        value:GAUGE:0:U
  compression_ratio     value:GAUGE:0:2
  compression           uncompressed:DERIVE:0:U, compressed:DERIVE:0:U
@@@ -39,7 -37,6 +39,7 @@@ disk_octets           read:DERIVE:0:U, write:DER
  disk_ops_complex      value:DERIVE:0:U
  disk_ops              read:DERIVE:0:U, write:DERIVE:0:U
  disk_time             read:DERIVE:0:U, write:DERIVE:0:U
 +disk_io_time          io_time:DERIVE:0:U, weighted_io_time:DERIVE:0:U
  dns_answer            value:DERIVE:0:U
  dns_notify            value:DERIVE:0:U
  dns_octets            queries:DERIVE:0:U, responses:DERIVE:0:U
@@@ -62,7 -59,6 +62,7 @@@ email_check           value:GAUGE:0:
  email_count           value:GAUGE:0:U
  email_size            value:GAUGE:0:U
  entropy                       value:GAUGE:0:4294967295
 +expired_keys    value:GAUGE:0:U
  fanspeed              value:GAUGE:0:U
  file_size             value:GAUGE:0:U
  files                 value:GAUGE:0:U
@@@ -103,7 -99,6 +103,7 @@@ memcached_items             value:GAUGE:0:
  memcached_octets      rx:DERIVE:0:U, tx:DERIVE:0:U
  memcached_ops         value:DERIVE:0:U
  memory                        value:GAUGE:0:281474976710656
 +memory_lua            value:GAUGE:0:281474976710656
  multimeter            value:GAUGE:U:U
  mutex_operations      value:DERIVE:0:U
  mysql_commands                value:DERIVE:0:U
@@@ -112,9 -107,13 +112,13 @@@ mysql_locks              value:DERIVE:0:
  mysql_log_position    value:DERIVE:0:U
  mysql_octets          rx:DERIVE:0:U, tx:DERIVE:0:U
  mysql_bpool_pages     value:GAUGE:0:U
+ mysql_bpool_bytes     value:GAUGE:0:U
  mysql_bpool_counters  value:DERIVE:0:U
  mysql_innodb_data     value:DERIVE:0:U
  mysql_innodb_dblwr    value:DERIVE:0:U
+ mysql_innodb_log      value:DERIVE:0:U
+ mysql_innodb_pages    value:DERIVE:0:U
+ mysql_innodb_row_lock value:DERIVE:0:U
  mysql_innodb_rows     value:DERIVE:0:U
  mysql_select          value:DERIVE:0:U
  mysql_sort            value:DERIVE:0:U
@@@ -127,7 -126,6 +131,7 @@@ node_stat          value:DERIVE:0:
  node_tx_rate          value:GAUGE:0:127
  objects                       value:GAUGE:0:U
  operations            value:DERIVE:0:U
 +pending_operations    value:GAUGE:0:U
  percent                       value:GAUGE:0:100.1
  percent_bytes         value:GAUGE:0:100.1
  percent_inodes                value:GAUGE:0:100.1
@@@ -161,7 -159,6 +165,7 @@@ ps_rss                     value:GAUGE:0:9223372036854775
  ps_stacksize          value:GAUGE:0:9223372036854775807
  ps_state              value:GAUGE:0:65535
  ps_vm                 value:GAUGE:0:9223372036854775807
 +pubsub        value:GAUGE:0:U
  queue_length          value:GAUGE:0:U
  records                       value:GAUGE:0:U
  requests              value:GAUGE:0:U
@@@ -174,11 -171,6 +178,11 @@@ serial_octets            rx:DERIVE:0:U, tx:DERIVE
  signal_noise          value:GAUGE:U:0
  signal_power          value:GAUGE:U:0
  signal_quality                value:GAUGE:0:U
 +smart_poweron         value:GAUGE:0:U
 +smart_powercycles     value:GAUGE:0:U
 +smart_badsectors      value:GAUGE:0:U
 +smart_temperature     value:GAUGE:-300:300
 +smart_attribute         current:GAUGE:0:255, worst:GAUGE:0:255, threshold:GAUGE:0:255, pretty:GAUGE:0:U
  snr                   value:GAUGE:0:U
  spam_check            value:GAUGE:0:U
  spam_score            value:GAUGE:U:U