Fix missed change from int to double for interval
write_riemann plugin: Receive acknowledge message when using TCP.
Not receiving an acknowledge message when communicating with riemann over TCP
will cause the riemann instance to eventually hang for extended periods of time
because of resource exhaustion.
Took the time to reaorganize the riemann_send function to simplify locking.
Not receiving an acknowledge message when communicating with riemann over TCP
will cause the riemann instance to eventually hang for extended periods of time
because of resource exhaustion.
Took the time to reaorganize the riemann_send function to simplify locking.
Please free strings *after* printing them ;-)
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge remote-tracking branch 'origin/collectd-4.10' into collectd-5.3
Merge remote-tracking branch 'origin/pr/490' into collectd-5.3
configure: Fixed linker options when checking for amqp_tcp_socket_new.
This fixes the check when using GCC's --as-needed which fails when options are
not specified in the right order. Libraries (-l options) have to be specified
after any source files. autoconf does the right thing when using $LIBS for
that case rather than $LDFLAGS.
This fixes the check when using GCC's --as-needed which fails when options are
not specified in the right order. Libraries (-l options) have to be specified
after any source files. autoconf does the right thing when using $LIBS for
that case rather than $LDFLAGS.
amqp plugin: Don't use C++ style comments.
Merge pull request #2 from mfournier/amqp-symbol_lookup
amqp: fix symbol lookup error with librabbitmq >= 0.4.0
amqp: fix symbol lookup error with librabbitmq >= 0.4.0
amqp: fix symbol lookup error with librabbitmq >= 0.4.0
amqp_socket_close() which we were using isn't exported anymore.
See https://github.com/alanxz/rabbitmq-c/commit/bdda7ab
amqp_destroy_connection() implicitly closes the socket, so we don't need
to bother about this if using librabbitmq >= 0.4.0
credits to @tokkee for figuring that out !
amqp_socket_close() which we were using isn't exported anymore.
See https://github.com/alanxz/rabbitmq-c/commit/bdda7ab
amqp_destroy_connection() implicitly closes the socket, so we don't need
to bother about this if using librabbitmq >= 0.4.0
credits to @tokkee for figuring that out !
network: comment libgcrypt initalization process
apache plugin: Call curl_global_init() from the init function.
This is a shot in the dark in trying to address #513. By calling this
from an init() callback, I hope to be initializing the curl and gcrypt
libraries before collectd becomes multi-threaded, avoiding the problems
described in the issue.
This is a shot in the dark in trying to address #513. By calling this
from an init() callback, I hope to be initializing the curl and gcrypt
libraries before collectd becomes multi-threaded, avoiding the problems
described in the issue.
10 years ago[network] set_thread_cbs so we initialize the right threading mode in gcry_check_version
[network] set_thread_cbs so we initialize the right threading mode in gcry_check_version
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
amqp plugin: Fixed compilation when using rabbitmq-c < 0.4.
Thanks to Marc Fournier for noticing!
Thanks to Marc Fournier for noticing!
Merge branch 'collectd-4.10' into collectd-5.3
Revert "curl_xml.c: avoid using uninitalized variable in error message"
This reverts commit bbbf37d55a3959951604c4be482e9a705a0f86d9.
A different fix for this problem was commited to the collectd-5.4 branch
(8327ee64) and conflicts with this patch. Also, initializing url the
same way as 8327ee64 does it, to avoid a merge conflict.
This reverts commit bbbf37d55a3959951604c4be482e9a705a0f86d9.
A different fix for this problem was commited to the collectd-5.4 branch
(8327ee64) and conflicts with this patch. Also, initializing url the
same way as 8327ee64 does it, to avoid a merge conflict.
interface.c: FreeBSD-10 support
Quoting @trtrmitya in github issue #506 : "[...] it is broken on
FreeBSD-10, in which getifaddrs() returns not only link level stats for
a particular interface, but also entries for each IP configured on that
interface. As a result if_submit() is called several times for each
interface, which results in incorrect data being logged.
I am attaching a patch which fixes a problem on FreeBSD (9/10), but it
should work for every *BSD because [...] the getifaddrs implementation
first appeared in BSDi BSD/OS."
Many thanks to @trtrmitya for providing the patch !
Quoting @trtrmitya in github issue #506 : "[...] it is broken on
FreeBSD-10, in which getifaddrs() returns not only link level stats for
a particular interface, but also entries for each IP configured on that
interface. As a result if_submit() is called several times for each
interface, which results in incorrect data being logged.
I am attaching a patch which fixes a problem on FreeBSD (9/10), but it
should work for every *BSD because [...] the getifaddrs implementation
first appeared in BSDi BSD/OS."
Many thanks to @trtrmitya for providing the patch !
curl_xml.c: avoid using uninitalized variable in error message
Thanks to @trtrmitya for reporting this. Fixes GH#507
Thanks to @trtrmitya for reporting this. Fixes GH#507
curl plugin: Fixed a segfault when using <Match> without an Instance.
Thanks to Alexander Golovko for reporting this in
http://bugs.debian.org/732701
Thanks to Alexander Golovko for reporting this in
http://bugs.debian.org/732701
amqp plugin: Added support for rabbitmq-c 0.4.x.
Upstream introduced a new socket interface and deprecated the old one. This
leads to compiler errors when using GCC and -Werror.
Upstream introduced a new socket interface and deprecated the old one. This
leads to compiler errors when using GCC and -Werror.
collection3: Fix data source names
Data sources were renamed in 6c1415d, but the data source names for some
of these entries still referenced the old data sources.
Data sources were renamed in 6c1415d, but the data source names for some
of these entries still referenced the old data sources.
Link to IOKit using -framework
The libIOKit.dylib symlink no longer exists in OS X 10.9 Mavericks, we
now have to link using -framework. This should also work in all previous
versions of OS X.
Signed-off-by: Florian Forster <octo@collectd.org>
The libIOKit.dylib symlink no longer exists in OS X 10.9 Mavericks, we
now have to link using -framework. This should also work in all previous
versions of OS X.
Signed-off-by: Florian Forster <octo@collectd.org>
src/types.db: Remove maximum value on "cache_size".
Fixes #466. Thanks to @dlacko for pointing this out!
Fixes #466. Thanks to @dlacko for pointing this out!
Merge pull request #393 from mfournier/prevent-building-with-old-libpcap
Prevent building with old libpcap
Prevent building with old libpcap
fix error message in target_{replace,set}
Remove erroneous hint that "Type" can be altered. Also correct a small
typo. Thanks to @mjulian for pointing that out !
Fixes GH#448
Remove erroneous hint that "Type" can be altered. Also correct a small
typo. Thanks to @mjulian for pointing that out !
Fixes GH#448
Update collectd.conf.pod
spotted by lukas227 in IRC:
23:43 < lukas227> Hi, I think I found a mistake in the threshold.conf(5) man page: the example
THRESHOLD CONFIGURATION is within <Threshold></Threshold> tags, but should
probably be within <Plugin "threshold"></Plugin> tags (doesn work with
<Threshold> for me)
Day changed to 27 Sep 2013
Signed-off-by: Florian Forster <octo@collectd.org>
spotted by lukas227 in IRC:
23:43 < lukas227> Hi, I think I found a mistake in the threshold.conf(5) man page: the example
THRESHOLD CONFIGURATION is within <Threshold></Threshold> tags, but should
probably be within <Plugin "threshold"></Plugin> tags (doesn work with
<Threshold> for me)
Day changed to 27 Sep 2013
Signed-off-by: Florian Forster <octo@collectd.org>
Avoid using first person in the error message
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Replace you with your in error message
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
zfs_arc plugin: Collect "allocated" and "stolen" on FreeBSD only.
The appropriate log messages have been demoted to WARNING.
Github: #305
The appropriate log messages have been demoted to WARNING.
Github: #305
curl_json plugin: avoid accessing off the end of the avl_tree_s
It's not written this way, but really we have a union { *key; *tree; }
which is differentiated by checking for the presence a magic field
which only exists in key. This leads to accesses off the end of the
tree. Putting the magic at start of the key avoids this.
Signed-off-by: Florian Forster <octo@collectd.org>
It's not written this way, but really we have a union { *key; *tree; }
which is differentiated by checking for the presence a magic field
which only exists in key. This leads to accesses off the end of the
tree. Putting the magic at start of the key avoids this.
Signed-off-by: Florian Forster <octo@collectd.org>
curl_json plugin: avoid unlikely overrun
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge branch 'collectd-5.2' into collectd-5.3
Attempt to fix collectd/collectd#229 by doing user / group lookups before we fork.
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
RedHat RPM spec: support for RHEL5
plus some minor updates: bump version to 5.3.1 & add usage example.
plus some minor updates: bump version to 5.3.1 & add usage example.
check if libpcap has PCAP_ERROR_IFACE_NOT_UP
This should prevent DNS plugin from being built on systems with libpcap
older than 1.0.0.
GitHub issue #373
This should prevent DNS plugin from being built on systems with libpcap
older than 1.0.0.
GitHub issue #373
memcached plugin: actually connect when using a unix socket
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
csv plugin: set datadir null when free
If you define twice DataDir:
<Plugin csv>
DataDir "/opt/collectd/var/lib/collectd/csv"
DataDir stdout
</Plugin>
the second time datadir will not be null and
you will get garbage in value_list_to_filename
Signed-off-by: Florian Forster <octo@collectd.org>
If you define twice DataDir:
<Plugin csv>
DataDir "/opt/collectd/var/lib/collectd/csv"
DataDir stdout
</Plugin>
the second time datadir will not be null and
you will get garbage in value_list_to_filename
Signed-off-by: Florian Forster <octo@collectd.org>
csv plugin: fix forgotten "datadir" in re-implement value_list_to_filename()
In the commit 7f90e30 the re-implementation of value_list_to_filename
forgot to prepend the datadir string.
Signed-off-by: Florian Forster <octo@collectd.org>
In the commit 7f90e30 the re-implementation of value_list_to_filename
forgot to prepend the datadir string.
Signed-off-by: Florian Forster <octo@collectd.org>
rrdcached, rrdtool plugins: Add directory separator after datadir.
D'oh! Thanks to @rcpoison for pointing this out!
Github: #380
D'oh! Thanks to @rcpoison for pointing this out!
Github: #380
rrdcached, rrdtool plugins: Honor the "DataDir" setting.
This fixes a regression introduced in:
bfd3f06ef4996707036756371c5724ebf2748821
Github: #380
This fixes a regression introduced in:
bfd3f06ef4996707036756371c5724ebf2748821
Github: #380
lpar: make dots in configure.in consistent with other plugins
Bump version to 5.3.1; Update ChangeLog.
Merge branch 'collectd-5.2' into collectd-5.3
src/plugin.c: Free the "data_sets" AVL tree.
This pops up every time I investigate memory leaks and it's annoying me.
This pops up every time I investigate memory leaks and it's annoying me.
write_graphite plugin: Don't call close() on invalid file descriptors.
write_graphite plugin: Don't call close() on invalid file descriptors.
write_graphite plugin: Actually check the return value of wg_send_message().
Assignment to "status" was missing.
Assignment to "status" was missing.
Merge branch 'collectd-5.2' into collectd-5.3
rrdtool, rrdcached plugins: Re-implement value_list_to_filename().
Faster version without snprintf().
Faster version without snprintf().
csv plugin: Re-implement value_list_to_filename().
The new implementation is faster, because it doesn't use snprintf().
The new implementation is faster, because it doesn't use snprintf().
src/common.c: Reimplement format_name for performance.
This is used from uc_update(), i.e. for every value list dispatched, and was
one of the most expensive functions thanks to snprintf().
This reduces total time spent in the format_name() function from 7.78% to 1.89%
during a network stress test.
This is used from uc_update(), i.e. for every value list dispatched, and was
one of the most expensive functions thanks to snprintf().
This reduces total time spent in the format_name() function from 7.78% to 1.89%
during a network stress test.
Test for end of oid tree without breaking collection loop.
collectd-threshold(5): Correct the description of the "Interesting" config option.
threshold plugin: Fix the "Interesting" configuration option.
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Unbreak type_inst value in collectd psql view.
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge branch 'collectd-5.2' into collectd-5.3
src/configfile.c: Let errors in included files propagate up to cf_read().
cf_read_generic() returned NULL in two cases: Unable to read file and
file was empty. Since we wanted to allow empty includes, the "include
file with errors" case was not handled properly.
Github: #323
cf_read_generic() returned NULL in two cases: Unable to read file and
file was empty. Since we wanted to allow empty includes, the "include
file with errors" case was not handled properly.
Github: #323
Merge branch 'collectd-4.10' into collectd-5.2
Don't notify continuously when MySQL slave SQL thread is running
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Add "=encoding" header to all manual pages.
http://bugs.debian.org/708718
http://bugs.debian.org/708718
exec plugin: Document that defaulting to PUTVAL is no longer done
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge branch 'document-varnish-instance-block' into collectd-5.2
modbus plugin: Refactor the new reconnection code.
Avoid the goto() and switch() statements.
Github: #294
Avoid the goto() and switch() statements.
Github: #294
Cleanup modbus connection if wrong result
Change-Id: I1b7520442d7663d5bc2529369e27e3e858fe2168
Signed-off-by: Florian Forster <octo@collectd.org>
Change-Id: I1b7520442d7663d5bc2529369e27e3e858fe2168
Signed-off-by: Florian Forster <octo@collectd.org>
Fix modbus segfault / New strategy for connecting
The previous implementation had a reconnection loop which should not
really be necessary. Idea tried here is to check if connection is alive,
and establish it if not. Change was begun because previously connection
would only be attempted as a retry, so on first pass a NULL was handed to
libmodbus which caused segmentation faults reproducibly.
Signed-off-by: Florian Forster <octo@collectd.org>
The previous implementation had a reconnection loop which should not
really be necessary. Idea tried here is to check if connection is alive,
and establish it if not. Change was begun because previously connection
would only be attempted as a retry, so on first pass a NULL was handed to
libmodbus which caused segmentation faults reproducibly.
Signed-off-by: Florian Forster <octo@collectd.org>
varnish: hint about missing <Instance> block
The warning when the Collect* configuration options where used outside
of an <Instance> block was confusing. This patch warns the user the same
way the apache plugin does.
The warning when the Collect* configuration options where used outside
of an <Instance> block was confusing. This patch warns the user the same
way the apache plugin does.
Improve varnish section in manpage.
There previously was no mention of the mandatory <Instance> block.
There previously was no mention of the mandatory <Instance> block.
collectd.conf(5): Fixed documentation for include filter patterns.
The syntax has been changed from a positional argument to using an <Include>
block with additional arguments.
The syntax has been changed from a positional argument to using an <Include>
block with additional arguments.
dns plugin: Sleep for an interval before re-trying to read from interface.
Otherwise we'd just have the CPU hogging behavior shifted from libpcap
to collectd …
Github: #308
Otherwise we'd just have the CPU hogging behavior shifted from libpcap
to collectd …
Github: #308
dns plugin: Resume after receiving a PCAP_ERROR from pcap_loop().
If an interface goes down while capturing, libpcap returns PCAP_ERROR.
Handle this case gracefully.
Github: #308
If an interface goes down while capturing, libpcap returns PCAP_ERROR.
Handle this case gracefully.
Github: #308
write_riemann plugin: Really fix a memory leak.
Github: #307
Github: #307
write_riemann plugin: Fix a memory leak.
Attributes were allocated and added to the event but not freed. D'oh!
Thanks to @dch for reporting this!
Github: #307
Attributes were allocated and added to the event but not freed. D'oh!
Thanks to @dch for reporting this!
Github: #307
src/utils_mount.h: Add <stdio.h>.
This is required on Solaris 10. Thanks to dannypoo@ for reporting this
problem.
Github: #306
This is required on Solaris 10. Thanks to dannypoo@ for reporting this
problem.
Github: #306
Record load averages over 100
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
snmp plugin: Removed "mixed delaration".
This should fix this warning Fabien Wernli reported:
snmp.c:1381: warning: ISO C90 forbids mixed declarations and code
This should fix this warning Fabien Wernli reported:
snmp.c:1381: warning: ISO C90 forbids mixed declarations and code
src/Makefile.am: Really don't distribute *.pb-c.[ch].
src/Makefile.am: Add *.proto to EXTRA_DIST. D'oh!
Build system: Don't ship the generated *.pb-c.[ch] files.
They depend on specific versions of the protobuf-c.h header file, so
shipping this will cause problems for people having a different version
of protoc-c installed. This reverts some of the work done in #269, but
distcheck should still work. Meh.
They depend on specific versions of the protobuf-c.h header file, so
shipping this will cause problems for people having a different version
of protoc-c installed. This reverts some of the work done in #269, but
distcheck should still work. Meh.
RedHat RPM spec: updated for 5.3.0
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
configure.in: Fix libgcrypt flags on FreeBSD.
On FreeBSD, AM_PATH_LIBGCRYPT sets LIBGCRYPT_CFLAGS but not
LIBGCRYPT_CPPFLAGS. Use both variables to be on the save side.
On FreeBSD, AM_PATH_LIBGCRYPT sets LIBGCRYPT_CFLAGS but not
LIBGCRYPT_CPPFLAGS. Use both variables to be on the save side.
Bump version to 5.3.0; Update ChangeLog.
Merge branch 'collectd-5.2'
Bump version to 5.2.2; Update ChangeLog.
Merge branch 'collectd-5.1' into collectd-5.2
Conflicts:
ChangeLog
version-gen.sh
Conflicts:
ChangeLog
version-gen.sh
Bump version to 5.1.3; Update ChangeLog.
Merge remote-tracking branch 'origin/collectd-4.10' into collectd-5.1
Conflicts:
ChangeLog
version-gen.sh
Conflicts:
ChangeLog
version-gen.sh
Bump version to 4.10.9; Update ChangeLog.
netapp plugin: Fix the interval used by the SnapVault and quota metrics.
Additional fix for Github issue #288.
Additional fix for Github issue #288.
Merge branch 'collectd-5.2'
Merge branch 'collectd-5.1' into collectd-5.2
Merge branch 'jk/snmp' into collectd-5.1
write_riemann plugin: Reorder the functions to get rid or prototypes.
write_riemann plugin: Use the "Attributes" of an Event rather than abuse the "Tags".
Riemann 0.2.0 provides "Attributes", which are key-value pairs. Since
the plugin previously basically abused the tag system for adding this
kind of data, switch to the new and shiny thing :)
Riemann 0.2.0 provides "Attributes", which are key-value pairs. Since
the plugin previously basically abused the tag system for adding this
kind of data, switch to the new and shiny thing :)
src/riemann.proto: Import the protocol buffer for Riemann 0.2.0.
Merge remote-tracking branch 'github-octo/ff/netapp' into collectd-5.1
Merge branch 'collectd-5.2'
Merge branch 'collectd-5.1' into collectd-5.2
Conflicts:
configure.in
Conflicts:
configure.in
Merge branch 'collectd-4.10' into collectd-5.1
Conflicts:
configure.in
src/mysql.c
src/network.c
src/thermal.c
Conflicts:
configure.in
src/mysql.c
src/network.c
src/thermal.c
.gitignore: Add src/*.pb-c.[ch]
configure.in: Fix dependency of the pinba and write_riemann plugins.
Since the generated *.pb-c.[ch] files are now included in the
distribution, they only depend on the <google/protobuf-c/protobuf-c.h>
header file, not the protobuf compiler.
Since the generated *.pb-c.[ch] files are now included in the
distribution, they only depend on the <google/protobuf-c/protobuf-c.h>
header file, not the protobuf compiler.
src/Makefile.am: Move *.pb-c.[ch] to MAINTAINERCLEANFILES.
Only generate build rules for these files if protoc-c is available and
use the provided files from the distribution if it is not.
Only generate build rules for these files if protoc-c is available and
use the provided files from the distribution if it is not.