netapp plugin: cna_config_disk: Fix typo.
netapp plugin: cna_init: Add some comments.
netapp plugin: Improved handling host <Host /> blocks.
Use the new "cf_util_get_string" and "cf_util_get_port_number" functions
and free the host configuration if it fails.
The "Login" option has been split up into the "User" and "Password" options.
Use the new "cf_util_get_string" and "cf_util_get_port_number" functions
and free the host configuration if it fails.
The "Login" option has been split up into the "User" and "Password" options.
netapp plugin: Rename set_global_{perf_,}vol_flag.
Hopefully the new names are more descriptive.
Hopefully the new names are more descriptive.
src/configfile.[ch]: Implement "cf_util_get_port_number".
tokyotyrant plugin: Remove no longer needed includes.
src/configfile.[ch]: Implement "cf_util_get_string".
src/common.[ch]: Implement "service_name_to_port_number".
It returns the numeric representation of a service name. The implementation
has been taken from the tokyotyrant plugin.
It returns the numeric representation of a service name. The implementation
has been taken from the tokyotyrant plugin.
netapp plugin: Use the "cna_config_" prefix for configuration handling functions.
netapp plugin: Add a short description to most functions.
The order of some functions has been changed, too.
The order of some functions has been changed, too.
netapp plugin: Add folding markers to all remaining functions.
netapp plugin: Changed some type names.
The structure is roughly like this: Structs that only hold flags to tell
the functions what data to submit are prefixed with "cfg_". Structs that
hold old values for counters are prefixed with "data_".
The "disk_t" type now included flags, too, to indicate valid / invalid
values. The "query_submit_disk_data" function has been changed to honor
those flags.
Various "volume_data" stuff has been renamed to "volume_usage" to make
it more distinguishable from "volume_performance".
Various defines are now also prefixed with "CFG_" to show which flags
are used for configuration and which are used do mark counters valid.
The latter use the "HAVE_" prefix.
The structure is roughly like this: Structs that only hold flags to tell
the functions what data to submit are prefixed with "cfg_". Structs that
hold old values for counters are prefixed with "data_".
The "disk_t" type now included flags, too, to indicate valid / invalid
values. The "query_submit_disk_data" function has been changed to honor
those flags.
Various "volume_data" stuff has been renamed to "volume_usage" to make
it more distinguishable from "volume_performance".
Various defines are now also prefixed with "CFG_" to show which flags
are used for configuration and which are used do mark counters valid.
The latter use the "HAVE_" prefix.
AUTHORS: Add Sven Trenkel.
README: Add the “netapp” plugin.
netapp plugin: Split up “collect_perf_wafl_data” …
… into “query_wafl_data” and “submit_wafl_data”.
Again, flags are used to keep track of valid (old) counters.
… into “query_wafl_data” and “submit_wafl_data”.
Again, flags are used to keep track of valid (old) counters.
netapp plugin: Split “collect_perf_volume_data” …
… into “query_volume_perf_data” and “submit_volume_perf_data”. The
functions use the “per_volume_perf_data_t” struct to pass the counters
from one value to the other. The flags have been extended to include
HAVE_* flags. This way we can reliably determine whether an “old”
counter is valid or not.
… into “query_volume_perf_data” and “submit_volume_perf_data”. The
functions use the “per_volume_perf_data_t” struct to pass the counters
from one value to the other. The flags have been extended to include
HAVE_* flags. This way we can reliably determine whether an “old”
counter is valid or not.
netapp plugin: Use the "config_get_multiplier" to handle the multiplier configuration.
netapp plugin: process_volume_flag: Use the boolean set/unset option here, too.
netapp plugin: set_global_{perf_,}vol_flag: Make set/unset option a boolean.
netapp plugin: Make "config_init" static.
netapp plugin: build_perf_sys_config: Improve error handling.
Check return value of "malloc".
Check return value of "malloc".
netapp plugin: Simplify handling of boolean config options.
netapp plugin: perf_system_data_t: Remove CPU counters.
netapp plugin: collect_perf_system_data: Use the submit functions.
netapp plugin: collect_perf_disk_data: Only query "percentage-saved" if required.
Also, add support for "sis_saved_percent == 100". Probably not useful,
but better than simply skipping that case.
Also, add support for "sis_saved_percent == 100". Probably not useful,
but better than simply skipping that case.
Merge commit 'remotes/trenkel/st/netapp' into st/netapp
netapp plugin: collect_perf_disk_data: Add folding markers.
netapp plugin: collect_volume_data: Use "submit_double".
netapp plugin: Use UINT64_MAX as default value.
Meaning "invalid".
Meaning "invalid".
netapp plugin: Implement "submit_two_counters".
netapp plugin: Removed INFO
netapp plugin: Added “submit” functions and use them in some other functions.
collectd.conf(5): Add markup to the NetApp plugin documentation.
netapp plugin: Convert C++-style comments to C-style comments.
netapp plugin: Adapt to new dispatch interface.
Build system: Build the netapp plugin when libnetapp is available.
Build system: Implement check for the “netapp” library.
netapp plugin: New plugin to collect statistics from NetApp filers.
Moin,
ich wollts ja eigentlich letzte Woche schon geschickt haben, aber hier ists
nun doch noch: Das collectd netapp Plugin. Es ist noch einiges an doppeltem
Code vorhanden, er ist noch nicht schön und der Configurationscode ist noch
nicht in der angemessenen Ausführlichkeit getestet, aber zumindest hier bei
mir funktioniert jetzt alles und ist voll konfiguriertbar.
Kompilieren tut ich das Ganze so:
gcc -g -c -Wall -I include -I /home/ifst/collectd-4.4.2/src netapp.c
gcc -g -o netapp.so -lnetapp -lxml -lpthread -ladt -lssl -lm -shared netapp.o
Mit freundlichen Grüßen
Sven Trenkel
Moin,
ich wollts ja eigentlich letzte Woche schon geschickt haben, aber hier ists
nun doch noch: Das collectd netapp Plugin. Es ist noch einiges an doppeltem
Code vorhanden, er ist noch nicht schön und der Configurationscode ist noch
nicht in der angemessenen Ausführlichkeit getestet, aber zumindest hier bei
mir funktioniert jetzt alles und ist voll konfiguriertbar.
Kompilieren tut ich das Ganze so:
gcc -g -c -Wall -I include -I /home/ifst/collectd-4.4.2/src netapp.c
gcc -g -o netapp.so -lnetapp -lxml -lpthread -ladt -lssl -lm -shared netapp.o
Mit freundlichen Grüßen
Sven Trenkel
Merge branch 'collectd-4.8'
Merge branch 'collectd-4.7' into collectd-4.8
perl plugin: Declare the “environ” variable.
processes plugin: Case argument of “isdigit” to int.
On some platforms passing a char there causes problems :/
On some platforms passing a char there causes problems :/
processes plugin: Remove unnecessary call of realloc(3).
Hi Florian (et al)
> you're right, the (re-)allocation of the memory can probably be avoided
> if the function is turned into one with the following prototype:
> -- 8< --
> static int *ps_read_tasks (int pid,
> unsigned long *ret_num_proc,
> unsigned long *ret_num_lwp);
> -- >8 --
Mmm, why not something like: "static int ps_read_task(pid)"?
This returns the number of task for pid passed as argument.
(AFAIK the function only return the number ot threads), why
we need the ret_num_proc and the ret_num_lwp parameters?
My proposal is attached (code is always cleaner than explanations :P)
Regards,
Andres
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Hi Florian (et al)
> you're right, the (re-)allocation of the memory can probably be avoided
> if the function is turned into one with the following prototype:
> -- 8< --
> static int *ps_read_tasks (int pid,
> unsigned long *ret_num_proc,
> unsigned long *ret_num_lwp);
> -- >8 --
Mmm, why not something like: "static int ps_read_task(pid)"?
This returns the number of task for pid passed as argument.
(AFAIK the function only return the number ot threads), why
we need the ret_num_proc and the ret_num_lwp parameters?
My proposal is attached (code is always cleaner than explanations :P)
Regards,
Andres
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge branch 'collectd-4.8'
Merge branch 'collectd-4.7' into collectd-4.8
Build system: Check for “libiptc/libip6tc.h” and “linux/netfilter/x_tables.h”, too.
Apparently “linux/netfilter/x_tables.h” is not available with older
kernels which leads to build fails there:
-- 8< --
In file included from libiptc.c:47,
from libip4tc.c:136:
xtables.h:24:38: linux/netfilter/x_tables.h: No such file or directory
-- >8 --
Apparently “linux/netfilter/x_tables.h” is not available with older
kernels which leads to build fails there:
-- 8< --
In file included from libiptc.c:47,
from libip4tc.c:136:
xtables.h:24:38: linux/netfilter/x_tables.h: No such file or directory
-- >8 --
Merge branch 'collectd-4.8'
Merge branch 'collectd-4.7' into collectd-4.8
src/owniptc/Makefile.am: Don't search KERNEL_DIR for headers.
The iptc library is currenly only enabled, if the required headers where
found without “-I${KERNEL_DIR}”. Adding it to the CFLAGS when building
the shipped version of libiptc just breaks things, for example on
“collectd-master-amd64-linux-2.6”:
Linux hotdamn 2.6.9-42.ELsmp #1 SMP Tue Aug 15 10:35:26 BST 2006 x86_64 x86_64 x86_64 GNU/Linux
The iptc library is currenly only enabled, if the required headers where
found without “-I${KERNEL_DIR}”. Adding it to the CFLAGS when building
the shipped version of libiptc just breaks things, for example on
“collectd-master-amd64-linux-2.6”:
Linux hotdamn 2.6.9-42.ELsmp #1 SMP Tue Aug 15 10:35:26 BST 2006 x86_64 x86_64 x86_64 GNU/Linux
Merge branch 'collectd-4.8'
Merge branch 'collectd-4.7' into collectd-4.8
README: Document the “--with-libiptc=shipped” option.
Build system: Further improve libiptc handling.
Only check for “iptc_handle_t” and “ip6tc_handle_t” if using a
system-wide version of libiptc. If we use the shipped version, we *know*
it provides these types.
Only check for “iptc_handle_t” and “ip6tc_handle_t” if using a
system-wide version of libiptc. If we use the shipped version, we *know*
it provides these types.
Merge branch 'collectd-4.8'
Merge branch 'collectd-4.7' into collectd-4.8
Build system: Improve detection of the iptc library.
When checking for the iptc headers and data types, the configure script
added the kernel directory to the CFLAGS. Later, when actually building
the iptables plugin, the CFLAGS were left untouched.
At least on Debian, the “real” kernel headers are not required – the
libc versions in /usr/include/linux are sufficient. The usage of
KERNEL_DIR has therefore been removed from the iptc checks.
In addition, an directory specified by “--with-libiptc=/path” is no
longer added to the global CFLAGS but rather to the iptables specific
CPPFLAGS.
Hopefully this resolved build problems on various platforms.
When checking for the iptc headers and data types, the configure script
added the kernel directory to the CFLAGS. Later, when actually building
the iptables plugin, the CFLAGS were left untouched.
At least on Debian, the “real” kernel headers are not required – the
libc versions in /usr/include/linux are sufficient. The usage of
KERNEL_DIR has therefore been removed from the iptc checks.
In addition, an directory specified by “--with-libiptc=/path” is no
longer added to the global CFLAGS but rather to the iptables specific
CPPFLAGS.
Hopefully this resolved build problems on various platforms.
contrib/collection3: skip host dirs without read access.
This patch prevents get_files_from_directory() from
failing when DataDir contains directories which we
don't have access to.
An example would be "lost+found" directories, on
ext2/ext3 filesystems, which belong to root and have
0700 filemode.
Signed-off-by: Marc Fournier <marc.fournier@camptocamp.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
This patch prevents get_files_from_directory() from
failing when DataDir contains directories which we
don't have access to.
An example would be "lost+found" directories, on
ext2/ext3 filesystems, which belong to root and have
0700 filemode.
Signed-off-by: Marc Fournier <marc.fournier@camptocamp.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
contrib/collection3: “Invokations” → “Invocations”.
D'oh!
D'oh!
contrib/collection3: Add a vertical label to the “java_memory” type.
contrib/collection3: Added the “invokations” type.
contrib/collection3: Use “{plugin_inst}/{type_inst}” for “{instance}”
… if both are present. Otherwise, use just the one that is available.
… if both are present. Otherwise, use just the one that is available.
contrib/collection3: Add support for the “threads” and “total_requests” types.
Merge branch 'collectd-4.8'
Conflicts:
src/exec.c
Conflicts:
src/exec.c
Merge branch 'collectd-4.7' into collectd-4.8
collectd-exec(5): Document the environment variables.
exec plugin: Clear the signal block mask before calling exec(2).
exec plugin: Set the “COLLECTD_INTERVAL” and “COLLECTD_HOSTNAME” environment variables.
exec plugin: Avoid a warning when freeing meta data.
contrib/collection3: Suppress warnings about non-existent classes.
ChangeLog: Remove an excess newline.
curl plugin: Add the “MeasureResponseTime” option.
It measures response times. Yes, really! ;)
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
It measures response times. Yes, really! ;)
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
src/collectd.conf.in: Fix entries of renamed plugins.
configure.in: Make it possible to force the shipped version of libiptc.
You can force the shipped version of libiptc using:
--with-libiptc=shipped
Apparently enough systems include broken versions of that library :/
You can force the shipped version of libiptc using:
--with-libiptc=shipped
Apparently enough systems include broken versions of that library :/
configure.in: Quote $CFLAGS when assigning to another variable.
ChangeLog: Document the “GETTHRESHOLD” command.
src/utils_threshold.c: Update copyright information.
dns, network, rrdtool plugins: Updated copyright information.
swap plugin: Add copyright information for Stefan Völkel.
bindings/java: Compile and install the “GenericJMX” plugin.
collectd-java(5): Document the “GenericJMX” plugin.
scale target: Fix C90 warning (which is upgraded to an error by default).
Should fix this warning:
-- 8< --
target_scale.c: In function 'ts_invoke_counter':
target_scale.c:90: warning: this decimal constant is unsigned only in ISO C90
target_scale.c:91: warning: this decimal constant is unsigned only in ISO C90
target_scale.c:93: warning: integer constant is too large for 'unsigned long' type
-- >8 --
Should fix this warning:
-- 8< --
target_scale.c: In function 'ts_invoke_counter':
target_scale.c:90: warning: this decimal constant is unsigned only in ISO C90
target_scale.c:91: warning: this decimal constant is unsigned only in ISO C90
target_scale.c:93: warning: integer constant is too large for 'unsigned long' type
-- >8 --
Merge branch 'collectd-4.7' into collectd-4.8
Conflicts:
ChangeLog
contrib/collection3/etc/collection.conf
src/df.c
version-gen.sh
Conflicts:
ChangeLog
contrib/collection3/etc/collection.conf
src/df.c
version-gen.sh
Bumped version to 4.7.3; Updated ChangeLog.
Merge branch 'collectd-4.6' into collectd-4.7
Conflicts:
ChangeLog
version-gen.sh
Conflicts:
ChangeLog
version-gen.sh
Bump version to 4.6.5.
collection3: Added some more metrics.
Fixed the year of the first three entries.
They say it was 2004, but in fact they were released in 2005.
They say it was 2004, but in fact they were released in 2005.
ChangeLog: Add entries for release 4.6.5.
powerdns plugin: Use the “ipt_packets” type rather than “io_packets”.
“io_packets”, as the name suggests, requires incoming *and* outgoing
packets. The infrastructure of the powerdns plugin uses only value lists
with one data source though.
Thanks to Luke for noticing!
“io_packets”, as the name suggests, requires incoming *and* outgoing
packets. The infrastructure of the powerdns plugin uses only value lists
with one data source though.
Thanks to Luke for noticing!
ChangeLog: Fix a typo.
scale target: Fix copyright information.
contrib/collectd_unix_sock.rb: Ruby class which abstracts the plain text protocol.
Used to talk to the unixsock plugin.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Used to talk to the unixsock plugin.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
src/utils_cache.c: Fix a very rare deadlock situation.
Only happened in an out-of-memory situation. Still, not nice ;)
Only happened in an out-of-memory situation. Still, not nice ;)
scale target: Add a target to scale arbitrary values.
Merged branch 'sh/collectd-4.6' into sh/collectd-4.7.
Conflicts:
src/iptables.c
To resolve the conflict, the changes to the iptables plugin have been updated
to support ip6tc as well.
Conflicts:
src/iptables.c
To resolve the conflict, the changes to the iptables plugin have been updated
to support ip6tc as well.
iptables plugin: Support the new libiptc API.
When libiptc has been officially made available as a shared library, the API
and ABI have been changed slightly. By checking for the existance of a type
that has been removed in that course, configure now checks which version is
available. This is quite error prone (the type might be re-introduced any
time), so this should be improved some time - currently, I do not have an idea
how to do so, though :-/
When libiptc has been officially made available as a shared library, the API
and ABI have been changed slightly. By checking for the existance of a type
that has been removed in that course, configure now checks which version is
available. This is quite error prone (the type might be re-introduced any
time), so this should be improved some time - currently, I do not have an idea
how to do so, though :-/
configure: Replaced src/libiptc/ with src/owniptc/.
Merge branch 'collectd-4.6' into collectd-4.7
Conflicts:
configure.in
src/iptables.c
Conflicts:
configure.in
src/iptables.c
src/owniptc: Moved the “src/libiptc” directory to “src/owniptc” to avoid build issues.
If there is a system-wide version of this library available, the “-I.”
argument (added automatically by automake :() will lead to the shipped
header files being used. Later, the binary is linked with the
system-wide library, which leads to severe problems when API/ABI
incompatibilities have been introduced in other versions.
If there is a system-wide version of this library available, the “-I.”
argument (added automatically by automake :() will lead to the shipped
header files being used. Later, the binary is linked with the
system-wide library, which leads to severe problems when API/ABI
incompatibilities have been introduced in other versions.
contrib/cussh.pl: Add support for the “GETTHRESHOLD” command.