strix-ingest CLI¶
The strix-ingest binary is a standalone command-line tool for bulk ingestion with batching, parallelism, and retry logic. By default it auto-detects workers and batch size, and adapts concurrency at runtime based on server feedback.
Installation¶
Download from the releases page or build from source:
go build -o strix-ingest ./cmd/strix-ingest
Usage¶
# Basic usage (auto mode)
strix-ingest --url https://strix.example.com --token strix_ingest_abc123... file.json
# Multiple files
strix-ingest --url https://strix.example.com --token $TOKEN *.json
# Recursive directory ingestion
strix-ingest --url https://strix.example.com --token $TOKEN \
--recursive /var/log/exports/
# Override auto-detected parameters
strix-ingest --url https://strix.example.com --token $TOKEN \
--workers 8 --batch-size 2000 *.json
Supported File Formats¶
- JSON (arrays or single objects)
- NDJSON (newline-delimited JSON)
- CSV
- TSV
Options¶
| Flag | Default | Description |
|---|---|---|
--url, -u |
http://localhost:8080 |
Strix server URL |
--token, -t |
(required) | Ingest token |
--batch-size, -b |
auto (5000) | Logs per batch |
--workers, -w |
auto (CPU cores) | Concurrent upload workers |
--limit, -l |
unlimited | Max logs per file |
--recursive, -r |
false | Recursively find files in subdirectories |
--insecure, -k |
false | Skip TLS certificate verification |
When --workers and --batch-size are omitted, strix-ingest runs in auto mode: it detects initial parameters from system resources and adapts concurrency at runtime based on server feedback (429 responses). Providing either flag switches to manual mode with fixed values.
The CLI automatically retries on 429 (rate limit / queue full) and 5xx errors with exponential backoff (up to 5 retries).