Skip to main content
ClaudeWave

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).

MCP ServersOfficial Registry4 stars0 forksRustApache-2.0Updated today
ClaudeWave Trust Score
100/100
Verified
Passed
  • Open-source license (Apache-2.0)
  • Actively maintained (<30d)
  • Clear description
  • Topics declared
  • Mature repo (>1y old)
  • Documented (README)
Last scanned: 8/27/2026
Install in Claude Code / Claude Desktop
Method: Manual · rlg
Claude Code CLI
git clone https://github.com/sebastienrousseau/rlg
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "rlg": {
      "command": "rlg"
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
💡 Install the binary first: cargo install rlg (or build from https://github.com/sebastienrousseau/rlg).
Use cases

MCP Servers overview

<!-- SPDX-License-Identifier: Apache-2.0 OR MIT -->

<p align="center">
  <img src="https://cloudcdn.pro/rlg/v1/logos/rlg.svg" alt="RLG logo" width="128" />
</p>

<h1 align="center">rlg — RustLogs</h1>

<p align="center">
  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.
</p>

<p align="center">
  <a href="https://github.com/sebastienrousseau/rlg/actions"><img src="https://img.shields.io/github/actions/workflow/status/sebastienrousseau/rlg/ci.yml?style=for-the-badge&logo=github" alt="Build" /></a>
  <a href="https://github.com/sebastienrousseau/rlg/actions/workflows/miri.yml"><img src="https://img.shields.io/github/actions/workflow/status/sebastienrousseau/rlg/miri.yml?style=for-the-badge&logo=rust&label=Miri" alt="Miri" /></a>
  <a href="https://crates.io/crates/rlg"><img src="https://img.shields.io/crates/v/rlg.svg?style=for-the-badge&color=fc8d62&logo=rust" alt="Crates.io" /></a>
  <a href="https://docs.rs/rlg"><img src="https://img.shields.io/badge/docs.rs-rlg-66c2a5?style=for-the-badge&labelColor=555555&logo=docs.rs" alt="Docs.rs" /></a>
  <a href="https://codecov.io/gh/sebastienrousseau/rlg"><img src="https://img.shields.io/codecov/c/github/sebastienrousseau/rlg?style=for-the-badge&logo=codecov" alt="Coverage" /></a>
  <a href="https://lib.rs/crates/rlg"><img src="https://img.shields.io/badge/lib.rs-rlg-orange.svg?style=for-the-badge" alt="lib.rs" /></a>
</p>

---

This is the Cargo workspace root. The library lives at
[`crates/rlg`](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`](crates/rlg/README.md)** | 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`](crates/rlg-cli/README.md)** | `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`](crates/rlg-mcp/README.md)** | Model Context Protocol server exposing rlg streams as tools to LLM agents. | Claude Desktop, Cursor, mcp.run agents reading your logs. |
| **[`rlg-otlp`](crates/rlg-otlp/README.md)** | OpenTelemetry network exporter (OTLP/HTTP JSON). | Ship records to Honeycomb, Datadog, Tempo, Jaeger, otelcol. |
| **[`rlg-tower`](crates/rlg-tower/README.md)** | `tower::Layer` emitting per-request structured access logs. | axum, tonic, hyper, `lambda_runtime` — any `tower::Service`. |
| **[`rlg-wasm`](crates/rlg-wasm/README.md)** | `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`](crates/rlg-redact/README.md)** | 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`](crates/rlg-test/README.md)** | 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`](crates/rlg-report/README.md)** | Log digest / analytics: count by level, top components, top errors, latency percentiles. CLI + library mode. | Operational dashboards, daily error reports, oncall triage. |
| **[`rlg-ebpf`](crates/rlg-ebpf/README.md)** | `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

```toml
[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:

```bash
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`](crates/rlg-mcp/README.md), exposes rlg
log streams to LLM agents as three MCP tools over the stdio transport:

- `tail_log` — `path`, optional `n` (default 100) → last `n` parseable records, rendered in Logfmt.
- `filter_log` — `path`, optional `min_level` / `component` / `format` → records matching every supplied filter, in the chosen `LogFormat`.
- `summarize_errors` — `path` → JSON map of `component → error_count` for ERROR-and-above records.

## Workspace layout

```text
.
├── 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

- **Core docs:** [`crates/rlg/README.md`](crates/rlg/README.md) · [docs.rs/rlg](https://docs.rs/rlg)
- **Contributing & signing policy:** [`CONTRIBUTING.md`](CONTRIBUTING.md)
- **Security policy:** [`SECURITY.md`](SECURITY.md)
- **Release notes:** [`CHANGELOG.md`](CHANGELOG.md)

## License

Dual-licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0) or [MIT](https://opensource.org/licenses/MIT), at your option.
ai-agentsanthropiccargo-vetclaudeebpflock-freeloggingmcpmcp-servermodel-context-protocolobservabilityopentelemetryotlppii-redactionring-bufferrustsigstorestructured-loggingtowerwasi

What people ask about rlg

What is sebastienrousseau/rlg?

+

sebastienrousseau/rlg is mcp servers for the Claude AI ecosystem. 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). It has 4 GitHub stars and its last recorded update is dated 2026-08-26.

How do I install rlg?

+

You can install rlg by cloning the repository (https://github.com/sebastienrousseau/rlg) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is sebastienrousseau/rlg safe to use?

+

Our security agent has analyzed sebastienrousseau/rlg and assigned a Trust Score of 100/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.

Who maintains sebastienrousseau/rlg?

+

sebastienrousseau/rlg is maintained by sebastienrousseau. The last recorded GitHub activity is dated 2026-08-26, with 0 open issues.

Are there alternatives to rlg?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy rlg to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: sebastienrousseau/rlg
[![Featured on ClaudeWave](https://claudewave.com/api/badge/sebastienrousseau-rlg)](https://claudewave.com/repo/sebastienrousseau-rlg)
<a href="https://claudewave.com/repo/sebastienrousseau-rlg"><img src="https://claudewave.com/api/badge/sebastienrousseau-rlg" alt="Featured on ClaudeWave: sebastienrousseau/rlg" width="320" height="64" /></a>

More MCP Servers

rlg alternatives