1 # Copyright (C) The Arvados Authors. All rights reserved.
3 # SPDX-License-Identifier: Apache-2.0
5 {%- set prom_user = "__MONITORING_USERNAME__" %}
6 {%- set prom_pass = "__MONITORING_PASSWORD__" %}
7 {%- set prom_host = "prometheus.__DOMAIN__" %}
8 {%- set loki_user = "__MONITORING_USERNAME__" %}
9 {%- set loki_pass = "__MONITORING_PASSWORD__" %}
10 {%- set loki_host = "loki.__DOMAIN__" %}
16 config_path: "/etc/alloy/config.alloy"
18 ////////////////////////////////////////////////////////////////////////
19 // File managed by Salt. Your changes will be overwritten.
20 ////////////////////////////////////////////////////////////////////////
25 prometheus.exporter.unix "default" {
26 include_exporter_metrics = true
27 disable_collectors = ["mdadm"]
30 prometheus.scrape "default" {
32 prometheus.exporter.unix.default.targets,
34 // Self-collect metrics
36 __address__ = "127.0.0.1:12345",
41 prometheus.remote_write.metrics_service.receiver,
45 prometheus.remote_write "metrics_service" {
47 url = "https://{{ prom_host }}/api/v1/write"
50 username = "{{ prom_user }}"
51 password = "{{ prom_pass }}"
56 local.file_match "file_logs" {
58 {"__path__" = "/var/log/nginx/*.log"},
59 {"__path__" = "/var/www/arvados-api/shared/log/production.log"},
64 loki.source.file "log_scrape" {
65 targets = local.file_match.file_logs.targets
66 forward_to = [loki.write.grafana_loki.receiver]
70 loki.source.journal "journal_logs" {
71 relabel_rules = loki.relabel.journal.rules
72 forward_to = [loki.write.grafana_loki.receiver]
73 labels = {component = "loki.source.journal"}
76 loki.relabel "journal" {
80 source_labels = ["__journal__systemd_unit"]
81 target_label = "systemd_unit"
84 source_labels = ["__journal__hostname"]
85 target_label = "systemd_hostname"
88 source_labels = ["__journal__transport"]
89 target_label = "systemd_transport"
93 loki.write "grafana_loki" {
95 url = "https://{{ loki_host }}/loki/api/v1/push"
98 username = "{{ loki_user }}"
99 password = "{{ loki_pass }}"