Sage
Docs / Basics

Introduction

Sage is a single-binary agent that collects logs from files and journald, turns them into structured events and ships them where you need them.

It is written in Go and ships as a single binary for Linux, macOS and FreeBSD, on amd64 and arm64. There is nothing else to install: no runtime, no database, no agent.

Files & journalSageParse & bufferHTTP, files,syslog

Highlights

  • Tiny footprint. A single static binary that idles at a few megabytes of memory, so it fits on the smallest machine.
  • Files and journald. Tails files with glob patterns, follows rotation and reads the systemd journal with its fields.
  • Structured events. Parses JSON, logfmt and regular expressions into fields you can filter and route on.
  • Disk buffer. When an output is down, events wait in a disk buffer and are sent in order once it is back.
  • Many outputs. HTTP with batching and gzip, files, syslog and other Sage instances, all at the same time.
  • At-least-once. Positions are saved only after an output confirms delivery. A restart never loses a line.

Next steps