Skip to main content

Host resources

The DMG Collector installs a small set of files on the host:

Installation

The collector can be installed interactively (recommended for first setup) or non-interactively for automation.

Interactive install

The installer runs a short configuration wizard: On submission the installer:
  1. Verifies environment requirements (exits with a clear error otherwise).
  2. Validates connectivity to SHIP_URL.
  3. Installs the binary, writes the unit file + optional limits drop-in, creates the log directory, and starts the service.

Non-interactive / automation install

For config management (Ansible, SSM, cloud-init, Packer), either pre-seed environment variables or install directly:

Service configuration

The systemd unit (dag-agent.service) is minimal:
LimitMEMLOCK=infinity is required for BPF map allocations. If restricted by policy, set it to the expected total map size (~4 MB with default configuration).

Verification

Expected output:

Upgrade

In-place upgrade consists of replacing the binary and restarting the service:
For fleet upgrades, a shell script is included (deploy/ci-install.sh), which assumes a node has already been bootstrapped with install.sh once and only does the binary-swap + restart (no wizard). Typical wiring:
  • AWS SSM Run Command: Execute across a tag selector (Role=agent, Env=prod) with a one-liner that pulls the new tarball and runs the shell.
  • Ansible / Salt: Treat /usr/local/bin/dag-agent as a managed file sourced from your artifact cache.
  • Packer / Image Builder: Bake the agent into a base AMI and roll via your usual image replacement process.

Uninstall

Removes service and binary, preserves logs. No reboot required.
Last modified on October 8, 2026