summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/CODEOWNERS5
-rw-r--r--.github/labeler.yml4
-rw-r--r--CMakeLists.txt73
-rw-r--r--Makefile.am58
-rw-r--r--backends/Makefile.am22
-rw-r--r--backends/README.md236
-rw-r--r--backends/TIMESCALE.md57
-rw-r--r--backends/WALKTHROUGH.md258
-rw-r--r--backends/aws_kinesis/Makefile.am12
-rw-r--r--backends/aws_kinesis/README.md53
-rw-r--r--backends/aws_kinesis/aws_kinesis.c94
-rw-r--r--backends/aws_kinesis/aws_kinesis.conf10
-rw-r--r--backends/aws_kinesis/aws_kinesis.h14
-rw-r--r--backends/aws_kinesis/aws_kinesis_put_record.cc87
-rw-r--r--backends/aws_kinesis/aws_kinesis_put_record.h25
-rw-r--r--backends/backends.c1251
-rw-r--r--backends/backends.h98
-rw-r--r--backends/graphite/Makefile.am4
-rw-r--r--backends/graphite/graphite.c90
-rw-r--r--backends/graphite/graphite.h35
-rw-r--r--backends/json/Makefile.am4
-rw-r--r--backends/json/json.c152
-rw-r--r--backends/json/json.h34
-rw-r--r--backends/mongodb/Makefile.am8
-rw-r--r--backends/mongodb/README.md41
-rw-r--r--backends/mongodb/mongodb.c189
-rw-r--r--backends/mongodb/mongodb.conf12
-rw-r--r--backends/mongodb/mongodb.h16
-rwxr-xr-xbackends/nc-backend.sh158
-rw-r--r--backends/opentsdb/Makefile.am4
-rw-r--r--backends/opentsdb/README.md37
-rw-r--r--backends/opentsdb/opentsdb.c205
-rw-r--r--backends/opentsdb/opentsdb.h58
-rw-r--r--backends/prometheus/Makefile.am12
-rw-r--r--backends/prometheus/README.md457
-rw-r--r--backends/prometheus/backend_prometheus.c797
-rw-r--r--backends/prometheus/backend_prometheus.h37
-rw-r--r--backends/prometheus/remote_write/Makefile.am14
-rw-r--r--backends/prometheus/remote_write/README.md41
-rw-r--r--backends/prometheus/remote_write/remote_write.cc120
-rw-r--r--backends/prometheus/remote_write/remote_write.h30
-rw-r--r--backends/prometheus/remote_write/remote_write.proto29
-rw-r--r--build_external/scenarios/aclk-testing/agent_netdata.conf15
-rw-r--r--collectors/README.md8
-rw-r--r--collectors/plugins.d/README.md4
-rw-r--r--collectors/python.d.plugin/beanstalk/beanstalk.conf2
-rw-r--r--collectors/python.d.plugin/httpcheck/httpcheck.conf2
-rw-r--r--collectors/python.d.plugin/portcheck/portcheck.conf2
-rw-r--r--configure.ac94
-rwxr-xr-xcoverity-scan.sh6
-rw-r--r--daemon/common.h4
-rw-r--r--daemon/config/README.md11
-rw-r--r--daemon/main.c3
-rw-r--r--daemon/static_threads.c9
-rw-r--r--daemon/unit_test.c2
-rw-r--r--database/rrd.h12
-rw-r--r--database/rrdhost.c48
-rw-r--r--database/rrdset.c4
-rw-r--r--docs/export/external-databases.md1
-rw-r--r--docs/guides/using-host-labels.md2
-rw-r--r--exporting/README.md12
-rw-r--r--exporting/TIMESCALE.md2
-rw-r--r--exporting/aws_kinesis/aws_kinesis.c4
-rw-r--r--exporting/check_filters.c14
-rw-r--r--exporting/exporting_engine.h9
-rw-r--r--exporting/mongodb/mongodb.c2
-rwxr-xr-xexporting/nc-exporting.sh44
-rw-r--r--exporting/process_data.c4
-rw-r--r--exporting/prometheus/prometheus.c6
-rw-r--r--exporting/prometheus/remote_write/remote_write.c2
-rw-r--r--exporting/pubsub/pubsub.c2
-rw-r--r--exporting/read_config.c39
-rw-r--r--exporting/send_data.c2
-rw-r--r--exporting/tests/test_exporting_engine.c9
-rw-r--r--health/Makefile.am1
-rw-r--r--health/health.d/backend.conf42
-rw-r--r--libnetdata/buffer/README.md3
-rw-r--r--libnetdata/config/appconfig.c7
-rw-r--r--libnetdata/config/appconfig.h1
-rw-r--r--libnetdata/log/log.h2
-rwxr-xr-xnetdata-installer.sh35
-rw-r--r--packaging/installer/methods/freebsd.md11
-rw-r--r--streaming/README.md20
-rw-r--r--tests/exporting/prometheus-avg-oldunits.txt (renamed from tests/backends/prometheus-avg-oldunits.txt)0
-rw-r--r--tests/exporting/prometheus-avg.txt (renamed from tests/backends/prometheus-avg.txt)0
-rw-r--r--tests/exporting/prometheus-raw.txt (renamed from tests/backends/prometheus-raw.txt)0
-rwxr-xr-xtests/exporting/prometheus.bats (renamed from tests/backends/prometheus.bats)8
-rw-r--r--web/api/exporters/allmetrics.c8
88 files changed, 211 insertions, 5248 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 9a8dc05d26..389da1dbed 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -8,11 +8,6 @@
.travis/ @Ferroin @iigorkarpov @maneamarius @kaskavel
.github/ @Ferroin @iigorkarpov @maneamarius @kaskavel
aclk/ @stelfrag @underhood
-backends/ @thiagoftsm @vlvkobal
-backends/graphite/ @thiagoftsm @vlvkobal
-backends/json/ @thiagoftsm @vlvkobal
-backends/opentsdb/ @thiagoftsm @vlvkobal
-backends/prometheus/ @vlvkobal @thiagoftsm
build/ @Ferroin @iigorkarpov @maneamarius
contrib/debian @Ferroin @iigorkarpov @maneamarius
collectors/ @vlvkobal
diff --git a/.github/labeler.yml b/.github/labeler.yml
index 5ad4cf595c..950e94834b 100644
--- a/.github/labeler.yml
+++ b/.github/labeler.yml
@@ -15,10 +15,6 @@ ACLK:
- aclk/**/*
- mqtt_websockets
-area/backends:
- - backends/*
- - backends/**/*
-
area/claim:
- claim/*
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f8705f2ed8..a10801cc5e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -745,19 +745,6 @@ set(STREAMING_PLUGIN_FILES
streaming/sender.c
)
-set(BACKENDS_PLUGIN_FILES
- backends/backends.c
- backends/backends.h
- backends/graphite/graphite.c
- backends/graphite/graphite.h
- backends/json/json.c
- backends/json/json.h
- backends/opentsdb/opentsdb.c
- backends/opentsdb/opentsdb.h
- backends/prometheus/backend_prometheus.c
- backends/prometheus/backend_prometheus.h
- )
-
set(CLAIM_PLUGIN_FILES
claim/claim.c
claim/claim.h
@@ -884,23 +871,6 @@ set(MONGODB_EXPORTING_FILES
exporting/mongodb/mongodb.h
)
-set(KINESIS_BACKEND_FILES
- backends/aws_kinesis/aws_kinesis.c
- backends/aws_kinesis/aws_kinesis.h
- backends/aws_kinesis/aws_kinesis_put_record.cc
- backends/aws_kinesis/aws_kinesis_put_record.h
- )
-
-set(PROMETHEUS_REMOTE_WRITE_BACKEND_FILES
- backends/prometheus/remote_write/remote_write.cc
- backends/prometheus/remote_write/remote_write.h
- )
-
-set(MONGODB_BACKEND_FILES
- backends/mongodb/mongodb.c
- backends/mongodb/mongodb.h
- )
-
set(DAEMON_FILES
daemon/buildinfo.c
daemon/buildinfo.h
@@ -960,7 +930,6 @@ set(NETDATA_FILES
collectors/all.h
${DAEMON_FILES}
${API_PLUGIN_FILES}
- ${BACKENDS_PLUGIN_FILES}
${EXPORTING_ENGINE_FILES}
${CHECKS_PLUGIN_FILES}
${HEALTH_PLUGIN_FILES}
@@ -997,25 +966,25 @@ add_definitions(
)
# -----------------------------------------------------------------------------
-# kinesis backend
+# kinesis exporting connector
IF(KINESIS_LIBRARIES AND AWS_CORE_LIBRARIES AND HAVE_AWS_EVENT_STREAM AND HAVE_AWS_COMMON AND HAVE_AWS_CHECKSUMS AND
CRYPTO_LIBRARIES AND SSL_LIBRARIES AND CURL_LIBRARIES)
- SET(ENABLE_BACKEND_KINESIS True)
+ SET(ENABLE_EXPORTING_KINESIS True)
ELSE()
- SET(ENABLE_BACKEND_KINESIS False)
+ SET(ENABLE_EXPORTING_KINESIS False)
ENDIF()
-IF(ENABLE_BACKEND_KINESIS)
- message(STATUS "kinesis backend: enabled")
- list(APPEND NETDATA_FILES ${KINESIS_BACKEND_FILES} ${KINESIS_EXPORTING_FILES})
+IF(ENABLE_EXPORTING_KINESIS)
+ message(STATUS "kinesis exporting: enabled")
+ list(APPEND NETDATA_FILES ${KINESIS_EXPORTING_FILES})
list(APPEND NETDATA_COMMON_LIBRARIES ${KINESIS_LIBRARIES} ${AWS_CORE_LIBRARIES}
${CRYPTO_LIBRARIES} ${SSL_LIBRARIES} ${CURL_LIBRARIES})
list(APPEND NETDATA_COMMON_INCLUDE_DIRS ${KINESIS_INCLUDE_DIRS} ${AWS_CORE_INCLUDE_DIRS}
${CRYPTO_INCLUDE_DIRS} ${SSL_INCLUDE_DIRS} ${CURL_INCLUDE_DIRS})
list(APPEND NETDATA_COMMON_CFLAGS ${CRYPTO_CFLAGS_OTHER} ${SSL_CFLAGS_OTHER} ${CURL_CFLAGS_OTHER})
ELSE()
- message(STATUS "kinesis backend: disabled (requires AWS SDK for C++)")
+ message(STATUS "kinesis exporting: disabled (requires AWS SDK for C++)")
ENDIF()
# -----------------------------------------------------------------------------
@@ -1038,16 +1007,16 @@ ELSE()
ENDIF()
# -----------------------------------------------------------------------------
-# prometheus remote write backend
+# prometheus remote write exporting connector
IF(PROTOBUF_LIBRARIES AND SNAPPY_LIBRARIES)
- SET(ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE True)
+ SET(ENABLE_EXPORTING_PROMETHEUS_REMOTE_WRITE True)
ELSE()
- SET(ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE False)
+ SET(ENABLE_EXPORTING_PROMETHEUS_REMOTE_WRITE False)
ENDIF()
-IF(ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE)
- message(STATUS "prometheus remote write backend: enabled")
+IF(ENABLE_EXPORTING_PROMETHEUS_REMOTE_WRITE)
+ message(STATUS "prometheus remote write exporting: enabled")
find_package(Protobuf REQUIRED)
@@ -1083,26 +1052,26 @@ IF(ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE)
protobuf_remote_write_generate_cpp(PROTO_SRCS PROTO_HDRS exporting/prometheus/remote_write/remote_write.proto)
- list(APPEND NETDATA_FILES ${PROMETHEUS_REMOTE_WRITE_BACKEND_FILES} ${PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES} ${PROTO_SRCS} ${PROTO_HDRS})
+ list(APPEND NETDATA_FILES ${PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES} ${PROTO_SRCS} ${PROTO_HDRS})
list(APPEND NETDATA_COMMON_LIBRARIES ${PROTOBUF_LIBRARIES} ${SNAPPY_LIBRARIES})
list(APPEND NETDATA_COMMON_INCLUDE_DIRS ${PROTOBUF_INCLUDE_DIRS} ${SNAPPY_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR})
list(APPEND NETDATA_COMMON_CFLAGS ${PROTOBUF_CFLAGS_OTHER} ${SNAPPY_CFLAGS_OTHER})
ELSE()
- message(STATUS "prometheus remote write backend: disabled (requires protobuf and snappy libraries)")
+ message(STATUS "prometheus remote write exporting: disabled (requires protobuf and snappy libraries)")
ENDIF()
# -----------------------------------------------------------------------------
-# mongodb backend
+# mongodb exporting connector
IF(MONGOC_LIBRARIES)
- message(STATUS "mongodb backend: enabled")
+ message(STATUS "mongodb exporting: enabled")
- list(APPEND NETDATA_FILES ${MONGODB_BACKEND_FILES} ${MONGODB_EXPORTING_FILES})
+ list(APPEND NETDATA_FILES ${MONGODB_EXPORTING_FILES})
list(APPEND NETDATA_COMMON_LIBRARIES ${MONGOC_LIBRARIES})
list(APPEND NETDATA_COMMON_INCLUDE_DIRS ${MONGOC_INCLUDE_DIRS})
list(APPEND NETDATA_COMMON_CFLAGS ${MONGOC_CFLAGS_OTHER})
ELSE()
- message(STATUS "mongodb backend: disabled (requires mongoc library)")
+ message(STATUS "mongodb exporting: disabled (requires mongoc library)")
ENDIF()
set(NETDATA_COMMON_LIBRARIES ${NETDATA_COMMON_LIBRARIES} m ${CMAKE_THREAD_LIBS_INIT})
@@ -1223,7 +1192,7 @@ ELSEIF(MACOS)
ENDIF()
-IF(ENABLE_BACKEND_KINESIS OR ENABLE_EXPORTING_PUBSUB OR ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE)
+IF(ENABLE_EXPORTING_KINESIS OR ENABLE_EXPORTING_PUBSUB OR ENABLE_EXPORTING_PROMETHEUS_REMOTE_WRITE)
set_property(TARGET netdata PROPERTY CXX_STANDARD 11)
set_property(TARGET netdata PROPERTY CMAKE_CXX_STANDARD_REQUIRED ON)
ENDIF()
@@ -1397,7 +1366,7 @@ if(BUILD_TESTING)
set(KINESIS_LINK_OPTIONS)
set(PUBSUB_LINK_OPTIONS)
set(MONGODB_LINK_OPTIONS)
-if(ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE)
+if(ENABLE_EXPORTING_PROMETHEUS_REMOTE_WRITE)
list(APPEND EXPORTING_ENGINE_FILES ${PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES} ${PROTO_SRCS} ${PROTO_HDRS})
list(
APPEND PROMETHEUS_REMOTE_WRITE_LINK_OPTIONS
@@ -1407,7 +1376,7 @@ if(ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE)
-Wl,--wrap=add_metric
)
endif()
-if(ENABLE_BACKEND_KINESIS)
+if(ENABLE_EXPORTING_KINESIS)
list(APPEND EXPORTING_ENGINE_FILES ${KINESIS_EXPORTING_FILES})
list(
APPEND KINESIS_LINK_OPTIONS
diff --git a/Makefile.am b/Makefile.am
index c3160bf78d..808b7015d5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -99,7 +99,6 @@ dist_noinst_SCRIPTS = \
# Compile netdata binaries
SUBDIRS += \
- backends \
collectors \
daemon \
database \
@@ -580,19 +579,6 @@ WEB_PLUGIN_FILES = \
web/server/static/static-threaded.h \
$(NULL)
-BACKENDS_PLUGIN_FILES = \
- backends/backends.c \
- backends/backends.h \
- backends/graphite/graphite.c \
- backends/graphite/graphite.h \
- backends/json/json.c \
- backends/json/json.h \
- backends/opentsdb/opentsdb.c \
- backends/opentsdb/opentsdb.h \
- backends/prometheus/backend_prometheus.c \
- backends/prometheus/backend_prometheus.h \
- $(NULL)
-
CLAIM_FILES = \
claim/claim.c \
claim/claim.h \
@@ -831,23 +817,6 @@ MONGODB_EXPORTING_FILES = \
exporting/mongodb/mongodb.h \
$(NULL)
-KINESIS_BACKEND_FILES = \
- backends/aws_kinesis/aws_kinesis.c \
- backends/aws_kinesis/aws_kinesis.h \
- backends/aws_kinesis/aws_kinesis_put_record.cc \
- backends/aws_kinesis/aws_kinesis_put_record.h \
- $(NULL)
-
-PROMETHEUS_REMOTE_WRITE_BACKEND_FILES = \
- backends/prometheus/remote_write/remote_write.cc \
- backends/prometheus/remote_write/remote_write.h \
- $(NULL)
-
-MONGODB_BACKEND_FILES = \
- backends/mongodb/mongodb.c \
- backends/mongodb/mongodb.h \
- $(NULL)
-
DAEMON_FILES = \
daemon/buildinfo.c \
daemon/buildinfo.h \
@@ -877,7 +846,6 @@ NETDATA_FILES = \
$(DAEMON_FILES) \
$(LIBNETDATA_FILES) \
$(API_PLUGIN_FILES) \
- $(BACKENDS_PLUGIN_FILES) \
$(EXPORTING_ENGINE_FILES) \
$(CHECKS_PLUGIN_FILES) \
$(HEALTH_PLUGIN_FILES) \
@@ -1065,8 +1033,8 @@ if ENABLE_PLUGIN_SLABINFO
$(NULL)
endif
-if ENABLE_BACKEND_KINESIS
- netdata_SOURCES += $(KINESIS_BACKEND_FILES) $(KINESIS_EXPORTING_FILES)
+if ENABLE_EXPORTING_KINESIS
+ netdata_SOURCES += $(KINESIS_EXPORTING_FILES)
netdata_LDADD += $(OPTIONAL_KINESIS_LIBS)
endif
@@ -1075,17 +1043,17 @@ if ENABLE_EXPORTING_PUBSUB
netdata_LDADD += $(OPTIONAL_PUBSUB_LIBS)
endif
-if ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE
- netdata_SOURCES += $(PROMETHEUS_REMOTE_WRITE_BACKEND_FILES) $(PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES)
+if ENABLE_EXPORTING_PROMETHEUS_REMOTE_WRITE
+ netdata_SOURCES += $(PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES)
netdata_LDADD += $(OPTIONAL_PROMETHEUS_REMOTE_WRITE_LIBS) \
$(OPTIONAL_PROTOBUF_LIBS) \
$(NULL)
- BACKEND_PROMETHEUS_BUILT_SOURCES = \
+ EXPORTING_PROMETHEUS_BUILT_SOURCES = \
exporting/prometheus/remote_write/remote_write.pb.cc \
exporting/prometheus/remote_write/remote_write.pb.h \
$(NULL)
- BUILT_SOURCES += $(BACKEND_PROMETHEUS_BUILT_SOURCES)
- nodist_netdata_SOURCES += $(BACKEND_PROMETHEUS_BUILT_SOURCES)
+ BUILT_SOURCES += $(EXPORTING_PROMETHEUS_BUILT_SOURCES)
+ nodist_netdata_SOURCES += $(EXPORTING_PROMETHEUS_BUILT_SOURCES)
exporting/prometheus/remote_write/remote_write.pb.cc \
exporting/prometheus/remote_write/remote_write.pb.h: exporting/prometheus/remote_write/remote_write.proto
@@ -1093,8 +1061,8 @@ exporting/prometheus/remote_write/remote_write.pb.h: exporting/prometheus/remote
endif
-if ENABLE_BACKEND_MONGODB
- netdata_SOURCES += $(MONGODB_BACKEND_FILES) $(MONGODB_EXPORTING_FILES)
+if ENABLE_EXPORTING_MONGODB
+ netdata_SOURCES += $(MONGODB_EXPORTING_FILES)
netdata_LDADD += $(OPTIONAL_MONGOC_LIBS)
endif
@@ -1217,7 +1185,7 @@ if ENABLE_UNITTESTS
$(TEST_LDFLAGS) \
$(NULL)
exporting_tests_exporting_engine_testdriver_LDADD = $(NETDATA_COMMON_LIBS) $(TEST_LIBS)
-if ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE
+if ENABLE_EXPORTING_PROMETHEUS_REMOTE_WRITE
exporting_tests_exporting_engine_testdriver_SOURCES += $(PROMETHEUS_REMOTE_WRITE_EXPORTING_FILES)
exporting_tests_exporting_engine_testdriver_LDADD += \
$(OPTIONAL_PROMETHEUS_REMOTE_WRITE_LIBS) \
@@ -1229,9 +1197,9 @@ if ENABLE_BACKEND_PROMETHEUS_REMOTE_WRITE
-Wl,--wrap=add_label \
-Wl,--wrap=add_metric \
$(NULL)
- nodist_exporting_tests_exporting_engine_testdriver_SOURCES = $(BACKEND_PROMETHEUS_BUILT_SOURCES)
+ nodist_exporting_tests_exporting_engine_testdriver_SOURCES = $(EXPORTING_PROMETHEUS_BUILT_SOURCES)
endif
-if ENABLE_BACKEND_KINESIS
+if ENABLE_EXPORTING_KINESIS