explaingit

probelabs/goreplay

19,285GoAudience · ops devopsComplexity · 3/5MaintainedLicenseSetup · moderate

TLDR

Record live HTTP traffic from your server and replay it against test environments to verify deployments and changes without disrupting real users.

Mindmap

mindmap
  root((GoReplay))
    What it does
      Records live traffic
      Replays to staging
      Zero production risk
    How it works
      Listens passively
      No code changes
      Runs on same machine
    Use cases
      Test deployments
      Verify config changes
      Stress test realistically
    Tech stack
      Go language
      Network capture
      HTTP replay
    Audience
      DevOps engineers
      QA teams
      Backend developers

Things people build with this

USE CASE 1

Verify a new deployment won't break anything by replaying real user traffic against staging before going live.

USE CASE 2

Test infrastructure or configuration changes (database, caching, load balancer) with actual traffic patterns instead of synthetic tests.

USE CASE 3

Stress-test your application under realistic load by replaying peak traffic from production.

USE CASE 4

Catch edge cases and bugs that synthetic tests miss by using genuine user behavior patterns.

Tech stack

GoNetwork captureHTTP

Getting it running

Difficulty · moderate Time to first run · 30min

Requires network packet capture privileges (root/admin) and Go build environment to compile.

Open-source tool available for free use; a paid PRO extension offers advanced features like binary protocol support and cloud storage integration.

In plain English

GoReplay is an open-source tool written in Go that solves a common testing headache: how do you test your application with realistic traffic without disrupting real users? Instead of writing synthetic tests that may not reflect what actual users do, GoReplay quietly listens in the background on your server's network interface, records all live HTTP traffic, and replays it against a test or staging environment. No changes to your production setup are required, it runs alongside your service on the same machine. This makes it extremely useful for verifying deployments before they go fully live, checking that infrastructure or configuration changes won't break anything, and stress-testing under real-world load patterns. Because it listens passively rather than sitting in the middle of your traffic flow, there is zero risk of it slowing down or breaking production requests. You would reach for GoReplay when you want high confidence that a new release won't surprise you, using genuine traffic rather than guesses about what users will do. A paid GoReplay PRO extension adds support for binary protocols, cloud storage replays, and TCP session replication for teams with more advanced needs.

Copy-paste prompts

Prompt 1
How do I set up GoReplay to record traffic from my production server and replay it to a staging environment?
Prompt 2
Show me how to use GoReplay to test a database migration without risking production downtime.
Prompt 3
What's the best way to configure GoReplay to capture and replay traffic for a microservices architecture?
Prompt 4
How can I use GoReplay to load-test my API with real traffic patterns from yesterday's peak hours?
Prompt 5
Explain how GoReplay's passive listening works and why it won't slow down my production traffic.
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.