Files
serverAppConfigs/serverAppConfigs-docs/Infrastructure/Alloy.md
T
Frank 5829a0bfe8 docs: rename docs/ -> serverAppConfigs-docs/ per system-wide PROJECTNAME-docs convention
All in-repo path references (AGENTS.md, README, old scripts, report artifacts,
test code paths) rewritten in the same commit; focused-test map extended for
.gitignore, old/scripts/*, dankclaw/comfyui/*, and report/* per this repo's
own convention ('add one before committing'). Obsidian wikilinks are
title-based and unaffected.
2026-08-28 02:20:06 -07:00

1.8 KiB

Alloy

Alloy is Grafana's log and telemetry shipper. It replaces Promtail (EOL 2026-03-02). One Alloy instance runs per host and forwards container and journal logs to Loki, and optionally metrics to Prometheus.

Hosts: Dankclaw + Dankserver (one per host) — Docs: https://grafana.com/docs/alloy/latest

Facts (from research)

Item Value
Image franksdank/alloy:latest (local build with a static busybox healthcheck)
Port none published (push-only)
Config River syntax, config.alloy
Successor to Promtail (EOL 2026-03-02)
Inputs journald socket, container log files
Output Loki push endpoint

Why Alloy and not Promtail

Promtail reached end-of-life on 2026-03-02. Grafana Labs directs new installs to Alloy. This stack uses Alloy from day one.

Configuration

River config at shared/alloy/config.alloy:

  • Read journald logs from the host's /run/systemd/journal/socket.
  • Read container logs from /var/lib/containers/... (podman) or the docker path.
  • Forward to http://loki:3100/loki/api/v1/push with host and job labels.

Volumes

Container path Host path (convention)
/etc/alloy/config.alloy shared/alloy/config.alloy (bind mount)
/run/systemd/journal/socket host journald socket (read-only)
/var/log host logs (read-only)

Gotchas

  • The journald socket mount is required for journal scraping.
  • Container log paths differ between docker (/var/lib/docker/containers) and podman (/var/lib/containers/storage/...); point the config at the right one per host.
  • One Alloy per host; do not run a single instance that tries to reach both hosts' logs.

See Also