Product
Less time investigating.
More time shipping.
Use cases
Root Cause
pgbouncer crashed 6h ago and was not restarted, causing 847 direct connections to flood PostgreSQL and trigger the OOM killer.
Timeline
- 03:12PagerDuty alert: high memory
- 03:12Fawdy connects via SSH
- 03:14847 idle connections found
- 03:15Root cause identified
Action Items
How it works
Read the evidence. Connect the dots. Write the RCA.
Fawdy works through logs, processes, and configs to build a complete picture of what happened — then writes it up.
Log correlation
Reads journald, syslogs, and application logs. Cross-references timestamps and error patterns across services to reconstruct the sequence of events.
Process & network tracing
Maps running processes, open ports, and active connections. Identifies what's talking to what and where things broke down.
Configuration analysis
Reads service configs, checks for misconfigurations, and traces dependency chains. Finds the setting that changed or the config that was never updated.
Ticket-driven investigation
Connects to Jira or Linear. When an issue comes in, Fawdy dispatches an investigation automatically and posts its findings back to the ticket.
Safety
Investigate freely. Change nothing.
Every command goes through a 4-step safety pipeline before it reaches your server. Destructive operations are blocked at the AST level, not with fragile regex or easily bypassed rules.
Parse
Commands are parsed into an AST. Shell tricks and injection attempts are rejected at the syntax level.
Validate
Checked against a curated allowlist. Default-deny.
Reconstruct
Arguments are re-quoted to prevent injection before reaching your server.
Execute
Runs over SSH on Linux or WinRM on Windows, with timeouts and output truncation. Read-only. Always.
Powered by ShellGuard
Open SourceThe core of how Fawdy safely connects to your servers is open source. ShellGuard gives any LLM read-only shell access over SSH so everyone can build on top of it, not just us.
