X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fdf.c;h=38079d8772e232f44ac690cc636222a67e45195e;hb=bc7992ed0693313a2b1fe282a5bf23f1cc9f8e42;hp=dd5e13824660c34da87231606029531fed4e99eb;hpb=b8be503b2b50366a9c498ba7e4ab66a228c6dfbf;p=collectd.git diff --git a/src/df.c b/src/df.c index dd5e1382..38079d87 100644 --- a/src/df.c +++ b/src/df.c @@ -26,12 +26,6 @@ #include "utils_mount.h" #include "utils_ignorelist.h" -#if HAVE_STATFS || HAVE_STATVFS -# define DF_HAVE_READ 1 -#else -# define DF_HAVE_READ 0 -#endif - #if HAVE_STATVFS # if HAVE_SYS_STATVFS_H # include @@ -44,21 +38,10 @@ # endif # define STATANYFS statfs # define BLOCKSIZE(s) (s).f_bsize +#else +# error "No applicable input method." #endif -/* 2^50 - 1 == 1125899906842623 = 1 Petabyte */ -static data_source_t dsrc[2] = -{ - {"free", DS_TYPE_GAUGE, 0, 1125899906842623.0}, - {"used", DS_TYPE_GAUGE, 0, 1125899906842623.0} -}; - -static data_set_t ds = -{ - "df", 2, dsrc -}; - -#if DF_HAVE_READ static const char *config_keys[] = { "Device", @@ -141,13 +124,13 @@ static void df_submit (char *df_name, vl.values = values; vl.values_len = 2; - vl.time = time (NULL); - strcpy (vl.host, hostname); - strcpy (vl.plugin, "df"); - strcpy (vl.plugin_instance, ""); - strncpy (vl.type_instance, df_name, sizeof (vl.type_instance)); + sstrncpy (vl.host, hostname_g, sizeof (vl.host)); + sstrncpy (vl.plugin, "df", sizeof (vl.plugin)); + sstrncpy (vl.plugin_instance, "", sizeof (vl.plugin_instance)); + sstrncpy (vl.type, "df", sizeof (vl.host)); + sstrncpy (vl.type_instance, df_name, sizeof (vl.type_instance)); - plugin_dispatch_values ("df", &vl); + plugin_dispatch_values (&vl); } /* void df_submit */ static int df_read (void) @@ -174,7 +157,10 @@ static int df_read (void) { if (STATANYFS (mnt_ptr->dir, &statbuf) < 0) { - syslog (LOG_ERR, "statv?fs failed: %s", strerror (errno)); + char errbuf[1024]; + ERROR ("statv?fs failed: %s", + sstrerror (errno, errbuf, + sizeof (errbuf))); continue; } @@ -187,13 +173,13 @@ static int df_read (void) if (strcmp (mnt_ptr->dir, "/") == 0) { - strncpy (mnt_name, "root", sizeof (mnt_name)); + sstrncpy (mnt_name, "root", sizeof (mnt_name)); } else { int i, len; - strncpy (mnt_name, mnt_ptr->dir + 1, sizeof (mnt_name)); + sstrncpy (mnt_name, mnt_ptr->dir + 1, sizeof (mnt_name)); len = strlen (mnt_name); for (i = 0; i < len; i++) @@ -218,15 +204,11 @@ static int df_read (void) return (0); } /* int df_read */ -#endif /* DF_HAVE_READ */ void module_register (void) { - plugin_register_data_set (&ds); - -#if DF_HAVE_READ - plugin_register_config ("df", df_config, config_keys, config_keys_num); + plugin_register_config ("df", df_config, + config_keys, config_keys_num); plugin_register_init ("df", df_init); plugin_register_read ("df", df_read); -#endif } /* void module_register */