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)
Make sure that "PIDFile" option cannot be set when command-line option "-P" was used. (Fixes #553)
The "PIDFile" value from command-line option "-P", which should take
precedence over any "PIDFile" value from configuration files, could be
overwritten if a configuration file contained the "PIDFile" option.
We introduced a new global variable "pidfile_from_cli" which will be set
to 1 when the command-line option "-P" was detected and the
"global_option_set" function will only set the "PIDFile" option if
"pidfile_from_cli" is 0.
The "PIDFile" value from command-line option "-P", which should take
precedence over any "PIDFile" value from configuration files, could be
overwritten if a configuration file contained the "PIDFile" option.
We introduced a new global variable "pidfile_from_cli" which will be set
to 1 when the command-line option "-P" was detected and the
"global_option_set" function will only set the "PIDFile" option if
"pidfile_from_cli" is 0.
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!
10 years agoMerge branch 'feature-log-logstash' of github.com:pyr/collectd into feature-log-logstash
Merge branch 'feature-log-logstash' of github.com:pyr/collectd into feature-log-logstash
Conflicts:
configure.ac
Conflicts:
configure.ac
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
fix wg_send_buffer to reconnect tcp sockets on failure
Adds Blacklist/Whitelist support to snmp plugin
Adds two options to snmp plugin Data Section:
- Ignore -> A List of string containing patterns to blacklist
- InvertMatch -> A Boolean value to tell if using blacklist or
whitelist (true is whitelist, false (default) is blacklist)
Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
Adds two options to snmp plugin Data Section:
- Ignore -> A List of string containing patterns to blacklist
- InvertMatch -> A Boolean value to tell if using blacklist or
whitelist (true is whitelist, false (default) is blacklist)
Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
Merge pull request #499 from pyr/feature-cpu-active
Report a CPU "active" value, summing non-idle values
Report a CPU "active" value, summing non-idle values
Merge pull request #498 from pyr/feature-relative-load
Feature relative load
Feature relative load
Merge pull request #362 from mikepilat/add-snmpv3
Add SNMPv3 authentication and encryption support
Add SNMPv3 authentication and encryption support
Report a CPU "active" value, summing non-idle values
This small change provides a per-core aggregate of non-idle
values for CPUs. This is a good indicator to apply a threshold
on (especially if aggregated by means of the aggregation plugin).
This small change provides a per-core aggregate of non-idle
values for CPUs. This is a good indicator to apply a threshold
on (especially if aggregated by means of the aggregation plugin).
Document changes, mostly taken from @vbartoni's original work
Adapt to @octo's comments for PR #344
Merge remote-tracking branch 'github/master'
Merge pull request #495 from abhinav-upadhyay/fix-readme
Remove 'the' from in front of collectd.
Remove 'the' from in front of collectd.
Remove 'the' from in front of collectd.
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.
Allow Interval per File block for tail plugin
The allows each <File> block in the tail plugin config to specify
its own Interval value. If ommitted, will use the default.
The allows each <File> block in the tail plugin config to specify
its own Interval value. If ommitted, will use the default.
Merge branch 'collection3-data-sources' of git://github.com/raimue/collectd
Merge branch 'netlinkfix' of git://github.com/marekbecka/collectd
Merge branch 'ff/network'
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!
curl_json, curl_xml: Fix unitialized variable
The variable url is used unintialized here. The code used to be the same
in both plugins, but diverged in 19808b44. The solution applied there
does not work correctly as the effective URL can only be queried after
performing the request. Instead, just use the original request URL.
Signed-off-by: Florian Forster <octo@collectd.org>
The variable url is used unintialized here. The code used to be the same
in both plugins, but diverged in 19808b44. The solution applied there
does not work correctly as the effective URL can only be queried after
performing the request. Instead, just use the original request URL.
Signed-off-by: Florian Forster <octo@collectd.org>
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.
Merge pull request #459 from pyr/feature-riemann-attributes
Add support for custom attributes.
Add support for custom attributes.
Ignore more build artifacts
This hides:
- vl_utils_lookup_test
- junk left behind by pod2man
- the buildperl dir
This hides:
- vl_utils_lookup_test
- junk left behind by pod2man
- the buildperl dir
Add documentation bits for the new 'Attribute' directive
Add support for custom attributes.
Refactor / modernize config parsing with configfile helpers
... as requested by @octo
... as requested by @octo
Merge pull request #453 from vincentbernat/feature/parallel-dbi
Handle several databases in parallel with dbi plugin
Handle several databases in parallel with dbi plugin
Merge pull request #393 from mfournier/prevent-building-with-old-libpcap
Prevent building with old libpcap
Prevent building with old libpcap
Merge pull request #441 from katzj/localhost-sql
Fix handling of 127.0.0.1 instead of localhost for *sql plugins
Fix handling of 127.0.0.1 instead of localhost for *sql plugins
Merge pull request #452 from alexscott/master
Add a JMXProvider Class Loader to be able to load Provider using
Add a JMXProvider Class Loader to be able to load Provider using
dbi plugin: register one read callback for each database block
By using a distinct read callback for each database block, collectd
will be able to query several databases in parallel. This is useful if
the plugin should handle many queries. This lets the user split them in
chunks and speed up the retrieval.
By using a distinct read callback for each database block, collectd
will be able to query several databases in parallel. This is useful if
the plugin should handle many queries. This lets the user split them in
chunks and speed up the retrieval.
dbi plugin: fix a warning mentioning snmp plugin
Merge pull request #444 from falzm/master
Append rules/targets to existing chain.
Append rules/targets to existing chain.
Add a JMXProvider Class Loader to be able to load Provider using
getConnectorAsService from JMXConnectorFactory. The protocol remoting-jmx
using by JBOSS > 7 need that to work.
getConnectorAsService from JMXConnectorFactory. The protocol remoting-jmx
using by JBOSS > 7 need that to work.
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
Rewritten condition more clearly.
Append rules/targets to existing chain.
This patch allows appending rules/targets to an existing chain instead
of overwriting it. This way, it is possible to split filter chains
definition among several files.
This patch allows appending rules/targets to an existing chain instead
of overwriting it. This way, it is possible to split filter chains
definition among several files.
Merge pull request #417 from udoprog/udoprog/riemann
write_riemann: Add extra meta strings as attributes in notifications
write_riemann: Add extra meta strings as attributes in notifications