rlg

mcp
Security Audit
Warn
Health Warn
  • License — License: Apache-2.0
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Pass
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

Near-lock-free structured logging for Rust. 10-crate workspace: MCP server (Claude/Cursor/mcp.run), OTLP HTTP+gRPC exporter, Tower middleware, WASM + WASI 0.2 component, eBPF-style enrichers, PII redaction, log analytics, test utilities, and a jq-style CLI. Sub-µs ingest via a 65k-slot ring buffer (LMAX Disruptor).

README.md

RLG logo

rlg — RustLogs

Near-lock-free structured logging for Rust, plus an ecosystem of companion crates: CLI tooling, MCP server, OTLP exporter, tower middleware, WebAssembly bindings, PII redaction, test utilities, and aggregation reports.

Build Miri Crates.io Docs.rs Coverage lib.rs


This is the Cargo workspace root. The library lives at
crates/rlg. Ten companion crates ship from this
workspace, all at lockstep version 0.0.11.

The rlg ecosystem

Crate What it does Use case
rlg Near-lock-free structured logging engine. 65k-slot ring buffer, deferred formatting, 14 output formats, native OS sinks (os_log via syslog(3), journald). Embed structured logging in any Rust binary or library.
rlg-cli rlg binary — jq for structured logs. Tail, filter, convert across all 14 formats. Pipe my-service | rlg --min-level error --format ecs from the shell.
rlg-mcp Model Context Protocol server exposing rlg streams as tools to LLM agents. Claude Desktop, Cursor, mcp.run agents reading your logs.
rlg-otlp OpenTelemetry network exporter (OTLP/HTTP JSON). Ship records to Honeycomb, Datadog, Tempo, Jaeger, otelcol.
rlg-tower tower::Layer emitting per-request structured access logs. axum, tonic, hyper, lambda_runtime — any tower::Service.
rlg-wasm wasm-bindgen wrapper for browser / Deno / Cloudflare Workers / Bun, plus a WASI 0.2 component interface for wasmtime hosts. Structured logging from JS or WASI 0.2 components.
rlg-redact PII / secret redaction between Log::fire() and the sink. Aho-Corasick fused alternation regex. Compliance, GDPR, audit-trail safety. Built-in patterns for cards, JWTs, bearers, emails, IPs, AWS keys.
rlg-test Test utilities — capture rlg records in a #[test] scope and assert on them with assert_logged!. Downstream library tests verifying their structured log output.
rlg-report Log digest / analytics: count by level, top components, top errors, latency percentiles. CLI + library mode. Operational dashboards, daily error reports, oncall triage.
rlg-ebpf Enricher trait + ProcessEnricher (portable) + EbpfEnricher scaffold (Linux, behind the ebpf feature) for automatic PID / process-name attributes. Automatic host-level context on every record without app code changes.
xtask (internal, unpublished) cargo xtask check-all / coverage / audit / doc / examples / bench / release. Maintainer automation.

Install one, install all

[dependencies]
rlg         = "0.0.12"
rlg-otlp    = "0.0.12"  # ship to an OTLP collector
rlg-tower   = "0.0.12"  # HTTP middleware
rlg-redact  = "0.0.12"  # PII redaction

[dev-dependencies]
rlg-test    = "0.0.12"  # assertions in your tests

CLI binaries:

cargo install rlg-cli       # the `rlg` binary
cargo install rlg-mcp       # the `rlg-mcp` MCP server
cargo install rlg-report    # the `rlg-report` digest tool

Tools

The MCP server crate, rlg-mcp, exposes rlg
log streams to LLM agents as three MCP tools over the stdio transport:

  • tail_logpath, optional n (default 100) → last n parseable records, rendered in Logfmt.
  • filter_logpath, optional min_level / component / format → records matching every supplied filter, in the chosen LogFormat.
  • summarize_errorspath → JSON map of component → error_count for ERROR-and-above records.

Workspace layout

.
├── Cargo.toml            # workspace manifest (profiles, members)
├── README.md             # ← you are here
├── CHANGELOG.md / CONTRIBUTING.md / SECURITY.md
├── LICENSE-{APACHE,MIT}
├── crates/
│   ├── rlg/              # core library
│   ├── rlg-cli/          # `rlg` binary + filter/render lib
│   ├── rlg-mcp/          # MCP server
│   ├── rlg-otlp/         # OTLP/HTTP exporter
│   ├── rlg-tower/        # tower::Layer
│   ├── rlg-wasm/         # wasm-bindgen + WASI 0.2 component
│   ├── rlg-redact/       # PII / secret scrubber (Aho-Corasick)
│   ├── rlg-test/         # test utilities
│   ├── rlg-report/       # log digest binary + lib
│   ├── rlg-ebpf/         # Enricher trait + eBPF (Linux) scaffold
│   └── xtask/            # internal automation (publish = false)
└── .github/
    └── workflows/
        ├── ci.yml        # delegates to sebastienrousseau/pipelines
        └── release.yml   # workspace-aware crates.io publisher

Quick links

License

Dual-licensed under Apache 2.0 or MIT, at your option.

Reviews (0)

No results found