Go Traffic Load Monitor & Generator

This project includes 3 Go-based tools designed to simulate, monitor, and stress-test web server traffic in a coordinated and visual way.

🔧 Tools Overview

Tool Description
webmonitor.go Launches a local web server with a live dashboard showing real-time request count and traffic load levels.
trafico.go Simulates user-like HTTP browsing traffic to common or custom URLs.
siege.go High-performance HTTP load generator (Siege-style) with concurrency control and metrics reporting.

🚀 How to Use

1. Start the Monitoring Web Server

Live Dashboard
go run webmonitor.go

This starts a web server on port 8080. Once running, it will auto-open your browser or you can visit it manually at:

http://:8080/monitor

You'll see a real-time traffic dashboard with gauges for low, medium, and high load thresholds.

2. Generate Traffic with trafico.go

This simulates real HTTP GET requests to popular websites or a specific target:

go run trafico.go http://:8080

You can also run it without arguments to use predefined popular URLs (e.g., facebook.com, youtube.com, instagram.com).

You'll be prompted for:

  • • Session duration in minutes
  • • Delay between requests
  • • Number of concurrent workers

3. Stress Test with siege.go

This tool simulates high-concurrency load (similar to siege):

go run siege.go http://:8080 500 1

Arguments:

  • • Target URL
  • • Number of concurrent workers
  • • Duration (in minutes)

🧪 Test Workflow Example

1. In Terminal 1, run the monitor:

go run webmonitor.go

2. In Terminal 2, simulate browsing traffic:

go run trafico.go http://192.168.1.100:8080

3. In Terminal 3, fire off the stress test:

siegee 192.168.142.22:8080 50 1
[INFO] Target: http://192.168.142.22:8080
[INFO] Concurrency: 50
[INFO] Duration: 1m0s

========= Siege Report =========
Transactions:        890580 hits
Availability:        100.00 %
Elapsed time:        60.00 secs
Response time:       0.00 secs
Transaction rate:    14843.00 trans/sec
Successful transactions: 890580
Failed transactions:     0
Live Dashboard Live Dashboard