Quick Diagnostics
Before troubleshooting, run the built-in diagnostics:Installation Issues
”Permission denied” when running
Problem: Cannot run sensor without sudo. Cause: Sensor requires kernel capabilities for eBPF. Solutions:-
Run with sudo (simplest):
-
Set capabilities (run without sudo):
-
Verify capabilities:
“BTF not found”
Problem: System check fails with BTF not found. Cause: Kernel doesn’t have BTF (BPF Type Format) support enabled. Check:“No SSL libraries found”
Problem: System check or SSL info shows no OpenSSL libraries. Cause: OpenSSL not installed or not in standard location. Check:“Failed to attach eBPF program”
Problem: Sensor fails to start with eBPF attach error. Causes:- Kernel too old (< 4.18)
- Missing kernel config options
- Resource limits too low
-
Check kernel version:
-
Check dmesg for errors:
-
Increase resource limits:
-
Or via systemd:
Add:
-
Verify BPF filesystem:
Package installation fails
Problem:dpkg or dnf installation fails.
Ubuntu/Debian - Missing dependencies:
Runtime Issues
No events appearing
Problem: Sensor running but no events captured. Diagnostics:-
Check if sensor is actually running:
-
Check if eBPF programs are loaded:
-
Check logs for errors:
-
Verify AI activity is happening:
- Are you making actual API calls?
- Is your API key set? (
echo $OPENAI_API_KEY)
-
Check if SSL capture is working:
-
Check SSL library detection:
- NVM Node.js or pyenv Python - See Edge Cases below
- Go applications - Use different TLS implementation (not yet supported)
- Applications using rustls - Rust-native TLS (not yet supported)
Events captured but incomplete
Problem: Events appear but are missing content. Cause: Redaction mode is set tosafe or minimal.
Check config:
-
Enable full capture (for debugging):
-
Or update config:
full mode in trusted environments!
High CPU usage
Problem: Sensor using >10% CPU. Diagnostics:- Very high event rate (>1000 events/sec)
- Too many processes being monitored
- TUI/Web UI enabled in high-load environment
-
Filter by specific processes:
-
Disable UI in production:
-
Increase systemd CPU limit:
Add:
High memory usage
Problem: Sensor using >1GB memory. Diagnostics:- Very large events (huge prompts/responses)
- Memory leak (rare, please report!)
- Buffer not draining to export
-
Check export is working:
-
Enable batched export:
-
Set memory limit:
Add:
Service keeps restarting
Problem: Service crashes and restarts repeatedly. Diagnostics:-
Out of memory:
Solution: Increase memory or set limits
-
Permission issues:
Solution: Check file permissions, capabilities
-
Config file errors:
Edge Cases: NVM/pyenv
NVM Node.js not captured
Problem: Node.js installed via NVM doesn’t show events. Cause: NVM installs Node.js with statically linked OpenSSL in~/.nvm/.
Solution 1: Specify binary path
pyenv Python not captured
Problem: Python installed via pyenv doesn’t show events. Cause: pyenv installs Python with bundled OpenSSL in~/.pyenv/.
Solution:
Docker containers not captured
Problem: Apps running in Docker containers not showing events. Cause: Sensor running on host can’t see into containers by default. Solution: Run sensor IN the container or use privileged Docker mode. See Docker Guide for details.Export Issues
Events not writing to file
Problem: JSONL file not being created or updated. Diagnostics:-
Create directory:
-
Check permissions:
-
Verify config:
OTLP export failing
Problem: Events not reaching OTLP collector. Diagnostics:-
Verify endpoint:
-
Check firewall:
-
Enable debug logging:
Debug Mode
Enable verbose logging for troubleshooting:Via command line
Via systemd
Log levels
RUST_LOG=error- Errors onlyRUST_LOG=warn- Warnings and errorsRUST_LOG=info- Default levelRUST_LOG=debug- Verbose debuggingRUST_LOG=trace- Very verbose (includes eBPF events)
Module-specific logging
Getting Help
Collect Diagnostics
When reporting an issue, include:-
System check:
-
SSL info:
-
Service logs:
-
System info:
-
eBPF programs:
Report an Issue
GitHub Issues: https://github.com/oximyhq/sensor/issues Include:- Output from diagnostic commands above
- Steps to reproduce
- Expected vs actual behavior
- Anonymized config file (remove secrets!)
Community Support
- GitHub Discussions: https://github.com/oximyhq/sensor/discussions
- Documentation: https://sensor.oximy.com
Next Steps
- Production Deployment - Optimize for production
- Running as a Service - Manage systemd service
- Distribution Support - Check compatibility