Merge pull request #670 from pyr/feature-write-kafka
Add a write_kafka output with similar properties to the amqp one.
Add a write_kafka output with similar properties to the amqp one.
Merge pull request #518 from pyr/feature-riemann-threshold
Feature riemann threshold
Feature riemann threshold
add 2 missing options to example config
Merge branch 'udev-disk'
disk: document missing option + add example
add documentation
Merge pull request #639 from dothebart/fix_cpu_crash
CPU Percentage: after realloc the pointer becomes invalid;
CPU Percentage: after realloc the pointer becomes invalid;
Merge pull request #666 from KiNgMaR/write_http-ssloptions
write_http: expose more TLS options
write_http: expose more TLS options
make kafka logs go through collectd's logging
remove unneeded include
Add a write_kafka output with similar properties to the amqp one.
document new options
make threshold checking optional
Merge branch 'master' into feature-riemann-threshold
reuse main avl tree
Store the avl tree within collectd core.
We need this if we want modules to share access to the threshold
avl tree.
We need this if we want modules to share access to the threshold
avl tree.
write_http: expose more TLS options
* adds support for client certificate authentication
* allows setting CAPath
* allows forcing a specific SSL/TLS version
* adds support for client certificate authentication
* allows setting CAPath
* allows forcing a specific SSL/TLS version
Merge pull request #619 from Crapworks/master
increased buffer size
increased buffer size
remove quotes in example config to make all statements consistent
mention new options to cpu plugin in example config
add brackets to the list of characters graphite chokes on
(cherry-pick of 109cc80a to avoid a merge conflict later on)
(cherry-pick of 109cc80a to avoid a merge conflict later on)
Merge pull request #636 from dothebart/config_debug_nonsilent
Syslog: don't go all silent on 'debug' with production binary
Syslog: don't go all silent on 'debug' with production binary
Add support for durable AMQP queues
The collectd amqp plugin allows setting messages as persistent but is hardcoded to create or use transient queues that are set to auto_delete. This commit adds support for QueueDurable and QueueAutoDelete boolean values in the config file and changes the queue creation as appropriate.
If the values are not set in the config file, QueueDurable defaults to false and QueueAutoDelete defaults to true.
Tested with RabbitMQ 3.3.1
The collectd amqp plugin allows setting messages as persistent but is hardcoded to create or use transient queues that are set to auto_delete. This commit adds support for QueueDurable and QueueAutoDelete boolean values in the config file and changes the queue creation as appropriate.
If the values are not set in the config file, QueueDurable defaults to false and QueueAutoDelete defaults to true.
Tested with RabbitMQ 3.3.1
CPU Percentage: after realloc the pointer becomes invalid; need to work on new pointer.
fixes https://gist.github.com/toni-moreno/a2f80021535f87202de7
fixes https://gist.github.com/toni-moreno/a2f80021535f87202de7
Syslog: if we can't find the loglevel specified by the configuration string default to 'info' and warn about the unknown configuration option. no way to make syslog totaly silent anymore.
Remove _num suffix from listen_disabled_num collected value
Submit listen_disabled_num in memcached.c
This is a counter which increments when the connection limit to
memcached is reached and a socket listen is disabled.
This is a counter which increments when the connection limit to
memcached is reached and a socket listen is disabled.
Fix link to memcached protocol
increased buffer size
write_http plugin: Remove custom string and boolean config handlers.
collection.cgi: Use -l 0 for df_complex graphs.
collection.cgi: Added support for df_complex types.
collection.cgi: Fixed apache data-sources.
examples/myplugin: Updated to the current plugin API.
Merge pull request #569 from manuelluis/mlsr/MSG_DONTWAIT-aix
AIX doesn't have MSG_DONTWAIT, define as MSG_NONBLOCK
AIX doesn't have MSG_DONTWAIT, define as MSG_NONBLOCK
Merge pull request #546 from manuelluis/mlsr/tcpconns-aix
Fix tcp state names in AIX to be like others.
Fix tcp state names in AIX to be like others.
Merge pull request #446 from bugsduggan/feature/tail_plugin_interval_per_file
Allow Interval per File block for tail plugin
Allow Interval per File block for tail plugin
Merge pull request #575 from amiron/riemann_notification_message
write_riemann: send notification message
write_riemann: send notification message
typo in plugin descr header
add documentation for #516
Merge pull request #516 from pyr/feature-normalized-cpu
Add ReportByCpu and ValuesPercentage for cpu plugin
Add ReportByCpu and ValuesPercentage for cpu plugin
write_riemann: send notification message to riemann via description field
AIX doesn't have MSG_DONTWAIT, define as MSG_NONBLOCK
indents
HTTP Digest support for curl plugins
memory plugin: fix submit multivalue (fill vl.type)
disk: Add udev-based device renaming on Linux
On systems with large collections of allocated disk resources, the
kernel provided names can be difficult to use to logically group or
compare collected values. To grant users the ability to assign custom
instance names for disk devices, collectd can query for a specified udev
attribute. If the attribute is present, its value is subsituted for the
kernel name when submitting the data points.
On systems with large collections of allocated disk resources, the
kernel provided names can be difficult to use to logically group or
compare collected values. To grant users the ability to assign custom
instance names for disk devices, collectd can query for a specified udev
attribute. If the attribute is present, its value is subsituted for the
kernel name when submitting the data points.
Fix tcp state names to be like others.
redis allows passwords up to 512 characters long
Merge pull request #525 from collectd/feature-better-graphite-escape
Graphite deals poorly with metric names containing quotes.
Graphite deals poorly with metric names containing quotes.
Graphite deals poorly with metric names containing quotes.
Sanitize graphite metrics with our own escaping function,
better suited for this use-case than the one in `utils_parse_option`
Sanitize graphite metrics with our own escaping function,
better suited for this use-case than the one in `utils_parse_option`
Merge remote-tracking branch 'origin/pr/524'
removed invalid space from macro definition
Merge remote-tracking branch 'github/master'
contrib/collection.cgi: Add license header.
Thanks for Mirko and Sebastian to agreeing to this licensing!
Thanks for Mirko and Sebastian to agreeing to this licensing!
Add threshold checks for riemann output.
Merge branch 'feature-riemann-threshold' of github.com:pyr/collectd into feature-riemann-threshold
better indentation.
Merge branch 'master' into feature-normalized-cpu
import thresholds from thresholds.c
typo fixes.
as advised by @octo move to a rate computing function
add a value_to_rate function.
Fix a typo in the manpage
Signed-off-by: Ruben Kerkhof <ruben@rubenkerkhof.com>
Signed-off-by: Ruben Kerkhof <ruben@rubenkerkhof.com>
Merge pull request #497 from pyr/feature-conntrack-pct
Report used, max and percent values for conntrack consumption
Report used, max and percent values for conntrack consumption
keep plugin instance for first cpu
fix typos
handle comments from @octo
Add ReportByCpu and ValuesPercentage for cpu plugin
ReportByCpu defaults to true, ValuesPercentage to false
This enables the following use cases:
- ReportByCpu false: emits normalized percentage values
- ValuesPercentage true: emits percentage values
- default: send per core ticks, as previously
ReportByCpu defaults to true, ValuesPercentage to false
This enables the following use cases:
- ReportByCpu false: emits normalized percentage values
- ValuesPercentage true: emits percentage values
- default: send per core ticks, as previously
integrate comments by @octo
provide conntrack percentage values
collectd.conf(5): Correct default value used.
memory plugin: Use the new plugin_dispatch_multivalue() interface.
This takes calculation of percentages off of our hands.
This takes calculation of percentages off of our hands.
Merge branch 'master' into katzj/memory
Merge branch 'katzj/swap'
swap plugin: Remove the swap_submit() function.
This function was used only by swap_submit_derive(), which was declared
conditionally. This resulted in "defined but not used" warnings, e.g. on
FreeBSD.
This function was used only by swap_submit_derive(), which was declared
conditionally. This resulted in "defined but not used" warnings, e.g. on
FreeBSD.
src/common.[ch]: Rewrite the escape_slashes() function.
Cleaner and slightly more efficient (3.8% faster) version of escape_slashes().
This function is quite hot with, depending on the configuration, between 1.2%
and 2.6% of total CPU time spent here.
Cleaner and slightly more efficient (3.8% faster) version of escape_slashes().
This function is quite hot with, depending on the configuration, between 1.2%
and 2.6% of total CPU time spent here.
src/utils_cache.c: Very minor performance improvement.
cache_compare() is one of the hottest functions in collectd. Depending how many
metrics collectd handles (how deep the tree is) it gets called an order of
magnitude or two more often than the number of metrics handled. With 100k
metrics, about 6.6% of the CPU time were spent within cache_compare(), with
this commit this reduces to 6.3% (that's, uhm, 4.7% faster?).
cache_compare() is one of the hottest functions in collectd. Depending how many
metrics collectd handles (how deep the tree is) it gets called an order of
magnitude or two more often than the number of metrics handled. With 100k
metrics, about 6.6% of the CPU time were spent within cache_compare(), with
this commit this reduces to 6.3% (that's, uhm, 4.7% faster?).
swap plugin: Use the "complex" configuration.
It's actually shorter and handles non-boolean arguments more intelligently.
It's actually shorter and handles non-boolean arguments more intelligently.
swap plugin: Remove left-over debugging message.
swap plugin: Switch to the new plugin_dispatch_multivalue() interface.
src/plugin.[ch]: Implement plugin_dispatch_multivalue().
collectd.conf(5): Document the memory plugin's Values{Absolute,Percentage} options.
memory plugin: Move calculation of the percentage to memory_submit().
This removed the need for a lot of duplicate calls. It also changes the
naming schema to use the "percent" type rather than the "memory" type,
putting the information that these are percentages into the type
instance field.
This removed the need for a lot of duplicate calls. It also changes the
naming schema to use the "percent" type rather than the "memory" type,
putting the information that these are percentages into the type
instance field.
memory plugin: Use the "complex" configuration.
swap plugin: Improvements for the percent code:
* Don't rely on the left-to-right evaluation order, i.e. move the
division to the right.
* Avoid casting by making many of the internally used variables gauge_t.
They were derive_t in many cases for historical reasons that no longer
apply.
* Change the naming: Don't use the "swap" type for percentages (putting
the information that it *is* a percentage into the type instance) and
use "percent" instead.
* Don't rely on the left-to-right evaluation order, i.e. move the
division to the right.
* Avoid casting by making many of the internally used variables gauge_t.
They were derive_t in many cases for historical reasons that no longer
apply.
* Change the naming: Don't use the "swap" type for percentages (putting
the information that it *is* a percentage into the type instance) and
use "percent" instead.
Support sending percentages for memory utilization
Allow setting ReportPercentage and ReportAbsolute to enable
sending percentages of memory usage instead of absolute values.
This is useful when trying to compare across a heterogeneous
set of systems.
Signed-off-by: Florian Forster <octo@collectd.org>
Allow setting ReportPercentage and ReportAbsolute to enable
sending percentages of memory usage instead of absolute values.
This is useful when trying to compare across a heterogeneous
set of systems.
Signed-off-by: Florian Forster <octo@collectd.org>
collectd.conf(5): Document "Values{Absolute,Percentage} for the swap plugin.
Add support for ReportAbsolute and ReportPercentage in swap plugin
Add ReportAbsolute and ReportPercentage options to the swap plugin
so that values can be converted to percentages much like in the
df plugin
Signed-off-by: Florian Forster <octo@collectd.org>
Add ReportAbsolute and ReportPercentage options to the swap plugin
so that values can be converted to percentages much like in the
df plugin
Signed-off-by: Florian Forster <octo@collectd.org>
write_riemann plugin: Coding style fixes.
Merge branch 'collectd-5.4'
Conflicts:
src/write_graphite.c
Conflicts:
src/write_graphite.c
Merge branch 'collectd-5.3' into collectd-5.4
Conflicts:
src/zfs_arc.c
Conflicts:
src/zfs_arc.c
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
fix wg_send_buffer to reconnect tcp sockets on failure
Conflicts:
src/write_graphite.c
Conflicts:
src/write_graphite.c
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
Merge pull request #502 from rtkmhart/write_graphite_issue_430
Fix issue #430 where write_graphite fails to reconnect
Fix issue #430 where write_graphite fails to reconnect
Merge pull request #414 from kri5/master
Adds Blacklist/Whitelist support to snmp plugin
Adds Blacklist/Whitelist support to snmp plugin