feat: added victoriatraces

krasovs.ky 7ef56cd8 8b6da767

verified
+11
configs/alloy/config.alloy
···
{ __address__ = "host.containers.internal:9558" },
{ __address__ = "host.containers.internal:9091" }, // LiveKit
{ __address__ = "prometheus-podman-exporter:9882" },
+
{ __address__ = "victoria:8428" },
+
{ __address__ = "victoria:9428" },
+
{ __address__ = "victoria:10428" },
{ __address__ = "immich:8081" },
{ __address__ = "immich:8082" },
{ __address__ = "opencloud:9205" },
···
output {
metrics = [otelcol.processor.batch.default.input]
logs = [otelcol.processor.batch.default.input]
+
traces = [otelcol.processor.batch.default.input]
}
}
···
output {
metrics = [otelcol.exporter.otlphttp.victoria_metrics.input]
logs = [otelcol.exporter.otlphttp.victoria_logs.input]
+
traces = [otelcol.exporter.otlphttp.victoria_traces.input]
}
}
···
endpoint = "http://victoria:9428/insert/opentelemetry"
}
}
+
+
otelcol.exporter.otlphttp "victoria_traces" {
+
client {
+
endpoint = "http://victoria:10428/insert/opentelemetry"
+
}
+
}
+1 -1
configs/containers/systemd/element-call.container.tftpl
···
Description=Element Call Quadlet
[Container]
-
Image=ghcr.io/element-hq/element-call:v0.16.1
+
Image=ghcr.io/element-hq/element-call:v0.16.3
AutoUpdate=registry
ContainerName=element-call
+1 -1
configs/containers/systemd/element-web.container.tftpl
···
Description=Element Web Quadlet
[Container]
-
Image=docker.io/vectorim/element-web:v1.12.4
+
Image=docker.io/vectorim/element-web:v1.12.6
AutoUpdate=registry
ContainerName=element-web
+1 -1
configs/containers/systemd/matrix-rtc/matrix-rtc-jwt.container.tftpl
···
Description=MatrixRTC Authorization Service Quadlet
[Container]
-
Image=ghcr.io/element-hq/lk-jwt-service:0.3.0
+
Image=ghcr.io/element-hq/lk-jwt-service:0.4.0
AutoUpdate=registry
ContainerName=matrix-rtc-jwt
+1 -1
configs/containers/systemd/matrix-rtc/matrix-rtc-sfu.container.tftpl
···
After=matrix-rtc-valkey.service
[Container]
-
Image=docker.io/livekit/livekit-server:v1.9.4
+
Image=docker.io/livekit/livekit-server:v1.9.7
AutoUpdate=registry
ContainerName=matrix-rtc-sfu
+1 -1
configs/containers/systemd/victoria/victoria-logs.container.tftpl
···
User=1000:1000
Label="glance.name=VictoriaLogs"
-
Label="glance.icon=di:victoriametrics-light"
+
Label="glance.icon=di:victorialogs"
Label="glance.url=https://logs.${base_domain}"
Label="glance.description=Logs Storage"
Label="glance.hide=false"
+25
configs/containers/systemd/victoria/victoria-traces.container.tftpl
···
+
[Unit]
+
Description=Victoria Traces Quadlet
+
+
[Container]
+
Image=docker.io/victoriametrics/victoria-traces:v0.5.1
+
ContainerName=victoria-traces
+
+
User=1000:1000
+
+
Label="glance.name=VictoriaTraces"
+
Label="glance.icon=di:victoriametrics-light"
+
Label="glance.url=https://traces.${base_domain}"
+
Label="glance.description=Tracing Data Storage"
+
Label="glance.hide=false"
+
+
Volume=/var/mnt/observability/traces:/victoria-traces-data:Z
+
+
Pod=victoria.pod
+
+
[Service]
+
TimeoutStartSec=900
+
Restart=always
+
+
[Install]
+
WantedBy=multi-user.target default.target
+3 -3
configs/containers/systemd/victoria/victoria-vmauth.container.tftpl
···
Label="glance.hide=false"
Label="traefik.enable=true"
-
Label="traefik.http.routers.vm.rule=Host(`metrics.${base_domain}`) || Host(`logs.${base_domain}`)"
+
Label="traefik.http.routers.vm.rule=Host(`metrics.${base_domain}`) || Host(`logs.${base_domain}`) || Host(`traces.${base_domain}`)"
Label="traefik.http.routers.vm.middlewares=oauth2-proxy@file,add-victoria-bearer"
Label="traefik.http.routers.vm.priority=1"
Label="traefik.http.services.vm.loadbalancer.server.port=8427"
-
Label="traefik.http.routers.vm-auth.rule=(Host(`metrics.${base_domain}`) || Host(`logs.${base_domain}`)) && PathPrefix(`/oauth2/`)"
+
Label="traefik.http.routers.vm-auth.rule=(Host(`metrics.${base_domain}`) || Host(`logs.${base_domain}`) || Host(`traces.${base_domain}`)) && PathPrefix(`/oauth2/`)"
Label="traefik.http.routers.vm-auth.service=oauth2-proxy"
Label="traefik.http.middlewares.add-victoria-bearer.headers.customRequestHeaders.Authorization=Bearer ${secrets.vmauth_traefik_bearer_token}"
-
Label="traefik.http.routers.vm-api.rule=(Host(`metrics.${base_domain}`) || Host(`logs.${base_domain}`)) && (HeaderRegexp(`Authorization`, `^Bearer .*$`) || HeaderRegexp(`Authorization`, `^Token .*$`))"
+
Label="traefik.http.routers.vm-api.rule=(Host(`metrics.${base_domain}`) || Host(`logs.${base_domain}`) || Host(`traces.${base_domain}`)) && (HeaderRegexp(`Authorization`, `^Bearer .*$`) || HeaderRegexp(`Authorization`, `^Token .*$`))"
Label="traefik.http.routers.vm-api.priority=2"
Exec="--auth.config=/etc/auth.yml"
+1
configs/matrix/mas.yaml.tftpl
···
token_endpoint_auth_method: client_secret_basic
scope: "email openid profile"
claims_imports:
+
skip_confirmation: true
localpart:
action: require
template: '{{ user.preferred_username }}'
+3
configs/vmauth/auth.yml
···
- src_hosts:
- "logs\\.${replace(base_domain, ".", "\\\\.")}"
url_prefix: "http://victoria-logs:9428/"
+
- src_hosts:
+
- "traces\\.${replace(base_domain, ".", "\\\\.")}"
+
url_prefix: "http://victoria-traces:10428/"
# Proxmox
- bearer_token: "${secrets.vmauth_proxmox_bearer_token}"
url_map: