124 lines
2.6 KiB
Cheetah
124 lines
2.6 KiB
Cheetah
logging {
|
|
level = "info"
|
|
format = "logfmt"
|
|
}
|
|
|
|
discovery.docker "linux" {
|
|
host = "unix:///var/run/docker.sock"
|
|
}
|
|
|
|
{{ if ne (env "PROMETHEUS_REMOTE_WRITE_URL") "" }}
|
|
prometheus.exporter.cadvisor "docker" {
|
|
}
|
|
|
|
prometheus.exporter.unix "default" {
|
|
include_exporter_metrics = true
|
|
rootfs_path = "/rootfs"
|
|
}
|
|
|
|
prometheus.scrape "default" {
|
|
targets = array.concat(
|
|
[{
|
|
job = "alloy",
|
|
__address__ = "127.0.0.1:12345",
|
|
}],
|
|
prometheus.exporter.unix.default.targets,
|
|
prometheus.exporter.cadvisor.docker.targets,
|
|
)
|
|
|
|
forward_to = [prometheus.remote_write.prometheus.receiver]
|
|
}
|
|
|
|
{{ if ne (env "FORGEJO_METRICS_HOSTNAME") "" }}
|
|
prometheus.scrape "forgejo" {
|
|
bearer_token = "{{ secret "forgejo_token" }}"
|
|
job_name = "forgejo"
|
|
scheme = "https"
|
|
|
|
targets = [{ __address__ = "{{ env "FORGEJO_METRICS_HOSTNAME" }}" }]
|
|
forward_to = [prometheus.remote_write.prometheus.receiver]
|
|
|
|
tls_config {
|
|
insecure_skip_verify = {{ env "FORGEJO_INSECURE_SKIP_VERIFY" }}
|
|
server_name = "{{ env "FORGEJO_METRICS_HOSTNAME" }}"
|
|
}
|
|
}
|
|
{{ end }}
|
|
|
|
{{ if ne (env "GARAGE_METRICS_HOSTNAME") "" }}
|
|
prometheus.scrape "garage" {
|
|
bearer_token = "{{ secret "garage_token" }}"
|
|
job_name = "garage"
|
|
scheme = "https"
|
|
|
|
targets = [{ __address__ = "{{ env "GARAGE_METRICS_HOSTNAME" }}:443" }]
|
|
forward_to = [prometheus.remote_write.prometheus.receiver]
|
|
|
|
tls_config {
|
|
insecure_skip_verify = {{ env "GARAGE_INSECURE_SKIP_VERIFY" }}
|
|
}
|
|
}
|
|
{{ end }}
|
|
|
|
prometheus.remote_write "prometheus" {
|
|
endpoint {
|
|
url = "{{ env "PROMETHEUS_REMOTE_WRITE_URL" }}"
|
|
|
|
basic_auth {
|
|
username = "admin"
|
|
password = "{{ secret "basic_auth" }}"
|
|
}
|
|
}
|
|
}
|
|
{{ end }}
|
|
|
|
{{ if ne (env "LOKI_PUSH_URL") "" }}
|
|
loki.source.docker "docker" {
|
|
host = "unix:///var/run/docker.sock"
|
|
targets = discovery.docker.linux.targets
|
|
labels = {"app" = "docker"}
|
|
forward_to = [loki.write.loki.receiver]
|
|
}
|
|
|
|
{{ if eq (env "JOURNALD") "1" }}
|
|
loki.source.journal "journal" {
|
|
path = "/var/log/journal"
|
|
labels = { job = "{{ env "DOMAIN" }}" }
|
|
forward_to = [loki.write.loki.receiver]
|
|
}
|
|
{{ end }}
|
|
|
|
{{ if eq (env "SYSLOG") "1" }}
|
|
loki.relabel "syslog" {
|
|
rule {
|
|
action = "labelmap"
|
|
regex = "__syslog_(.+)"
|
|
}
|
|
|
|
forward_to = []
|
|
}
|
|
|
|
loki.source.syslog "syslog" {
|
|
listener {
|
|
address = "[::1]:514"
|
|
label_structured_data = true
|
|
labels = { component = "loki.source.syslog" }
|
|
}
|
|
|
|
relabel_rules = loki.relabel.syslog.rules
|
|
forward_to = [loki.write.loki.receiver]
|
|
}
|
|
{{ end }}
|
|
|
|
loki.write "loki" {
|
|
endpoint {
|
|
url = "{{ env "LOKI_PUSH_URL" }}"
|
|
|
|
basic_auth {
|
|
username = "admin"
|
|
password = "{{ secret "basic_auth" }}"
|
|
}
|
|
}
|
|
}
|
|
{{ end }}
|