src/utils_tail.c: Remove multiple newlines at EOL.
Updated ChangeLog.
Merge remote-tracking branch 'origin/collectd-5.2' into collectd-5.2
Bumped version to 5.2.1; Updated ChangeLog.
Merge branch 'collectd-5.1' into collectd-5.2
Conflicts:
ChangeLog
src/write_graphite.c
version-gen.sh
Conflicts:
ChangeLog
src/write_graphite.c
version-gen.sh
Bumped version to 5.1.2; Updated ChangeLog.
Added "tar-pax" (bugfix for long filenames with make distcheck)
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
src/Makefile.am: Fix "make distcheck".
protoc-c has a weird handling of files not in the CWD: They have to be
specified with the "-I" option _and_ you need to specify the full path
to the file.
protoc-c has a weird handling of files not in the CWD: They have to be
specified with the "-I" option _and_ you need to specify the full path
to the file.
bugfix ("cannot find collectd.h") for branch master (and 5.2)
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
make distcheck : perllocal.pod was missing. Fixed
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Fix make distcheck (against release 5.1.1)
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
postgresql plugin: Don't access realloc'ed memory.
D'oh! This is the most stupidest bug: all database connection objects are
stored in a plugin-global array and a pointer to each object was passed around
to the worker functions. This array used to be an array of objects (rather
than pointers) and was realloc'ed every time a new connection was added. Now,
the realloc caused the old pointer to not be valid any more, thus, any but the
last database connection were later accessing memory out of range. This caused
the plugin to segfault if more than one database connection was used.
Thanks to Greg Swift for reporting this!
Fixes Github issue #238.
D'oh! This is the most stupidest bug: all database connection objects are
stored in a plugin-global array and a pointer to each object was passed around
to the worker functions. This array used to be an array of objects (rather
than pointers) and was realloc'ed every time a new connection was added. Now,
the realloc caused the old pointer to not be valid any more, thus, any but the
last database connection were later accessing memory out of range. This caused
the plugin to segfault if more than one database connection was used.
Thanks to Greg Swift for reporting this!
Fixes Github issue #238.
src/utils_dns.c: Improve ordering of includes.
sys, followed by net, followed by netinet, followed by arpa
that should be the most logical order
Signed-off-by: Florian Forster <octo@collectd.org>
sys, followed by net, followed by netinet, followed by arpa
that should be the most logical order
Signed-off-by: Florian Forster <octo@collectd.org>
write_graphite plugin: Remove two more redundant error messages.
The failing functions already print an error message; don't spam the logs
by duplicating this.
Further fixes Github issue #236.
The failing functions already print an error message; don't spam the logs
by duplicating this.
Further fixes Github issue #236.
src/utils_complain.[ch]: Fix the complaint mechanism after the sub-second change.
write_graphite: Use the complain mechanism to report connection errors.
Fixes Github issue #236. Thanks to @pyr for reporting it!
Fixes Github issue #236. Thanks to @pyr for reporting it!
Merge remote-tracking branch 'origin/collectd-5.2' into collectd-5.2
write_graphite: Decrease a buffer size.
If the buffer is too large, it is possible that the message cannot be
send using the send buffer, leading to a failed assertion in
wg_send_message().
Fixes Github issue #226. Thanks to @bwhaley for reporting this.
If the buffer is too large, it is possible that the message cannot be
send using the send buffer, leading to a failed assertion in
wg_send_message().
Fixes Github issue #226. Thanks to @bwhaley for reporting this.
Merge branch 'collectd-5.1' into collectd-5.2
Merge branch 'collectd-4.10' into collectd-5.1
dbi plugin: Replace cdbi_config_set_string() with cf_util_get_string().
Fixed a small typo in the ethstat plugin
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
ethstat plugin: Fix the map lookup.
Previously, a pointer into the configuration structure was used to look
up the mappings. Because the configuration structure is freed or
otherwise modified, this does not work as intended (and may actually
lead to a segmentation fault when unlucky).
For completeness sake, a shutdown callback was added to free the used
memory on exit.
Fixes Github issue 224.
Previously, a pointer into the configuration structure was used to look
up the mappings. Because the configuration structure is freed or
otherwise modified, this does not work as intended (and may actually
lead to a segmentation fault when unlucky).
For completeness sake, a shutdown callback was added to free the used
memory on exit.
Fixes Github issue 224.
src/types.db: Remove the maximum value from "timeleft".
format_graphite: Implement the "separate instances" and "always append ds" options.
Fixes Github issue #214.
Fixes Github issue #214.
Merge remote-tracking branch 'github/collectd-5.2' into collectd-5.2
Fix when gcrypt.h is missing (libcollectdclient)
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Fix for nanosleep missing on Solaris
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
postgresql plugin: Fixed a memory leak occurring on every (successful) write.
zfs_arc plugin: Fix the type used for mutex misses.
Thanks to Yves Mettier for pointing this out!
Thanks to Yves Mettier for pointing this out!
11 years agoUpdating data source for collectd v5, see https://collectd.org/wiki/index.php/V4_to_v...
Updating data source for collectd v5, see https://collectd.org/wiki/index.php/V4_to_v5_migration_guide
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge remote-tracking branch 'github/collectd-5.2' into collectd-5.2
varnish plugin: Make sure the argument passed to VSM_n_Arg() is not NULL.
Fixes Github issue 202.
Fixes Github issue 202.
Add missing "Graphite" to the amqp format list.
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
collectd.conf: Added example PostgreSQL writer configuration.
collectd.conf: Added a short explanation to the 'Interval' setting.
… mentioning the per-plugin interval setting.
… mentioning the per-plugin interval setting.
README: Added 'pf' and 'aggregation' plugins.
fix redis default node initialization
unbreak redis plugin build
Signed-off-by: Florian Forster <octo@collectd.org>
unbreak redis plugin build
Signed-off-by: Florian Forster <octo@collectd.org>
collectd-tg(1): Add manpage.
collectd.conf(5): Add the per-plugin interval to the synopsis.
Fix java detection as unprivileged user.
If you have an inaccessible directory inside
JAVA_HOME, find returns an error and the test fails.
I found this on Fedora, where /usr/lib64/audit is only
readable by root, and my JAVA_HOME was set to /usr
Signed-off-by: Florian Forster <octo@collectd.org>
If you have an inaccessible directory inside
JAVA_HOME, find returns an error and the test fails.
I found this on Fedora, where /usr/lib64/audit is only
readable by root, and my JAVA_HOME was set to /usr
Signed-off-by: Florian Forster <octo@collectd.org>
Fix building of java binding
Caused by d327beed4d1541d883c4823485b381d1dff79039
Signed-off-by: Florian Forster <octo@collectd.org>
Caused by d327beed4d1541d883c4823485b381d1dff79039
Signed-off-by: Florian Forster <octo@collectd.org>
src/libcollectdclient/Makefile.am: Fix typo.
src/libcollectdclient/Makefile.am: Add "collectd/network.h".
Bump version to 5.2.0; Update ChangeLog.
src/libcollectdclient/network.c: Fix the build on FreeBSD.
On FreeBSD, we have to include <netinet/in.h> to get IN_MULTICAST(). We
don't need to include anything extra, as according to POSIX,
<netinet/in.h> also exposes htonl(). There is no need to include
<arpa/inet.h>.
Signed-off-by: Florian Forster <octo@collectd.org>
On FreeBSD, we have to include <netinet/in.h> to get IN_MULTICAST(). We
don't need to include anything extra, as according to POSIX,
<netinet/in.h> also exposes htonl(). There is no need to include
<arpa/inet.h>.
Signed-off-by: Florian Forster <octo@collectd.org>
src/libcollectdclient/network_buffer.c: Fix gcrypt build on FreeBSD.
As with src/network.c, we need to ensure that we define
GCRYPT_NO_DEPRECATED on FreeBSD to get rid of the compiler warnings
emitted by the header file.
Signed-off-by: Florian Forster <octo@collectd.org>
As with src/network.c, we need to ensure that we define
GCRYPT_NO_DEPRECATED on FreeBSD to get rid of the compiler warnings
emitted by the header file.
Signed-off-by: Florian Forster <octo@collectd.org>
Merge branch 'collectd-5.1'
Merge remote-tracking branch 'origin/master'
Merge branch 'collectd-5.0' into collectd-5.1
Merge branch 'collectd-4.10' into collectd-5.0
fixed paths in example configuration file
These paths previously got expanded to:
#BaseDir "/usr/var/lib/collectd"
instead of:
#BaseDir "/var/lib/collectd"
And on systems which put libs in /usr/lib64:
#PluginDir "/usr/lib/collectd"
instead of:
#PluginDir "/usr/lib64/collectd"
Signed-off-by: Florian Forster <octo@collectd.org>
These paths previously got expanded to:
#BaseDir "/usr/var/lib/collectd"
instead of:
#BaseDir "/var/lib/collectd"
And on systems which put libs in /usr/lib64:
#PluginDir "/usr/lib/collectd"
instead of:
#PluginDir "/usr/lib64/collectd"
Signed-off-by: Florian Forster <octo@collectd.org>
lcc_features.h: Relicense under the MIT license.
src/libcollectdclient/network_buffer.c: Copy gcrypt import magic from the network plugin.
libcollectdclient: Update to the high-resolution time format.
Merge branch 'sr/pf'
Merge branch 'sh/postgresql-writer'
Conflicts:
src/collectd.conf.pod
src/postgresql.c
Conflicts:
src/collectd.conf.pod
src/postgresql.c
Merge branch 'sh/postgres-queries'
Merge branch 'libvirt-interfacenumber'
GenericJMXConfConnection: Automatically determine the host name.
Fixes Github issue #182.
Fixes Github issue #182.
libcollectdclient: Relicense under the MIT license.
Merge branch 'ff/netlib'
Conflicts:
src/collectdctl.c
src/libcollectdclient/client.c
src/libcollectdclient/collectd/client.h
Conflicts:
src/collectdctl.c
src/libcollectdclient/client.c
src/libcollectdclient/collectd/client.h
src/network.c: Fix the build on FreeBSD.
<gcrypt.h> accepts a definition called GCRYPT_NO_DEPRECATED to disable
deprecated functionality. Unfortunately, this definition is not
sufficient to suppress all warnings. However, FreeBSD's version of
libgcrypt has been fixed to properly remove all deprecated features.
Signed-off-by: Florian Forster <octo@collectd.org>
<gcrypt.h> accepts a definition called GCRYPT_NO_DEPRECATED to disable
deprecated functionality. Unfortunately, this definition is not
sufficient to suppress all warnings. However, FreeBSD's version of
libgcrypt has been fixed to properly remove all deprecated features.
Signed-off-by: Florian Forster <octo@collectd.org>
src/plugin.c: Replace the last use of "interval_g" in this file.
Merge branch 'sh/plugin_interval'
Conflicts:
src/amqp.c
src/exec.c
src/memcached.c
src/unixsock.c
Conflicts:
src/amqp.c
src/exec.c
src/memcached.c
src/unixsock.c
collectd_insert.sql: Use timestamptz rather than timestamp.
Don't want to get messed-up values after daylight-savings changes.
Don't want to get messed-up values after daylight-savings changes.
utils_time: cdtime_to_iso8601(): Include timezone information as well.
src/configfile.[ch]: Implement the cf_get_default_interval() function.
This should be able to replace "interval_g" in a global (i.e. non-plugin)
context, such as the interval in which timeouts are being checked.
The default value (10 seconds) is also configurable at compile time using
a define.
This should be able to replace "interval_g" in a global (i.e. non-plugin)
context, such as the interval in which timeouts are being checked.
The default value (10 seconds) is also configurable at compile time using
a define.
postgresql plugin: Simplified transaction handling a bit.
Don't set any next commit time after committing a transaction but only when
starting a new transaction. This way, db->next_commit == 0 always means that
we're outside of a transaction. Also, this removes the need to restart a
transaction right away. Rather, the write callback will take care of that the
next time it gets any data.
Don't set any next commit time after committing a transaction but only when
starting a new transaction. This way, db->next_commit == 0 always means that
we're outside of a transaction. Also, this removes the need to restart a
transaction right away. Rather, the write callback will take care of that the
next time it gets any data.
collectd.conf(5): Documented the postgresql FLUSH support.
postgresql plugin: Added support for "flushing" data.
This may be used to commit a PostgreSQL writer's transaction. Two different
types of flush callbacks are registered:
- postgresql: Flush *all* databases.
- postgresql-<database>: Flush the database named '<database>' only.
This may be used to commit a PostgreSQL writer's transaction. Two different
types of flush callbacks are registered:
- postgresql: Flush *all* databases.
- postgresql-<database>: Flush the database named '<database>' only.
postgresql plugin: Fixed unregistering of write callbacks.
Rather than unregistering some callback for each writer for each database,
unregister the single callback for each database only.
Rather than unregistering some callback for each writer for each database,
unregister the single callback for each database only.
postgresql plugin: Unregister all writers on shutdown.
This will make sure that all pending transactions will be committed. Else, the
open transactions would be rolled back by the PostgreSQL backend when closing
the connection.
In order to do so, all database connections are now stored in a plugin-global
array (this will also make further changes possible). Also, a ref-count has
been added to the database object in order to support "deleting" an object
twice when having it in use by a connection doing queries and writes.
This will make sure that all pending transactions will be committed. Else, the
open transactions would be rolled back by the PostgreSQL backend when closing
the connection.
In order to do so, all database connections are now stored in a plugin-global
array (this will also make further changes possible). Also, a ref-count has
been added to the database object in order to support "deleting" an object
twice when having it in use by a connection doing queries and writes.
postgresql plugin: Commit a transaction before shutting down a connection.
Also, make sure to acquire the database lock before that in order to wait for,
for example, outstanding writers.
Also, make sure to acquire the database lock before that in order to wait for,
for example, outstanding writers.
postgresql plugin: Don't try to restart a failed transaction when there's none.
postgresql plugin: Restart a writer transaction if the writer's query failed.
The failed query inside the transaction causes the transaction to be aborted
and all subsequent queries to fail as well.
The failed query inside the transaction causes the transaction to be aborted
and all subsequent queries to fail as well.
collectd.conf(5): Documented the postgresql <Database> 'Writer' option.
collectd.conf(5): Documented the "CommitInterval" option of 'postgresql'.
collectd_insert.sql: Let values_update_childs() return table names.
The function will now return a set of the names of child tables that have been
created.
The function will now return a set of the names of child tables that have been
created.
collectd_insert.sql: Added view 'collectd'.
This view provides a join of the 'identifiers' and 'values' tables plus an
additional column with the serialized collectd identifier.
This view provides a join of the 'identifiers' and 'values' tables plus an
additional column with the serialized collectd identifier.
postgresql plugin: Added 'CommitInterval' config option.
If specified, this option causes a writer to put several updates into a single
transaction. This transaction will last for the specified amount of time (in
seconds). By default, each update would be executed in a separate transaction
causing quite some overhead.
If specified, this option causes a writer to put several updates into a single
transaction. This transaction will last for the specified amount of time (in
seconds). By default, each update would be executed in a separate transaction
causing quite some overhead.
collectd-perl(5): Don't actually use $interval_g in any examples.
collectd-perl(5): Mention that $interval_g should not be used.
perl plugin: Emit a warning when accessing $interval_g.
Rather, point to plugin_get_interval().
Rather, point to plugin_get_interval().
perl plugin: Simplified $interval_g implementation.
Don't pass any pointers to interval_g around just in order to later
dereference them. There's just no reason to do so ;-)
Don't pass any pointers to interval_g around just in order to later
dereference them. There's just no reason to do so ;-)
Collectd.pm: Use plugin_get_interval() rather than $interval_g.
Collectd::Plugins::OpenVZ: Use plugin_get_interval() rather than $interval_g.
perl plugin: Export plugin_get_interval() to Perl plugins.
src/plugin.c: Report an error if ctx.interval is not set.
rrdtool plugin: Remove warnings.
They made sense when all data was collected at the same interval. This
has not been true for a while now and these warnings don't make any sense
anymore.
We could transform them into a per-VL check and use complaints to notify
the user, but I don't think it's worth it. There is an "I told you so"
in the manpage in big bold letters ...
They made sense when all data was collected at the same interval. This
has not been true for a while now and these warnings don't make any sense
anymore.
We could transform them into a per-VL check and use complaints to notify
the user, but I don't think it's worth it. There is an "I told you so"
in the manpage in big bold letters ...
src/plugin.c: Don't regularly check for read plugins.
Rather, let plugin_insert_read() wake up all the read threads.
This removes another usage of interval_g.
Rather, let plugin_insert_read() wake up all the read threads.
This removes another usage of interval_g.
Merge branch 'collectd-5.1'
Bump version to 5.1.1; Update ChangeLog.
Merge branch 'collectd-5.0' into collectd-5.1
Conflicts:
ChangeLog
version-gen.sh
Conflicts:
ChangeLog
version-gen.sh
Bump version to 5.0.5; Update ChangeLog.
Merge branch 'collectd-4.10' into collectd-5.0
Conflicts:
ChangeLog
src/pyvalues.c
version-gen.sh
Conflicts:
ChangeLog
src/pyvalues.c
version-gen.sh
Update version-gen.sh.
Bump version to 4.10.8; Update ChangeLog.
ping plugin: Don't abort the "ping_thread" when ping_send() fails.
This may happen when the network is down. If the thread fails, the read
callback will indicate an error and the exponential back-off will start.
This is not optimal for this scenario, since you usually want to have
ping stats from right when the network is back up.
Fixes Github issue #171.
This may happen when the network is down. If the thread fails, the read
callback will indicate an error and the exponential back-off will start.
This is not optimal for this scenario, since you usually want to have
ping stats from right when the network is back up.
Fixes Github issue #171.
ping plugin: Refactor "ping_thread": Move iteration over hosts into a function.