Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/src/df.c b/src/df.c
- index 371a7fc..c3d08f8 100644
- --- a/src/df.c
- +++ b/src/df.c
- @@ -139,21 +139,26 @@ static int df_config (const char *key, const char *value)
- __attribute__ ((nonnull(2)))
- static void df_submit_one (char *plugin_instance,
- const char *type, const char *type_instance,
- - gauge_t value)
- + gauge_t value, gauge_t percent)
- {
- - value_t values[1];
- + value_t values[2];
- value_list_t vl = VALUE_LIST_INIT;
- values[0].gauge = value;
- + values[1].gauge = percent;
- vl.values = values;
- - vl.values_len = 1;
- + vl.values_len = STATIC_ARRAY_SIZE (values);
- +
- sstrncpy (vl.host, hostname_g, sizeof (vl.host));
- sstrncpy (vl.plugin, "df", sizeof (vl.plugin));
- +
- if (plugin_instance != NULL)
- sstrncpy (vl.plugin_instance, plugin_instance,
- sizeof (vl.plugin_instance));
- +
- sstrncpy (vl.type, type, sizeof (vl.type));
- +
- if (type_instance != NULL)
- sstrncpy (vl.type_instance, type_instance,
- sizeof (vl.type_instance));
- @@ -271,11 +276,14 @@ static int df_read (void)
- blk_used = (uint64_t) (statbuf.f_blocks - statbuf.f_bfree);
- df_submit_one (disk_name, "df_complex", "free",
- - (gauge_t) (blk_free * blocksize));
- + (gauge_t) (blk_free * blocksize), (gauge_t) ((double) blk_free / (double) statbuf.f_blocks * 100));
- df_submit_one (disk_name, "df_complex", "reserved",
- - (gauge_t) (blk_reserved * blocksize));
- + (gauge_t) (blk_reserved * blocksize), (gauge_t) 0);
- df_submit_one (disk_name, "df_complex", "used",
- - (gauge_t) (blk_used * blocksize));
- + (gauge_t) (blk_used * blocksize), (gauge_t) 0);
- +
- +
- +
- /* inode handling */
- if (report_inodes)
- @@ -295,11 +303,11 @@ static int df_read (void)
- inode_used = (uint64_t) (statbuf.f_files - statbuf.f_ffree);
- df_submit_one (disk_name, "df_inodes", "free",
- - (gauge_t) inode_free);
- + (gauge_t) inode_free, (gauge_t) 0);
- df_submit_one (disk_name, "df_inodes", "reserved",
- - (gauge_t) inode_reserved);
- + (gauge_t) inode_reserved, (gauge_t) 0);
- df_submit_one (disk_name, "df_inodes", "used",
- - (gauge_t) inode_used);
- + (gauge_t) inode_used, (gauge_t) 0);
- }
- }
- diff --git a/src/types.db b/src/types.db
- index e6345ab..3e088d3 100644
- --- a/src/types.db
- +++ b/src/types.db
- @@ -26,8 +26,8 @@ current_sessions value:GAUGE:0:U
- current value:GAUGE:U:U
- delay value:GAUGE:-1000000:1000000
- derive value:DERIVE:0:U
- -df_complex value:GAUGE:0:U
- -df_inodes value:GAUGE:0:U
- +df_complex value:GAUGE:0:U, percent:GAUGE:0:100
- +df_inodes value:GAUGE:0:U, percent:GAUGE:0:100
- df used:GAUGE:0:1125899906842623, free:GAUGE:0:1125899906842623
- disk_latency read:GAUGE:0:U, write:GAUGE:0:U
- disk_merged read:DERIVE:0:U, write:DERIVE:0:U
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement