Rust + eBPF runtime observability

Evidence-first signals for Linux and Kubernetes.

E-Navigator collects node-local runtime observations, attributes them to workloads, derives bounded metrics and spans, and keeps every public claim tied to explicit proof.

  • Static Rust pipeline
  • eBPF sources
  • Versioned signals
  • Public preview 0.3.1
E-Navigator compass and Kubernetes signal logo

Capabilities

Runtime signals without application SDKs.

The current foundation captures process, network, DNS, HTTP/1, HTTP/2, extension-free WebSocket metadata, and gRPC-Web metadata at runtime, reassembles and matches Kafka, MongoDB, MySQL, NATS, PostgreSQL, Redis, and gRPC requests to their responses for real latency and status, reads TLS plaintext at the userspace library boundary through OpenSSL, GnuTLS, and version-gated unstripped Linux/amd64 Go crypto/tls uprobes (interception, not on-the-wire decryption), accounts for TCP retransmits, resets, and state transitions, samples and symbolizes periodic CPU, scheduler off-CPU, and futex-wait lock profiles, and turns resource, trace, peer-aware directional L4 bytes, and security observations into bounded native E-Navigator signals. A disabled-by-default plaintext HTTP/1 path can inject W3C context for a strict, qualified subset; TLS, HTTP/2, HTTP/3, segmented writes, and async continuation remain explicit non-claims. An optional capture filter scopes which workloads are probed by Kubernetes namespace and label on unified cgroup v2 nodes. Bounded inotify discovery wakes the controller for new cgroups, while a 2-second polling reconciliation remains as a recovery path. Five homelab runs per mode measured a 0.463 ms event-driven median versus 1,148.131 ms with polling for the scoped new-Pod exec workload. Legacy and hybrid layouts force deny before probe attachment instead of guessing a hierarchy. Supported kernels use BPF ring buffers with explicit producer-loss accounting; a separately built perf-event path remains for older kernels and strict diagnostics. BTF-capable kernels also use preflighted fexit hooks for scalar network read/write accounting, with syscall tracepoints retained as the strict compatibility path. An opt-in Linux 6.6 reduced-capability profile removes SYS_ADMIN, retaining only BPF, PERFMON, and SYS_PTRACE for the complete source set proven on the homelab.

Pipeline

Source -> Processor -> Generator -> Sink

Static module registration keeps runtime behavior inspectable and testable.

Attribution

Host, process, container, Kubernetes

Signals carry context when evidence exists and warnings when it does not.

Export

JSON, Prometheus, OTLP, pprof

JSON stdout is the default. Prometheus, OTLP, and a local pprof profile endpoint are opt-in, bounded, and family-selectable.

Scope control

Namespace and label capture filter

Opt-in cgroup-id filtering uses bounded event-driven discovery on unified cgroup v2 nodes; homelab p95 fell from 1,216.842 ms with polling to 0.487 ms for the scoped new-Pod exec workload.

Kernel transport

RingBuf with fail-closed fallback

Feature-probed RingBuf delivery and the old-kernel perf path expose one aggregate loss surface without claiming an unmeasured speedup.

Kernel hooks

Measured BTF fexit fast path

Scalar network read/write accounting uses preflighted fexit where supported; a homelab A/B measured 7.971% more operations per second than tracepoints for that narrow workload.

Privilege posture

Reduced profile, exact boundary

Linux 6.6 homelab proof removed SYS_ADMIN: core Aya sources used BPF and PERFMON, TLS and cross-UID CPU symbols added SYS_PTRACE, and host resources used none.

Boundaries

No hidden production claims

Storage, UI, broad collector compatibility, rootless and cross-kernel privilege portability stay non-claims. The scoped homelab head-to-head measured higher E-Navigator CPU and RSS, so no lower-overhead claim is made.

Runtime intelligence

See applications, infrastructure, and security as one system.

E-Navigator converts Linux and Kubernetes runtime activity into workload-aware metrics, traces, profiles, dependency topology, and security signals, without application SDKs or source-code changes.

Automatic application visibility

Correlate HTTP/1, HTTP/2, gRPC, extension-free WebSocket frame metadata, gRPC-Web, Kafka, MongoDB, MySQL, NATS, PostgreSQL, and Redis requests with responses to surface latency, status, errors, and service dependencies. HTTP/3 and QUIC semantics remain an explicit non-claim.

Workload context on every signal

Attribute runtime activity across hosts, processes, containers, namespaces, and Kubernetes workloads. Export bounded directional L4 bytes by stable source and destination workload owner, with explicit overflow instead of unbounded labels.

Performance and security, unified

Combine DNS and network telemetry, TLS visibility, TCP health, CPU, off-CPU, and futex-wait profiles, resource metrics, and runtime security signals, then export through Prometheus, OTLP, pprof, or structured JSON.

Benchmarks

Methodology before numbers.

Local Criterion runs are hot-path hygiene. Runtime overhead, collector, and Kubernetes claims require guarded live proof with recorded artifacts.

5 cumulative workload stages
3x required repetitions per comparison arm
0 tolerated hard-loss counters
Read performance methodology

Install paths

Run locally, then verify releases before production.

Synthetic local run

Exercise the pipeline without privileged Linux or Kubernetes dependencies.

cargo run --locked -p e-navigator-cli -- --source synthetic

Helm OCI chart

Install the published chart, then pin digest-backed images after verification.

helm upgrade --install e-navigator oci://ghcr.io/guaracloud/charts/e-navigator \
  --version 0.3.1 \
  --namespace e-navigator-system \
  --create-namespace

Verify release artifacts

Check release manifest, checksums, Cosign signatures, SBOMs, image digest, and chart digest.

gh release download v0.3.1 --repo guaracloud/e-navigator --dir e-navigator-release
jq -r '.images[0].reference' e-navigator-release/release-manifest.json

Documentation

One route from first run to production evidence.

The website guide covers architecture, the production performance path, operations, engineering standards, and proof boundaries. The Markdown source remains the exhaustive, reviewable reference.