Softprobe Logo
Istio Logo
OpenTelemetry Logo

Enhance Istio & OpenTelemetry

Softprobe Agent is a WebAssembly (WASM) plugin for Istio, fully compatible with OpenTelemetry. It's trusted by developers for its zero-code, low-cost approach.

It captures complete HTTP request/response data, turning scattered OTel traces into AI-ready session graphs.

Softprobe WASM Plugin Benefits

Native OTel Format

Data is fully compatible with the native OpenTelemetry format, allowing seamless integration with any standard OTel Collector.

Send your data to familiar platforms like Jaeger, Zipkin, or any other OTel-compatible backend without any conversion.

Transparent to Users

Adheres to the W3C Trace Context standard, passing key information like session ID via the tracestate HTTP header.

This process is completely transparent to user applications and ensures zero data pollution, maintaining the integrity of your telemetry.

Zero Code, Low Cost

Dynamically injected via an Istio WASM plugin, requiring no application code changes.

This approach results in extremely low deployment and maintenance costs, freeing up your engineering resources.

On-Demand Collection

Offers rich configuration options to dynamically enable or disable data collection based on paths, headers, and other conditions.

This provides fine-grained control over your data, allowing you to focus on what matters most while managing costs.

Node Detail

More Than Traces: From OTel Data to Session Graphs

Softprobe Agent enhances native OTel traces. It automatically identifies services, inbound, and outbound requests, and intelligently reconstructs scattered trace data into context-rich logs and structured session graphs, providing unprecedented business insights.

Understand how Softprobe Agent works seamlessly within your service mesh.

1

Deploy WASM Plugin

Deploy the Softprobe Agent as a WASM plugin into your Istio service mesh. It automatically attaches to the Envoy proxies of all your services.

2

Non-Intrusive Traffic Interception

The plugin intercepts HTTP/S traffic at the Envoy proxy layer. Your application code and containers remain completely untouched and unaware.

3

Asynchronous Data Capture

The high-performance Rust and WASM module captures full request and response data in a streaming, asynchronous manner, ensuring minimal impact on your service performance.

4

Business-Level Tracing & Analytics

The captured data is sent to the Softprobe backend or the backend you specify to generate business-level distributed traces, analyze API usage patterns, and accelerate troubleshooting.

Use a single command to set up a local Kubernetes environment with a demo app, and instantly visualize business-level traces in the Softprobe dashboard.

1

Set up Environment

This command creates a local Kind cluster with Istio and the OpenTelemetry Operator.

curl -L https://raw.githubusercontent.com/softprobe/softprobe/refs/heads/main/scripts/cluster-setup.sh | sh
2

Configure & Deploy (SaaS)

Sign up for a free Softprobe Cloud account to get a pre-configured `minimal.yaml` with your backend endpoint and API key.

Sign Up for Free
3

Install Demo App

Deploy our travel demo application to the cluster.

kubectl apply -f https://raw.githubusercontent.com/softprobe/softprobe/main/examples/travel/apps.yaml
sleep 10 && kubectl port-forward -n istio-system svc/istio-ingressgateway 8080:80
4

Try the demo

Expose it on your local machine and generate some traffic.

  • Open http://localhost:8080 in your browser to view the demo application.
  • Generate some traffic by clicking on the different links.
  • Go to the Softprobe dashboard to see your business-level traces.
  • Explore the session graphs to understand the full context of your requests.
5

Apply Configuration

After downloading, apply the configuration:

kubectl apply -f minimal.yaml
6

View Your Traces

Generate some traffic in the demo app, then head to the Softprobe dashboard to see your business-level traces.

Go to Dashboard

Join Our Open-Source Community

Explore the code, submit your first PR, and shape the future of microservice observability with us!