Plugin for getting DPDK ports link status and keep alive events.
Dpdkevents plugin collects and reports following events from DPDK based
applications:
- link status of network ports bound with DPDK
- keep alive events related to DPDK logical cores
In order to get link status plugin forks child process that attaches itself to
DPDK application as secondary DPDK process and fetches link status data using
DPDK API. This is the same approach like for dpdkstat plugin, also the same
utils_dpdk.c helper is utilized.
For getting keep alive events plugin communicates with DPDK application
via shared memory area. This is possible only if keep alive feature
is implemented in monitored application.
More details can be found under link
http://dpdk.org/doc/guides/sample_app_ug/keep_alive.html
Minimal required version of DPDK is 16.07.
Change-Id: Id820407ea933b1ecc31a72b6e344a6ec186ec780
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Dpdkevents plugin collects and reports following events from DPDK based
applications:
- link status of network ports bound with DPDK
- keep alive events related to DPDK logical cores
In order to get link status plugin forks child process that attaches itself to
DPDK application as secondary DPDK process and fetches link status data using
DPDK API. This is the same approach like for dpdkstat plugin, also the same
utils_dpdk.c helper is utilized.
For getting keep alive events plugin communicates with DPDK application
via shared memory area. This is possible only if keep alive feature
is implemented in monitored application.
More details can be found under link
http://dpdk.org/doc/guides/sample_app_ug/keep_alive.html
Minimal required version of DPDK is 16.07.
Change-Id: Id820407ea933b1ecc31a72b6e344a6ec186ec780
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Merge pull request #2140 from maryamtahhan/feat_ras_bugfix
mcelog: Bug fixes and code style changes
mcelog: Bug fixes and code style changes
mcelog: Address PR comments.
Change-Id: Ifde0311b54535b8cd5b3e0ccb05ce908dc499f62
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Change-Id: Ifde0311b54535b8cd5b3e0ccb05ce908dc499f62
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
mcelog: Minor changes
Change-Id: I99f8ed0b30c9f8bc6d7b22deb291e30ca0301507
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Change-Id: I99f8ed0b30c9f8bc6d7b22deb291e30ca0301507
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
mcelog: Free notification metadata
Change-Id: I68f883415a1c5d75cecb748b6c5788b536903333
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Change-Id: I68f883415a1c5d75cecb748b6c5788b536903333
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
mcelog: Dispatch notification on successful connection to mcelog server
Change-Id: Ia5503972c665a2e951a2c5f14847be4c7580a9f3
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Change-Id: Ia5503972c665a2e951a2c5f14847be4c7580a9f3
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
mcelog: Check if location was correctly parsed
Avoid dispatching metrics if location (used as plugin instance) wasn't parsed
correctly. Such thing can occur when there are no machine check exceptions
reported by mcelog server. With csv plugin enabled, it was causing a creation of
unexpected mcelog directory with all files (metrics) filled out with 0's.
Change-Id: Ib01f355a986ee5c6191cd126e1b32ef956ffce1f
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Avoid dispatching metrics if location (used as plugin instance) wasn't parsed
correctly. Such thing can occur when there are no machine check exceptions
reported by mcelog server. With csv plugin enabled, it was causing a creation of
unexpected mcelog directory with all files (metrics) filled out with 0's.
Change-Id: Ib01f355a986ee5c6191cd126e1b32ef956ffce1f
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
mcelog: Increase delay between socket reinitialization
Change delay between subsequent socket reinitialization attempts from 1000 usec
to 1000 ms. Such frequent attempts were affecting collectd functionality and
flooded the syslog. Issue can be eaisly reproduced by stopping mcelog service
while collectd with mcelog plugin enabled is running.
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Change delay between subsequent socket reinitialization attempts from 1000 usec
to 1000 ms. Such frequent attempts were affecting collectd functionality and
flooded the syslog. Issue can be eaisly reproduced by stopping mcelog service
while collectd with mcelog plugin enabled is running.
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Merge pull request #2141 from piotr1212/link_unixsock_with_cmds
unixsock.so: undefined symbol: handle_getthreshold -> link unixsock against libcmds
unixsock.so: undefined symbol: handle_getthreshold -> link unixsock against libcmds
link unixsock against libcmds
unixsock_la_LIBS is not being processed by automake and thus being
incorrectly linked. This results in an symbol error when loading
the module. Changing to unixsock_la_LIBADD fixes this.
unixsock_la_LIBS is not being processed by automake and thus being
incorrectly linked. This results in an symbol error when loading
the module. Changing to unixsock_la_LIBADD fixes this.
Merge branch 'collectd-5.7'
Merge branch 'collectd-5.6' into collectd-5.7
collectd.spec: ensure write_riemann build deps are installed
collectd.spec: fixes to previous commit
collectd.spec: re-enable write_riemann on EL7, as build dep is now available in EPEL7
Merge branch 'collectd-5.6' into collectd-5.7
chrony: add missing build flag
The chrony plugin uses the `pow()` math function so it needs to be built with `-lm`. Otherwise collectd crashes with `symbol lookup error: /usr/lib/collectd/chrony.so: undefined symbol: pow`.
The chrony plugin uses the `pow()` math function so it needs to be built with `-lm`. Otherwise collectd crashes with `symbol lookup error: /usr/lib/collectd/chrony.so: undefined symbol: pow`.
curl_json: use configured interval as default timeout value
When no timeout is specified, the default timeout should be set to the
configured interval, not the default timeout (which is -1, no timeout).
This bug got introduced in bce14a848.
When no timeout is specified, the default timeout should be set to the
configured interval, not the default timeout (which is -1, no timeout).
This bug got introduced in bce14a848.
Merge pull request #2130 from maryamtahhan/issue_ovs_events_2127
ovs_events: fix #2127
ovs_events: fix #2127
ovs_events: fix #2127
- Fixed FreeBSD compilation issue
- Fixed CLANG warnings:
"-Wsign-compare, -Wtautological-compare"
Change-Id: I7a58271c34120e2782e43d4245abefebae2601ca
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Fixed FreeBSD compilation issue
- Fixed CLANG warnings:
"-Wsign-compare, -Wtautological-compare"
Change-Id: I7a58271c34120e2782e43d4245abefebae2601ca
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Merge pull request #2095 from maryamtahhan/dpdkstat_utils_rework
dpdkstat plugin rework
dpdkstat plugin rework
Addressing PR comments related with dpdk_utils
Change-Id: I4d6e132e0b5aa940a9c444c141967c8b79d90f0e
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Change-Id: I4d6e132e0b5aa940a9c444c141967c8b79d90f0e
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
PR review comments addressed
Adressed comments raised during PR review. Removed documentation
chapter related with static linking since it was outdated and
there's no single universal solution for all supported DPDK
releases. Static linking of external libraries into plugins
is not supported in collectd.
Change-Id: I35f7decb0fdacaaaad50fa2bf35f7ba6aa96c3f0
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Adressed comments raised during PR review. Removed documentation
chapter related with static linking since it was outdated and
there's no single universal solution for all supported DPDK
releases. Static linking of external libraries into plugins
is not supported in collectd.
Change-Id: I35f7decb0fdacaaaad50fa2bf35f7ba6aa96c3f0
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
dpdkstat plugin rework
This patch contains rework of existing dpdkstat plugin. Changes are focused on
extracting common dpdk related features into utils file that could be reused by
other DPDK plugins. Also some related structural changes are introduced.
List of changes:
- introduction of new utils_dpdk.c that handles child process spawning,
and terminating, messaging between parent and child, DPDK configuration
and initialization and DPDK commands execution
- DPDK EAL specific options put into separate subsection of
dpdkstat configuration
- documentation update
Those changes are preparatory steps for upstreaming dpdkevent plugin
that is going to collect DPDK ports and logical cores status info.
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
This patch contains rework of existing dpdkstat plugin. Changes are focused on
extracting common dpdk related features into utils file that could be reused by
other DPDK plugins. Also some related structural changes are introduced.
List of changes:
- introduction of new utils_dpdk.c that handles child process spawning,
and terminating, messaging between parent and child, DPDK configuration
and initialization and DPDK commands execution
- DPDK EAL specific options put into separate subsection of
dpdkstat configuration
- documentation update
Those changes are preparatory steps for upstreaming dpdkevent plugin
that is going to collect DPDK ports and logical cores status info.
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
ovs_events: fix build failures on Jessie
src/utils_ovs.c: In function ‘ovs_db_table_update_cb’:
src/utils_ovs.c:464:15: error: unused variable ‘table_name’ [-Werror=unused-variable]
const char *table_name = NULL;
^~~~~~~~~~
src/utils_ovs.c:463:10: error: unused variable ‘obj_len’ [-Werror=unused-variable]
size_t obj_len = 0;
^~~~~~~
src/utils_ovs.c:462:12: error: unused variable ‘jtable_update’ [-Werror=unused-variable]
yajl_val jtable_update;
^~~~~~~~~~~~~
src/utils_ovs.c: In function ‘ovs_db_reconnect’:
src/utils_ovs.c:713:22: error: unused variable ‘saunix’ [-Werror=unused-variable]
struct sockaddr_un saunix;
^~~~~~
src/utils_ovs.c:710:14: error: unused variable ‘unix_prefix’ [-Werror=unused-variable]
const char unix_prefix[] = "unix:";
^~~~~~~~~~~
src/utils_ovs.c: In function ‘ovs_yajl_gen_val’:
src/utils_ovs.c:373:10: error: ‘yajl_gen_ret’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
return yajl_gen_ret;
^~~~~~~~~~~~
cc1: all warnings being treated as errors
src/utils_ovs.c: In function ‘ovs_db_table_update_cb’:
src/utils_ovs.c:464:15: error: unused variable ‘table_name’ [-Werror=unused-variable]
const char *table_name = NULL;
^~~~~~~~~~
src/utils_ovs.c:463:10: error: unused variable ‘obj_len’ [-Werror=unused-variable]
size_t obj_len = 0;
^~~~~~~
src/utils_ovs.c:462:12: error: unused variable ‘jtable_update’ [-Werror=unused-variable]
yajl_val jtable_update;
^~~~~~~~~~~~~
src/utils_ovs.c: In function ‘ovs_db_reconnect’:
src/utils_ovs.c:713:22: error: unused variable ‘saunix’ [-Werror=unused-variable]
struct sockaddr_un saunix;
^~~~~~
src/utils_ovs.c:710:14: error: unused variable ‘unix_prefix’ [-Werror=unused-variable]
const char unix_prefix[] = "unix:";
^~~~~~~~~~~
src/utils_ovs.c: In function ‘ovs_yajl_gen_val’:
src/utils_ovs.c:373:10: error: ‘yajl_gen_ret’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
return yajl_gen_ret;
^~~~~~~~~~~~
cc1: all warnings being treated as errors
Makefile.am: keep plugins sorted
ovs_events plugin: fix build
collectd.spec: add new ovs_events plugin
Makefile.am: fix indentation
Merge pull request #2097 from YmrDtnJu/zfs_arc
zfs_arc updates for linux
zfs_arc updates for linux
Makefile.am: sort some stuff
ceph plugin: remove unused assignment
ovs_events: append flags to _CPPFLAGS, not _CFLAGS
zfs_arc: Do not log an error if a value cannot be found.
configure.ac: keep plugins sorted
collectd.spec: add new mcelog plugin
Merge pull request #1971 from maryamtahhan/feat_ovs_link
OVS events plugin
OVS events plugin
intel_rdt: check libpqos library version.
Change-Id: I83d42b63873569445d4c6339d7a69761e16ead14
Signed-off-by: Serhiy Pshyk <serhiyx.pshyk@intel.com>
Change-Id: I83d42b63873569445d4c6339d7a69761e16ead14
Signed-off-by: Serhiy Pshyk <serhiyx.pshyk@intel.com>
ovs_events: Fix root Makefile.am
The location of OVS sources in Malefile.am is `src/*` folder now.
Change-Id: Iffe8a439faf531e74e0a752c3fb544369928cfb6
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
The location of OVS sources in Malefile.am is `src/*` folder now.
Change-Id: Iffe8a439faf531e74e0a752c3fb544369928cfb6
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: fix using of plugin_thread_create ()
- the prototype of plugin_thread_create () has been changed in
latest master.
Change-Id: I492942442717c43cd6e6e73478248164b5083894
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- the prototype of plugin_thread_create () has been changed in
latest master.
Change-Id: I492942442717c43cd6e6e73478248164b5083894
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: Fix PR code clean-up comments
- Fix OVS documentation
- Code clean-up
Change-Id: I84fb003aea19f73381192f31935c79b51eaba1c9
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Fix OVS documentation
- Code clean-up
Change-Id: I84fb003aea19f73381192f31935c79b51eaba1c9
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: Fix OvS documentation URL address
Change-Id: I5bd4d7aabaf0ff66edd9c1cd75caf7f37448e00d
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Change-Id: I5bd4d7aabaf0ff66edd9c1cd75caf7f37448e00d
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: PR clean-up
Clean-up OVS events plugin based on PR comments.
Change-Id: Ibd18924dd2a6f936d0ea83ed4eeb3b34ff8416b5
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Clean-up OVS events plugin based on PR comments.
Change-Id: Ibd18924dd2a6f936d0ea83ed4eeb3b34ff8416b5
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: Fix notification metadata garbage.
If some of interface data is not available, the garbage
information may be returned by ovs_events_get_iface_info() function.
Add clean-up interface information structure into the function.
Change-Id: Ia3d2bdfe31d0b3db81ad7ad773eca1df5d5f6f6a
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
If some of interface data is not available, the garbage
information may be returned by ovs_events_get_iface_info() function.
Add clean-up interface information structure into the function.
Change-Id: Ia3d2bdfe31d0b3db81ad7ad773eca1df5d5f6f6a
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: Address PR comments
- Change configuration format to suggested one;
- Fix init/destroy API;
- Fix memory leaks;
- Code-clean-up.
Change-Id: I1ff94271b777c69f3d07a66f43dc10d034e71101
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Change configuration format to suggested one;
- Fix init/destroy API;
- Fix memory leaks;
- Code-clean-up.
Change-Id: I1ff94271b777c69f3d07a66f43dc10d034e71101
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS events: Fix multiple interface config issue
If multiple interfaces are configured, only last one will
be monitored (notifications aren't sent for all others).
Change-Id: Ica918ef0557747d84677db739a64698d3756a675
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
If multiple interfaces are configured, only last one will
be monitored (notifications aren't sent for all others).
Change-Id: Ica918ef0557747d84677db739a64698d3756a675
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS events: Address all PR comments
- Change OVS implementation to use suggested configuration:
OvsDbAddress "127.0.0.1" "6640"
OvsDbAddress "2001:DB8::c011:ec7d" "6640"
OvsDbAddress "2001:DB8::c011:ec7d" "service-name"
OvsDbAddress "unix:/path/to/socket"
- Update documentation;
- Change OVS utils to use getaddrinfo();
- Clean-up compilation warnings on FreeBSD system.
- Add IPv6 support;
Change-Id: I60ca700c15406c783b62ee52135266d67b60393a
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Change OVS implementation to use suggested configuration:
OvsDbAddress "127.0.0.1" "6640"
OvsDbAddress "2001:DB8::c011:ec7d" "6640"
OvsDbAddress "2001:DB8::c011:ec7d" "service-name"
OvsDbAddress "unix:/path/to/socket"
- Update documentation;
- Change OVS utils to use getaddrinfo();
- Clean-up compilation warnings on FreeBSD system.
- Add IPv6 support;
Change-Id: I60ca700c15406c783b62ee52135266d67b60393a
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS events: Fix configure script to detect YAJL tree API
If old YAJL version is installed on a system (ver < 2.0), the OVS plugin
compilation will fail as it requires tree API to be supported in YAJL
library. For this reason, it was decided to change 'configure' script
to detect YAJL tree API also.
Clean-up according updated collectd style:
https://github.com/collectd/collectd/pull/1931
https://github.com/collectd/collectd/issues/1951
Change-Id: I90c82cdc9780ee8c0c9b794986662a39a5ab0011
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
If old YAJL version is installed on a system (ver < 2.0), the OVS plugin
compilation will fail as it requires tree API to be supported in YAJL
library. For this reason, it was decided to change 'configure' script
to detect YAJL tree API also.
Clean-up according updated collectd style:
https://github.com/collectd/collectd/pull/1931
https://github.com/collectd/collectd/issues/1951
Change-Id: I90c82cdc9780ee8c0c9b794986662a39a5ab0011
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS events: Fix 'make distcheck'
Change-Id: I731b633b5f78ed63b643574a336c59717e408a78
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Change-Id: I731b633b5f78ed63b643574a336c59717e408a78
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events plugin: Filter through clang-format.
Disable clang-format for diagram in utils_ovs.c.
Change-Id: Idfb1510c996f5ebbdadc96663eb032537837502a
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Disable clang-format for diagram in utils_ovs.c.
Change-Id: Idfb1510c996f5ebbdadc96663eb032537837502a
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: Fix plugin collectd config file
- Fix Ubuntu compilation warnings.
Change-Id: I7bb72ec0ca732b00c4169e0174d64407d99a2751
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Fix Ubuntu compilation warnings.
Change-Id: I7bb72ec0ca732b00c4169e0174d64407d99a2751
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
ovs_events: Add external ids as metadata
- Interface meta data are added to dispatched
values & notification.
interface metadata:
- UUID (always);
- iface-id (if exists)
- vm-uuid (if exists)
- Fix read callback to poll actual data instead of
reading cache;
- Code clean up;
Change-Id: I291cb190d31ae091c1d47ce0f5e9d439f6958d61
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Interface meta data are added to dispatched
values & notification.
interface metadata:
- UUID (always);
- iface-id (if exists)
- vm-uuid (if exists)
- Fix read callback to poll actual data instead of
reading cache;
- Code clean up;
Change-Id: I291cb190d31ae091c1d47ce0f5e9d439f6958d61
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS link: rename "ovs_link" -> "ovs_events"
- Rename files
Change-Id: Ic662d5d673c1c66b2057e4b35fa3cf664e92825e
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Rename files
Change-Id: Ic662d5d673c1c66b2057e4b35fa3cf664e92825e
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS link: rename plugin to "ovs_events"
Change-Id: Ic50891722074aec017b1329601a3bcbafb030ce0
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Change-Id: Ic50891722074aec017b1329601a3bcbafb030ce0
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS link plugin: Add connection terminate callback
Extend OVS utils to notify OVS plugin about OVS DB
connection lost. If the connection is lost, OVS link plugin
will dispatch notification and print error message. OVS plugin
treats status of all interfaces as UNKNOWN.
Change-Id: I22fe3cb0740e0f4779a5c4f6b92e78f1ad9777a3
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Extend OVS utils to notify OVS plugin about OVS DB
connection lost. If the connection is lost, OVS link plugin
will dispatch notification and print error message. OVS plugin
treats status of all interfaces as UNKNOWN.
Change-Id: I22fe3cb0740e0f4779a5c4f6b92e78f1ad9777a3
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS link plugin: Add read callback
- Implement read callback;
- Add SendNotification option;
- Update plugin documentation;
- Clean-up.
Change-Id: Ie645192498d234d47e1fe0272ec30e7c3d9c1774
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
- Implement read callback;
- Add SendNotification option;
- Update plugin documentation;
- Clean-up.
Change-Id: Ie645192498d234d47e1fe0272ec30e7c3d9c1774
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
OVS link: Implement OVS link plugin
This plugin consists of two parts:
- OVS link
The implementation of the plugin itself, which uses
OVS utils API to be able to monitor a link status of
OVS connected interfaces and dispatch the values
through collectd notification mechanism whenever
the link state change occurs.
- OVS utils
This module implements the OVS DB communication routine
specified by RFC7047. It includes:
- Connecting/disconnecting to/from OVS DB (via TCP/UNIX);
- Mechanism to subscribe to OVS DB table events like
init/insert/modify/delete table rows;
- API to send custom request and receive result;
- Recovery connection mechanism with OVS DB;
- Handling of ECHO request to verify the liveness
of a database connection;
- Helpers functions.
Change-Id: Icac392bd1bd40f7dd156bfd2fc4ff08d9725a22f
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
This plugin consists of two parts:
- OVS link
The implementation of the plugin itself, which uses
OVS utils API to be able to monitor a link status of
OVS connected interfaces and dispatch the values
through collectd notification mechanism whenever
the link state change occurs.
- OVS utils
This module implements the OVS DB communication routine
specified by RFC7047. It includes:
- Connecting/disconnecting to/from OVS DB (via TCP/UNIX);
- Mechanism to subscribe to OVS DB table events like
init/insert/modify/delete table rows;
- API to send custom request and receive result;
- Recovery connection mechanism with OVS DB;
- Handling of ECHO request to verify the liveness
of a database connection;
- Helpers functions.
Change-Id: Icac392bd1bd40f7dd156bfd2fc4ff08d9725a22f
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
Merge pull request #2003 from maryamtahhan/feat_ras
mcelog plugin
mcelog plugin
post rebase issues fixed
Change-Id: I42b4b392da942808d29b73a13cd5e0bbcef9b6b8
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Change-Id: I42b4b392da942808d29b73a13cd5e0bbcef9b6b8
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
workaround for zero initializer false warning
Change-Id: I77a8ca1d5854ebda8533483cdd5ea08c3c07a059
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Change-Id: I77a8ca1d5854ebda8533483cdd5ea08c3c07a059
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
PR comments addressed
Change-Id: I0ddfd6dcd911ab46fcbc032081a2980b1f1f549b
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Change-Id: I0ddfd6dcd911ab46fcbc032081a2980b1f1f549b
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
fixed rebase conflicts
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
dpdkstat plugin: jump to the right label
virt plugin: fix a few build warnings
src/virt.c:939:13: warning: initializing 'char *' with an expression of type 'const char [34]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
char *bd_xmlpath = "/domain/devices/disk/target[@dev]";
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/virt.c:941:20: warning: assigning to 'char *' from 'const char [34]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
bd_xmlpath = "/domain/devices/disk/source[@dev]";
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/virt.c:939:13: warning: initializing 'char *' with an expression of type 'const char [34]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
char *bd_xmlpath = "/domain/devices/disk/target[@dev]";
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/virt.c:941:20: warning: assigning to 'char *' from 'const char [34]' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
bd_xmlpath = "/domain/devices/disk/source[@dev]";
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Merge branch 'collectd-5.7'
Merge branch 'collectd-5.6' into collectd-5.7
src/daemon/common.c: Change swrite() to return errno if possible.
Merge pull request #2121 from octo/netapp
netapp plugin: Fix complation problems.
netapp plugin: Fix complation problems.
Merge remote-tracking branch 'github/pr/2059'
Merge pull request #2085 from rubenk/non-recursive-make
Switch to non-recursive make
Switch to non-recursive make
Switch to non-recursive make
Recursive make caused various dependency issues, mainly with linked
libraries or objects from other directories. Switch to a single Makefile
to solve this. An addded benefit is that this should speed up the build.
It also opens up the possibility to improve on our directory layout.
Recursive make caused various dependency issues, mainly with linked
libraries or objects from other directories. Switch to a single Makefile
to solve this. An addded benefit is that this should speed up the build.
It also opens up the possibility to improve on our directory layout.
netapp plugin: Fix compilation problems.
Fixes: #2120
Fixes: #2120
Auto-Merge pull request #2113 from rubenk/dpdk-double-close
Automatically merged due to "Automerge" label
Automatically merged due to "Automerge" label
Merge pull request #2114 from mfournier/dpdkstat-formatstring
dpdkstat: use portable format strings
dpdkstat: use portable format strings
dpdkstat: use portable format strings
Merge pull request #2112 from rubenk/battery-plugin-nul-terminate-buffer
Battery plugin: nul-terminate buffer
Battery plugin: nul-terminate buffer
Merge branch 'collectd-5.7'
dpdkstat: don't close already closed fd on failure
CID #158525
CID #158525
battery plugin: null-terminate buffer
We call strstripnewline on it, which expects a null-terminated string.
CID #158524
We call strstripnewline on it, which expects a null-terminated string.
CID #158524
Fix parallel build
Fixes #2110
Fixes #2110
Auto-Merge pull request #2053 from nuclearcat/master
Automatically merged due to "Automerge" label
Automatically merged due to "Automerge" label
Suggestions
More appropriate metric
Removing double reference
Adding support of drops value monitoring
Auto-Merge pull request #2111 from octo/cid/157643
Automatically merged due to "Automerge" label
Automatically merged due to "Automerge" label
src/utils_cmd_getthreshold.c: Fix formatting.
set target: Avoid casting negative int to size_t.
CID: 157643
CID: 157643
Auto-Merge pull request #2099 from tokkee/sh/booleans
Automatically merged due to "Automerge" label
Automatically merged due to "Automerge" label
update README to mention write_prometheus & support lib
Auto-Merge pull request #2096 from rubenk/target-set-plug-leak
Automatically merged due to "Automerge" label
Automatically merged due to "Automerge" label
Auto-Merge pull request #2092 from rubenk/prometheus-plug-leak
Automatically merged due to "Automerge" label
Automatically merged due to "Automerge" label
Merge pull request #2100 from mojaves/pr-virt-disconnect-on-inst0
virt plugin: handle disconnect on inst#0
virt plugin: handle disconnect on inst#0
virt plugin: Use lv_disconnect on shutdown
Avoiding duplication of the code and let's use
the new lv_disconnect() helper in the lv_shutdown() callback.
Signed-off-by: Francesco Romani <fromani@redhat.com>
Avoiding duplication of the code and let's use
the new lv_disconnect() helper in the lv_shutdown() callback.
Signed-off-by: Francesco Romani <fromani@redhat.com>
virt plugin: handle disconnect on inst#0
Only one virt reader instance should take care of connection
handling (connection/disconnection) to avoid races and plugin
data corruption, potentially crashing collectd.
This bug cannot be triggered with instances=1 (default settings).
Signed-off-by: Francesco Romani <fromani@redhat.com>
Only one virt reader instance should take care of connection
handling (connection/disconnection) to avoid races and plugin
data corruption, potentially crashing collectd.
This bug cannot be triggered with instances=1 (default settings).
Signed-off-by: Francesco Romani <fromani@redhat.com>
Merge pull request #2101 from mojaves/pr-virt-open-on-init
virt plugin: Open connection on init()
virt plugin: Open connection on init()
virt plugin: fail init with no libvirt connection
Even though we handle disconnection and reconnection
in the read() callback, we expect the libvirt connection
to be available most of the time, including the init()
stage.
Thus, let's fail init() if the connection is not available.
Signed-off-by: Francesco Romani <fromani@redhat.com>
Even though we handle disconnection and reconnection
in the read() callback, we expect the libvirt connection
to be available most of the time, including the init()
stage.
Thus, let's fail init() if the connection is not available.
Signed-off-by: Francesco Romani <fromani@redhat.com>
virt plugin: Open connection on init()
If we use more than one reader instance, we can spot errors like
this in the system logs:
Dec 12 09:59:24 $HOST collectd[19338]: reading number of
domains: invalid connection pointer in virConnectNumOfDomains
Dec 12 09:59:24 benji.rokugan.lan collectd[19338]: read-function of
plugin `virt-2' failed. Will suspend it for 20.000 seconds.
This causes unnecessary delay in the sampling of libvirt.
The reason for this is just one instance (always #0) takes care
of establishing the libvirt connection.
But this could be done safely in the plugin init callback: according
to doc, this function is called at least once before all the read
instances.
Signed-off-by: Francesco Romani <fromani@redhat.com>
If we use more than one reader instance, we can spot errors like
this in the system logs:
Dec 12 09:59:24 $HOST collectd[19338]: reading number of
domains: invalid connection pointer in virConnectNumOfDomains
Dec 12 09:59:24 benji.rokugan.lan collectd[19338]: read-function of
plugin `virt-2' failed. Will suspend it for 20.000 seconds.
This causes unnecessary delay in the sampling of libvirt.
The reason for this is just one instance (always #0) takes care
of establishing the libvirt connection.
But this could be done safely in the plugin init callback: according
to doc, this function is called at least once before all the read
instances.
Signed-off-by: Francesco Romani <fromani@redhat.com>