Softprobe Logo

Context-Based Logging

Stop drowning in fragmented logs. Capture complete user sessions as structured graphs—zero code changes, 62% lower costs, AI-ready. Deploy as open-source in your cluster or use our fully-managed cloud service.

APIOrderUserPayContext-Based Loggingsession_a1b2c3Data Lake$-62%

From Chaos to Clarity

Traditional logs scatter your data across millions of lines. We capture the complete story.

Traditional Logging
Chaos
[svc-a] 10:00:01.234 INFO req_id=? user=?
[svc-b] 10:00:01.456 DEBUG db_query took 234ms
[svc-c] 10:00:01.789 WARN connection pool low
[svc-a] 10:00:02.001 DEBUG processing...
[svc-b] 10:00:02.345 ERROR NullPointerException
[svc-d] 10:00:02.567 INFO cache miss key=xyz
[svc-a] 10:00:02.890 DEBUG response sent
[svc-c] 10:00:03.012 INFO cleanup started
?
🤖AI Analysis
> Scanning 10,000 log lines...
> No causality found
> Context: MISSING
Context-Based Logging
Structured
Session #a1b2c3d4
GatewayOrderUserProductPayNotifyStockAuthProfileCacheSearchBankRedis
🤖AI Analysis
> Session #a1b2c3d4 analyzed
> Root cause: Pay service timeout
> Impact: user_123, order_456

And It's 62% Cheaper

Global Indexing
221× Cost
Index EVERY field of EVERY log line
log_1:
user_id
$
action
$
timestamp
$
status
$
log_2:
user_id
$
path
$
method
$
latency
$
log_3:
user_id
$
error
$
stack
$
level
$
3 logs × 4 fields = 12 index entries
1M logs → 10M index entries 💸
221×
vs Storage Cost
$164,827
/month
Lightweight Index + Graph
1× Cost
Step 1: Lightweight index (key IDs only)
user_12345
sess_abc
Step 2: Traverse within session graph
RequestUserOrderAuthProfileNo indexneeded!
Storage Only
$62,517
/month
$-62%Cost Reduction
Save $1.2M/year

Organization-Level Data Isolation

Each organization has independent data domains and keys, strictly isolated from each other.

Independent API Key with encrypted channels, data stored by organization domains
Session graphs as boundaries, cross-organization access and traces invisible
Permissions and roles based on organization isolation, fine-grained RBAC with audit
Native OpenTelemetry compatible, user traces and Softprobe mutually isolated
Org ADataKeysOrg BDataKeysAccess DeniedComplete IsolationData, keys, and traces are 100% isolated

Dead Simple Setup. Zero Code.

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

Ready to see the full picture?