configure opentelemetry on orbi
This commit is contained in:
parent
4857e6a766
commit
9f3e7b698a
4 changed files with 62 additions and 5 deletions
|
@ -40,9 +40,10 @@
|
|||
# ---------
|
||||
#./loki.nix
|
||||
#./loki-promtail.nix
|
||||
##./prometheus.nix
|
||||
#./grafana.nix
|
||||
./telegraf.nix
|
||||
./system-telegraf.nix
|
||||
./system-opentelemetry.nix
|
||||
#./system-prometheus.nix
|
||||
|
||||
#./cache.nix
|
||||
];
|
||||
|
|
51
nixos/machines/orbi/system-opentelemetry.nix
Normal file
51
nixos/machines/orbi/system-opentelemetry.nix
Normal file
|
@ -0,0 +1,51 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
services.opentelemetry-collector = {
|
||||
enable = true;
|
||||
package = pkgs.unstable.opentelemetry-collector-contrib;
|
||||
settings = {
|
||||
receivers = {
|
||||
# provide a influxdb sink
|
||||
influxdb = {
|
||||
endpoint = "127.0.0.1:8088";
|
||||
};
|
||||
# scrape opentelemetry-colectors metrics
|
||||
prometheus.config.scrape_configs = [
|
||||
{
|
||||
job_name = "netdata";
|
||||
scrape_interval = "10s";
|
||||
metrics_path = "/api/v1/allmetrics";
|
||||
params.format = [ "prometheus" ];
|
||||
static_configs = [{ targets = [ "127.0.0.1:19999" ]; }];
|
||||
}
|
||||
{
|
||||
job_name = "otelcol";
|
||||
scrape_interval = "10s";
|
||||
static_configs = [{ targets = [ "127.0.0.1:8100" ]; }];
|
||||
metric_relabel_configs = [
|
||||
{
|
||||
source_labels = [ "__name__" ];
|
||||
regex = ".*grpc_io.*";
|
||||
action = "drop";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
exporters = {
|
||||
# provide prometheus sink under `/metrics` to
|
||||
prometheus = {
|
||||
endpoint = "127.0.0.1:8090";
|
||||
};
|
||||
};
|
||||
service = {
|
||||
pipelines.metrics = {
|
||||
receivers = [ "influxdb" "prometheus" ];
|
||||
exporters = [ "prometheus" ];
|
||||
};
|
||||
# open telemetries own metrics?
|
||||
telemetry.metrics.address = "0.0.0.0:8100";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -2,10 +2,15 @@
|
|||
services.telegraf = {
|
||||
enable = true;
|
||||
extraConfig = {
|
||||
outputs.prometheus_client = {
|
||||
outputs = {
|
||||
prometheus_client = {
|
||||
listen = ":9273";
|
||||
metric_version = 2;
|
||||
};
|
||||
influxdb_v2 = {
|
||||
urls = [ "http://127.0.0.1:8088" ];
|
||||
};
|
||||
};
|
||||
# https://github.com/influxdata/telegraf/tree/master/plugins/inputs < all them plugins
|
||||
inputs = {
|
||||
cpu = {
|
Loading…
Reference in a new issue