Hello,
I'm using netdata to collect default and custom metrics from my system and applications, and I would like to send metrics over to ElasticSearch.
Right now I am just trying to get the metrics from netdata and visualize them in a file locally, before sending them to elasticsearch.
I have followed this guide, with some tweaks as I'm working in a Nvidia Jetson device running Ubuntu (L4T): https://www.syslog-ng.com/community/b/blog/posts/sending-netdata-metrics-syslog-ng-elasticsearch.
Right now I can't see any of the netdata metrics being logged unfortunately, and I can't find out what I'm doing wrong.
My netdata config file:
# netdata configuration
#
# You can download the latest version of this file, using:
#
# wget -O /etc/netdata/netdata.conf http://localhost:19999/netdata.conf
# or
# curl -o /etc/netdata/netdata.conf http://localhost:19999/netdata.conf
#
# You can uncomment and change any of the options below.
# The value shown in the commented settings, is the default value.
#
# global netdata configuration
[global]
# run as user = netdata
# glibc malloc arena max for plugins = 1
# glibc malloc arena max for netdata = 1
# hostname = dlk00109
# history = 3996
# update every = 1
# config directory = /etc/netdata
# stock config directory = /usr/lib/netdata/conf.d
# log directory = /var/log/netdata
# web files directory = /usr/share/netdata/web
# cache directory = /var/cache/netdata
# lib directory = /var/lib/netdata
# home directory = /var/lib/netdata
# lock directory = /var/lib/netdata/lock
# plugins directory = "/usr/libexec/netdata/plugins.d" "/etc/netdata/custom-plugins.d"
# memory mode = dbengine
# page cache size = 32
# dbengine disk space = 256
# dbengine multihost disk space = 256
# host access prefix =
# memory deduplication (ksm) = yes
# debug flags = 0x0000000000000000
# debug log = /var/log/netdata/debug.log
# error log = /var/log/netdata/error.log
# access log = /var/log/netdata/access.log
# facility log = daemon
# errors flood protection period = 1200
# errors to trigger flood protection = 200
# TZ environment variable = :/etc/localtime
# timezone = Etc/UTC
# OOM score = 0
# process scheduling policy = batch
# process nice level = 19
# pthread stack size = 8388608
# cleanup obsolete charts after seconds = 3600
# gap when lost iterations above = 1
# cleanup orphan hosts after seconds = 3600
# delete obsolete charts files = yes
# delete orphan hosts files = yes
# enable zero metrics = no
# dbengine extent pages = 64
[backend]
enabled = yes
type = json
destination = localhost:12345
data source = average
prefix = netdata
update every = 10
buffer on failures = 10
timeout ms = 20000
send charts matching = *
[web]
# ssl key = /etc/netdata/ssl/key.pem
# ssl certificate = /etc/netdata/ssl/cert.pem
# tls version = 1.3
# tls ciphers = none
# ses max window = 15
# des max window = 15
# mode = static-threaded
# listen backlog = 4096
# default port = 19999
# bind to = *
# disconnect idle clients after seconds = 60
# timeout for first request = 60
# accept a streaming request every seconds = 0
# respect do not track policy = no
# x-frame-options response header =
# allow connections from = localhost *
# allow connections by dns = heuristic
# allow dashboard from = localhost *
# allow dashboard by dns = heuristic
# allow badges from = *
# allow badges by dns = heuristic
# allow streaming from = *
# allow streaming by dns = heuristic
# allow netdata.conf from = localhost fd* 10.* 192.168.* 172.16.* 172.17.* 172.18.* 172.19.* 172.20.* 172.21.* 172.22.* 172.23.* 172.24.* 172.25.* 172.26.* 172.27.* 172.28.* 172.29.* 172.30.* 172.31.* UNKNOWN
# allow netdata.conf by dns = no
# allow management from = localhost
# allow management by dns = heuristic
# enable gzip compression = yes
# gzip compression strategy = default
# gzip compression level = 3
# web server threads = 6
# web server max sockets = 256
# custom dashboard_info.js =
[plugins]
# PATH environment variable = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin
PYTHONPATH environment variable = /usr/libexec/netdata/python.d/python_modules
# checks = no
# idlejitter = yes
# timex = yes
# tc = yes
# diskspace = yes
# proc = yes
# cgroups = yes
# enable running new plugins = yes
# check for new plugins every = 60
# slabinfo = no
# ebpf = yes
# node.d = yes
# charts.d = yes
# go.d = yes
# apps = yes
# perf = yes
# python.d = yes
# fping = yes
# ioping = yes
My syslog-ng config file:
#############################################################################
# Default syslog-ng.conf file which collects all local logs into a
# single file called /var/log/messages.
#
@version: 3.36
@include "scl.conf"
source s_local {
system();
internal();
};
##source s_network {
##default-network-drivers(
# NOTE: TLS support
#
# the default-network-drivers() source driver opens the TLS
# enabled ports as well, however without an actual key/cert
# pair they will not operate and syslog-ng would display a
# warning at startup.
#
#tls(key-file("/path/to/ssl-private-key") cert-file("/path/to/ssl-cert"))
##);
##};
source s_netdata {
network(
transport(tcp)
port(12345)
flags(no-parse)
tags(netdata)
);
};
parser p_netdata {
json-parser(
prefix("netdata.")
);
};
filter f_netdata {
match("users", value("netdata.chart_type"));
};
destination d_local {
file("/var/log/messages_netdata.log");
file("/var/log/messages-kv.log" template("$ISODATE $HOST $(format-welf --scope all-nv-pairs)\n") frac-digits(3));
};
log {
##source(s_local);
source(s_netdata);
parser(p_netdata);
filter(f_netdata);
# uncomment this line to open port 514 to receive messages
#source(s_network);
destination(d_local);
};
log {
source(s_local);
destination(d_local);
};
Thank you for your time.