Siege is a powerful tool designed to generate API documentation and insights directly from network traffic, specifically tailored for high performing teams. By running this listener alongside your server or container, you gain the ability to infer API schemas and track essential API-level metrics without compromising data privacy or security.
- API Schema Inference: Automatically deduce the structure of your API traffic.
- Metric Tracking: Monitor key metrics at the API level.
- Data Privacy: Request or response bodies are never sent to our servers.
- Data Sanitization: Only sanitized data, including schemas and metrics, are transmitted.
The Siege Listener can be installed on any system you choose, whether it's in the cloud or on premise, as long as the traffic is unencrypted. For instance, if you have Nginx installed, Siege Listener should be installed behind Nginx, where traffic is decrypted.
Request an API key here
Docker is the fastest and simplest way to install Siege Listener.
Please go to Docker website to install Docker CE/EE. Choose the right installation guide for your system.
Ubuntu: sudo apt-get install libpcap-dev
Centos/Redhat: sudo yum install libpcap-devel
Mac: brew install libpcap
docker run -d --network=host -e SIEGE_APIKEY={YOUR SIEGE API KEY} -e SIEGE_FILTER="tcp and port 80" -e SIEGE_LOG=debug public.ecr.aws/v1v0p1n9/siegelistener:latest
You may opt for this method if you want to listen to traffic on the host machine.
Ubuntu: sudo apt-get install libpcap-dev
Centos/Redhat: sudo yum install libpcap-devel
Mac: brew install libpcap
Configuring Siege is straightforward and can be done by creating a .env
file in the directory of your choice. like such vi .env
.
SIEGE_APIKEY
: Unique key that identifies your in our multi-tenet infra.SIEGE_DEVICE
: Specifies the network device to listen on. Uselo
for Ubuntu,eth0
for Centos,lo0
for Mac.SIEGE_FILTER
: Defines the packet filters for analysis. We recommend specific TCP filters liketcp and port 80
ortcp
for all ports.
GOMEMLIMIT
: Set a memory limit that suits your environment for optimal performance.
Download the latest and greatest binary directly from the Releases page
Make sure the binary is runnable chmod +x ./siegelistener
Run binary in background: ./siegelistener &
Go to https://dashboard.siegeai.com/ to see your API docs generated live along with endpoint level metrics!
For support, feature requests, or to contribute to the project, please visit our GitHub Issues page.