Every investigation starts with a trace.
Trace helps you move from access logs to an investigation you can explain.
Analyze logs- 01
Analyze your logs
Upload a file or paste requests. A trained detector ranks unusual behavior against its learned baseline.
- 02
Review the context
Open a candidate time range. Inspect original requests, nearby events and earlier account activity.
- 03
Document your findings
Retain evidence, arrange episodes and add notes. Save the investigation or export a report with the original records.
How detection works
Models score requests against patterns learned from earlier traffic, using account and source history, endpoint rarity, response codes and activity bursts. High anomaly percentiles highlight unusual requests.
Explore the models and benchmarks →No investigation loaded
Analyze logs or load a saved investigation to review results.
Models
The models on this site were trained on the Log & Order challenge dataset, which contains 180,800 access log requests from August 2025 through March 2026. They provide a working example of detecting unusual activity in an organization’s traffic. To train on your own access logs, host Trace yourself, set the log path and training cutoff in bench/data.py, then run the bench.train Python module.
Training
The deployed Gaussian mixture and deep autoencoder models were fitted on requests recorded from August 2025 through February 2026. Each request is represented by features describing account and source address history, endpoint rarity, response patterns and recent request bursts. For example, a successful response for a resource that an account was previously denied contributes to its anomaly score.
Benchmarks
Average precision summarizes precision and recall across score thresholds; higher values indicate better separation of the annotated requests. Recall@50 counts how many of the 22 annotated requests appear in the first 50 results. The 95% intervals were estimated from 1,000 bootstrap samples. These results describe one annotated incident, and the overlapping intervals for GMM and the deep ensemble do not demonstrate a clear performance difference.
| Model | View | Average precision | 95% CI | Recall@50 | Notes |
|---|---|---|---|---|---|
| Deep AE ensemble (×7) | CTX | 0.918 | [0.79, 1.00] | 20/22 | GPU; best recall (21/22 at operating point) |
| GMM (k=4, diag) | CTX | 0.909 | [0.77, 1.00] | 20/22 | Trains in <1s; no GPU; recommended |
| Ensemble | CTX | 0.907 | [0.77, 1.00] | 20/22 | No better than GMM alone |
| RuleNovelty (no ML) | CTX | 0.867 | [0.71, 1.00] | 19/22 | Interpretable; best ROC (0.990) |
| ECOD | CTX | 0.862 | [0.70, 0.99] | 19/22 | |
| KMeans | CTX | 0.836 | Not reported | 20/22 | |
| GPT 5 (blind LLM) | Not applicable | 0.324 | Not reported | 10/22 | Recall 0.77; precision 0.07; $4.72/run |
| Claude Opus 5 (blind LLM) | Not applicable | ≤0.11* | Not reported | 6/22 | Recall 0.77; precision 0.03; 614 false positives. *Partial run (154/192 windows; credit exhausted). |
| KMeans | RAW | 0.646 | Not reported | 16/22 | Same algorithm, naive features |
The benchmark compares how effectively each method ranks unusual requests in the challenge dataset. Models were fitted on traffic from August 2025 through January 2026, with settings selected using simulated anomalies in February. March traffic was reserved for evaluation against 22 manually annotated requests, including two contextual records.
The table shows the research comparison used to assess the detection methods. The deployed models were subsequently fitted on the full history from August 2025 through February 2026. CTX uses contextual features from earlier account behavior; RAW uses the access log fields directly.
Start an investigation
Upload an Apache log file or paste requests to find unusual activity.
Loading saved records and notes…
When candidate requests occurred
Candidate investigations
Investigation
Investigation notes
Notes are included in exported investigation reports.