Source -> Processor -> Generator -> Sink
Static module registration keeps runtime behavior inspectable and testable.
Rust + eBPF runtime observability
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.
Capabilities
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.
Static module registration keeps runtime behavior inspectable and testable.
Signals carry context when evidence exists and warnings when it does not.
JSON stdout is the default. Prometheus, OTLP, and a local pprof profile endpoint are opt-in, bounded, and family-selectable.
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.
Feature-probed RingBuf delivery and the old-kernel perf path expose one aggregate loss surface without claiming an unmeasured speedup.
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.
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.
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
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.
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.
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.
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
Local Criterion runs are hot-path hygiene. Runtime overhead, collector, and Kubernetes claims require guarded live proof with recorded artifacts.
Install paths
Exercise the pipeline without privileged Linux or Kubernetes dependencies.
cargo run --locked -p e-navigator-cli -- --source synthetic
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
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
The website guide covers architecture, the production performance path, operations, engineering standards, and proof boundaries. The Markdown source remains the exhaustive, reviewable reference.