diff options
author | Vladimir Kobal <vlad@prokk.net> | 2019-12-12 21:41:11 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-12-12 21:41:11 +0200 |
commit | 6f270819121afb743d783f9a72786e367d1048a3 (patch) | |
tree | 6e17d6764e5c6d72bb53bbfcc35cecce4b18d325 /daemon | |
parent | 7278d5bcd987fb9646da4a8a837173bae3b68459 (diff) |
Implement the main flow for the Exporting Engine (#7149)
* Add top level tests
* Add a skeleton for preparing buffers
* Initialize graphite instance
* Prepare buffers for all instances
* Add Grafite collected value formatter
* Add support for exporting.conf read and parsing
* - Use new exporting_config instead of netdata_config
* Implement Grafite worker
* Disable exporting engine compilation if libuv is not available
* Add mutex locks
- Configure connectors as connector_<type> in sections of exporting.conf
- Change exporting_select_type to check for connector_ fields
* - Override exporting_config structure if there no exporting.conf so that
look ups don't fail and we maintain backwards compatibility
* Separate fixtures in unit tests
* Test exporting_discard_responce
* Test response receiving
* Test buffer sending
* Test simple connector worker
- Instance section has the format connector:instance_name
e.g graphite:my_graphite_instance
- Connectors with : in their name e.g graphite:plaintext are reserved
So graphite:plaintext is not accepted because it would activate an
instance with name "plaintext"
It should be graphite:plaintext:instance_name
* - Enable the add_connector_instance to cleanup the internal structure
by passing NULL,not NULL arguments
* Implement configurable update interval
- Add additional check to verify instance uniqueness across connectors
* Add host and chart filters
* Add the value calculation over a database series
* Add the calculated over stored data graphite connector
* Add tests for graphite connector
* Add JSON connector
* Add tests for JSON formatting functions
* Add OpenTSDB connector
* Add tests for the OpenTSDB connector
* Add temporaty notes to the documentation
Diffstat (limited to 'daemon')
-rw-r--r-- | daemon/common.h | 1 | ||||
-rw-r--r-- | daemon/main.c | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/daemon/common.h b/daemon/common.h index df36a49d4e..c04c8ad04f 100644 --- a/daemon/common.h +++ b/daemon/common.h @@ -27,7 +27,6 @@ #define config_generate(buffer, only_changed) appconfig_generate(&netdata_config, buffer, only_changed) - // ---------------------------------------------------------------------------- // netdata include files diff --git a/daemon/main.c b/daemon/main.c index ee2a437fd0..f8c6d84d45 100644 --- a/daemon/main.c +++ b/daemon/main.c @@ -75,6 +75,9 @@ struct netdata_static_thread static_threads[] = { // common plugins for all systems {"BACKENDS", NULL, NULL, 1, NULL, NULL, backends_main}, +#ifdef ENABLE_EXPORTING + {"EXPORTING", NULL, NULL, 1, NULL, NULL, exporting_main}, +#endif {"WEB_SERVER[static1]", NULL, NULL, 0, NULL, NULL, socket_listen_main_static_threaded}, {"STREAM", NULL, NULL, 0, NULL, NULL, rrdpush_sender_thread}, @@ -1105,6 +1108,7 @@ int main(int argc, char **argv) { if(!config_loaded) load_netdata_conf(NULL, 0); + // ------------------------------------------------------------------------ // initialize netdata { |