turnstone/patterns/sources-cluster.yaml
pyr0ball 1e8a118f71 feat: add cluster-wide log collection and Heimdall Turnstone deployment
- scripts/collect_cluster_logs.sh: collects journals from Heimdall (local),
  Navi, Sif, Cass, Strahl (SSH), Docker services, and a network syslog
  placeholder; designed for 15-min cron before ingest
- patterns/sources-cluster.yaml: ingest sources config for the full
  CircuitForge cluster stack; points at /devl/turnstone-cluster/data/
- scripts/docker-cluster.sh: Docker deployment for Heimdall cluster monitor;
  seeds preferences.json with cf-orch coordinator URL (localhost:7701) so
  LLM summarization works on first ingest without manual UI config
2026-05-12 18:53:58 -07:00

55 lines
2.4 KiB
YAML

# Turnstone log sources — Heimdall cluster ingest.
# Covers: Heimdall (local), Navi, Sif, Cass, Strahl (SSH-collected),
# Docker services on Heimdall, and network device syslog.
#
# Collected by scripts/collect_cluster_logs.sh before each ingest run.
# All paths are container-side (/data/ = bind-mount of /devl/turnstone-cluster/data/).
#
# Cron (collect + ingest, every 15 min):
# */15 * * * * bash /Library/Development/CircuitForge/turnstone/scripts/collect_cluster_logs.sh && \
# docker exec turnstone-cluster python scripts/ingest_corpus.py \
# --sources /patterns/sources-cluster.yaml --db /data/turnstone.db \
# >> /var/log/turnstone-cluster-ingest.log 2>&1
sources:
# ── Heimdall (local) ─────────────────────────────────────────────────────────
- id: heimdall-journal
path: /data/heimdall-journal.jsonl
- id: heimdall-dmesg
path: /data/heimdall-dmesg.txt
# ── Remote cluster nodes (SSH-collected journals) ────────────────────────────
- id: navi-journal
path: /data/navi-journal.jsonl
- id: sif-journal
path: /data/sif-journal.jsonl
- id: cass-journal
path: /data/cass-journal.jsonl
- id: strahl-journal
path: /data/strahl-journal.jsonl
# ── Docker services on Heimdall ──────────────────────────────────────────────
- id: docker-cf-orch-coordinator
path: /data/docker-cf-orch-coordinator.jsonl
- id: docker-cf-web
path: /data/docker-cf-web.jsonl
- id: docker-cf-directus
path: /data/docker-cf-directus.jsonl
- id: docker-caddy-proxy
path: /data/docker-caddy-proxy.jsonl
# ── Network syslog (router, switches, UniFi APs) ─────────────────────────────
# Written by syslog-receiver.service (UDP 5140 → /devl/turnstone-cluster/data/network-syslog.txt).
# Configure devices to send syslog to Heimdall:5140.
# UniFi: Settings → System → Remote Logging → Syslog Host = <YOUR_HOST_IP>:5140
# Ubiquiti EdgeRouter: set system syslog host <YOUR_HOST_IP> facility all level debug
# Managed switches: varies by vendor — target <YOUR_HOST_IP> UDP 5140
- id: network-syslog
path: /data/network-syslog.txt