πŸ€–

Qorrelate Agent

A lightweight, cross-platform binary that auto-discovers services, collects telemetry, and streams logs, metrics, and traces to Qorrelate with zero manual configuration.

πŸ”
Auto-Discovery
Processes, Docker, K8s
πŸ“Š
Host Metrics
CPU, memory, disk, network
πŸ“
Log Collection
Tail files, parse formats
πŸ”„
OTLP Streaming
Batching, compression, retry

πŸš€ Quick Install

One-Line Install (Linux/macOS)
curl -fsSL https://install.qorrelate.io/agent | bash -s -- \
  --api-key YOUR_API_KEY \
  --org-id YOUR_ORG_ID
πŸ’‘

Get your API Key

Go to Settings β†’ API Keys in the Qorrelate dashboard to create an API key for the agent.

✨ Features

πŸ” Service Auto-Discovery

Automatically detects running processes, Docker containers, and Kubernetes pods. Identifies service type (Java, Python, Node.js, Go, Ruby, .NET) and framework.

πŸ“Š Host & Process Metrics

Collects system metrics (CPU, memory, disk, network) and per-process metrics. Container-aware resource limits.

πŸ“ Log Collection

Tail log files, detect severity levels, parse common formats (JSON, logfmt). Integrates with systemd journal.

🌐 Fleet Management

Manage all agents from the Qorrelate dashboard. Remote configuration, status monitoring, and rollout control.

🐧 Linux Installation

Debian/Ubuntu (.deb)

# Download and install
curl -LO https://github.com/sethmichaelking/arqive/releases/latest/download/qorrelate-agent_linux_amd64.deb
sudo dpkg -i qorrelate-agent_linux_amd64.deb

# Configure
sudo vim /etc/qorrelate/agent.yaml

# Start the agent
sudo systemctl enable qorrelate-agent
sudo systemctl start qorrelate-agent

RHEL/CentOS (.rpm)

# Download and install
curl -LO https://github.com/sethmichaelking/arqive/releases/latest/download/qorrelate-agent_linux_amd64.rpm
sudo rpm -i qorrelate-agent_linux_amd64.rpm

# Configure and start
sudo vim /etc/qorrelate/agent.yaml
sudo systemctl enable qorrelate-agent
sudo systemctl start qorrelate-agent

🍎 macOS Installation

# Using Homebrew (coming soon)
brew install qorrelate/tap/qorrelate-agent

# Or download directly
curl -LO https://github.com/sethmichaelking/arqive/releases/latest/download/qorrelate-agent_darwin_arm64.tar.gz
tar -xzf qorrelate-agent_darwin_arm64.tar.gz
sudo mv qorrelate-agent /usr/local/bin/

# Run
qorrelate-agent --api-key YOUR_API_KEY --org-id YOUR_ORG_ID

☸️ Kubernetes Installation

Using Helm

helm repo add qorrelate https://charts.qorrelate.io
helm repo update

helm install qorrelate-agent qorrelate/agent \
  --set apiKey=YOUR_API_KEY \
  --set orgId=YOUR_ORG_ID \
  --namespace qorrelate \
  --create-namespace

Using kubectl (DaemonSet)

# Create secret
kubectl create secret generic qorrelate-agent \
  --from-literal=api-key=YOUR_API_KEY \
  --from-literal=org-id=YOUR_ORG_ID \
  -n qorrelate

# Apply DaemonSet
kubectl apply -f https://raw.githubusercontent.com/sethmichaelking/arqive/main/kubernetes/agent-daemonset.yaml

🐳 Docker Installation

docker run -d \
  --name qorrelate-agent \
  -e QORRELATE_AGENT_API_KEY=YOUR_API_KEY \
  -e QORRELATE_AGENT_ORG_ID=YOUR_ORG_ID \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  -v /proc:/host/proc:ro \
  -v /sys:/host/sys:ro \
  --pid=host \
  qorrelate/agent:latest

βš™οΈ Configuration File

The agent configuration file is located at /etc/qorrelate/agent.yaml (Linux) or /usr/local/etc/qorrelate/agent.yaml (macOS).

# /etc/qorrelate/agent.yaml

api:
  key: "your-api-key"
  endpoint: "https://qorrelate.io"
  org_id: "your-org-id"

discovery:
  process:
    enabled: true
    interval: 30s
  docker:
    enabled: true
    socket: "/var/run/docker.sock"
  kubernetes:
    enabled: false  # Enable when running in K8s

telemetry:
  logs:
    enabled: true
    paths:
      - "/var/log/*.log"
      - "/var/log/syslog"
  metrics:
    enabled: true
    interval: 60s
    host_metrics: true

forwarder:
  batch_size: 1000
  flush_interval: 5s
  compression: gzip
  retry:
    max_attempts: 3
    initial_delay: 1s

logging:
  level: info
  file: "/var/log/qorrelate/agent.log"

πŸ”§ Environment Variables

All configuration options can be set via environment variables with the QORRELATE_AGENT_ prefix:

Variable Description Default
QORRELATE_AGENT_API_KEY API key for authentication Required
QORRELATE_AGENT_ORG_ID Organization ID Required
QORRELATE_AGENT_API_ENDPOINT API endpoint URL https://qorrelate.io
QORRELATE_AGENT_LOGGING_LEVEL Log level (debug, info, warn, error) info
QORRELATE_AGENT_DISCOVERY_PROCESS_ENABLED Enable process discovery true
QORRELATE_AGENT_DISCOVERY_DOCKER_ENABLED Enable Docker discovery true

πŸ” Service Discovery

The agent automatically discovers services and reports them to the Qorrelate dashboard. You can view discovered services in Settings β†’ Agents.

Detected Service Types

β˜•
Java
🐍
Python
🟒
Node.js
πŸ”΅
Go
πŸ’Ž
Ruby
🟣
.NET