Commit Graph
979 Commits
Author SHA1 Message Date
igorljubuncicandLeonid Bugaev c092718ee6 Add support for building snaps (#625) 2019-02-16 09:51:54 +01:00
bruce34andLeonid Bugaev 84e99a8bb0 Fix array out of bounds during using http-set-header (#627)
Happens for example when payload stops at a '-' and we are searching for
Accept-Encoding.The method has been simplified and now does full case
insensitivity. Performance checking, on x64, it is ever so slightly
faster than the original.
2019-02-16 09:49:29 +01:00
bruce34andLeonid Bugaev 279aa3fc3f More robust chunked encoding finished check. (#628) 2019-02-16 09:41:10 +01:00
Leonid Bugaev 408f1d0f31 Merge branch 'bruce34-b34-pcap-immediate-mode' 2019-02-16 09:40:18 +01:00
Leonid Bugaev f57703ee5c Merge branch 'b34-pcap-immediate-mode' of https://github.com/bruce34/goreplay into bruce34-b34-pcap-immediate-mode 2019-02-16 09:40:02 +01:00
Leonid Bugaev 264d8cf00e Add more error handling 2019-02-16 09:37:00 +01:00
bruce34andLeonid Bugaev 6f70a939f4 Add setting for copyBufferSize, defaults to 5 Mbytes (#630) 2019-02-16 09:34:53 +01:00
bruce34andLeonid Bugaev c693938ef9 Allow a range of output-http-workers with min and max. (#631)
This provides the ability to have a maximum number of workers, yet still allow scaling down. The scaling down is important to stop timeouts happening with under-utilised workers.
Note, although the code has workers_min, workers_max, the settings option --output-http-workers has remained and becomes the "max" value. I did this to hopefully not break too much for others. The min will default to 1, so users will see dynamic scaling unless they also set min to be the same. This will probably benefit them as they will avoid potential timeouts when the traffic reduces. But something to be aware of.
2019-02-16 09:32:56 +01:00
bruce34andLeonid Bugaev 267d6d0e2b Add adjustable output-http-stats-ms (#633)
This adds an option to log output-http-stats at a period desired.
2019-02-16 09:29:51 +01:00
bruce34andLeonid Bugaev e9a5cc19b5 Configurable http_output queue length (#634)
Makes sense!
2019-02-16 09:27:44 +01:00
bruce34andLeonid Bugaev d8cace421e Configurable override snaplen to 64k for virtualized environments (#637) 2019-02-16 09:26:39 +01:00
Miquel BandLeonid Bugaev bf98a636c4 Using scratch image to execute goreplay (#619)
We could minimize the docker image final size using scratch image
2019-02-16 09:17:11 +01:00
bruce34andLeonid Bugaev 476ed808f9 Bugfix index out of bounds (\r\n\r\n split over two packets) (#632) 2019-02-16 09:03:17 +01:00
Leonid Bugaev ec3f104c8c Add way to dynamically profile
Added new `--http-pprof` option, example: "--http-pprof :8181"
It starts web server on given address, and expose special /debug/pprof
endpoint

See https://golang.org/pkg/net/http/pprof/
2019-02-16 08:59:43 +01:00
Leonid Bugaev 85c6070775 File output now case limit by size
Added new `output-file-max-size-limit` option
2019-02-16 08:49:31 +01:00
Leonid Bugaev b4a2c018c1 Fix request filtering issue
https://github.com/buger/goreplay/issues/648
2019-01-25 20:00:22 +01:00
Leonid Bugaev fb3870d68c Fix --http-allow-header to filter non existent headers
Fix https://github.com/buger/goreplay/issues/604
2019-01-24 23:47:14 +01:00
eladandLeonid Bugaev 7b0f81b82f Keep headers request during redirects (#645)
During redirect, send original request headers payload, just with modified location.
2019-01-20 20:14:37 +01:00
Vladimir DubovikandLeonid Bugaev 633cfd5fb4 support value with "=" in httpCookie() 2019-01-07 19:59:50 +01:00
bruce34andLeonid Bugaev a5a3012347 Allow commons tgzs to be cached 2019-01-03 23:06:30 +03:00
bruce34 393eb74f9c Add setting for pcap immediate mode to fix timeouts waiting for packets 2018-12-17 16:24:51 +00:00
Leonid Bugaev 52ed8b4d1e Add protection for malformed records 2018-08-24 16:35:04 +05:00
Leonid Bugaev 29139e9eda Fix prefixer panic when body is too small 2018-08-10 21:34:00 +05:00
myzhanandLeonid Bugaev 9fd7a46e7e FIX: miscalculation of the mean value 2018-08-08 17:23:33 +05:00
chainhelenandLeonid Bugaev f85bb29327 remove unused "copy" 2018-08-06 11:44:33 +05:00
Leonid Bugaev 68082bfb11 Fix typo 2018-08-02 21:41:36 +05:00
Leonid Bugaev 28d646d118 Merge branch 'master' of https://github.com/buger/gor 2018-08-02 21:39:42 +05:00
Leonid BugaevandGitHub c93ff3598c Fix prettifier buffer overflow 2018-08-02 21:36:47 +05:00
Scott AlbertsonandLeonid Bugaev 0bc3fba5d0 Add a "Reviewed by Hound" badge 2018-08-01 13:28:52 +05:00
Alex ZvoryginandLeonid Bugaev 65fd1983b1 Fix broken link to goreplay.com -> goreplay.org 2018-07-13 09:09:33 +05:00
Alex ZvoryginandLeonid Bugaev 88972ff301 fix typo in ruby middleware example
continiously -> continuously
2018-07-04 13:55:58 +05:00
Samuel GullikssonandLeonid Bugaev 85a7bc1e9a Fix typo in Python middleware example. 2018-06-28 09:18:26 +05:00
Alex ZvoryginandLeonid Bugaev 36a8845ffe Fix typo 2018-06-28 09:18:02 +05:00
Leonid Bugaev 9eb6ab262b Add "deleteHttpHeader" 2018-06-22 22:11:29 +05:00
Chintan PatelandLeonid Bugaev 896dbe312a Exporting the httpHeaders method
This method export was missing from last commit (when `httpHeaders` was created)
2018-06-08 08:09:10 +05:00
Leonid Bugaev edae33717e Improve start/end time calculation 2018-05-28 10:05:07 +03:00
Leonid Bugaev c5d1112e7a Add way to control packet capture buffer size and optimize snaplen
Added `—input-raw-buffer-size` - Controls size of the OS buffer (in
bytes) which holds packets until they dispatched. Default value depends
by system: in Linux around 2MB. If you see big package drop, increase
this value.

Additionally snaplen (max number of bytes being read for each packet)
now dynamically set based on interface MTU + max header size. In most
situations it should reduce package drop, because each packet will
consume less space in buffer.
2018-05-27 12:31:47 +03:00
Jordan CrawfordandLeonid Bugaev 18610d3555 Solve issue 535 missing responses to HEAD requests, and add a test to verify 2018-05-23 20:53:01 +03:00
bruce34andLeonid Bugaev 0fea94a76c Fix 100 continue (#562)
* On write error, disconnect to force a new connection

* Don't loose bytes checking connection isAlive

* Soak up any 1xx return codes, catching up to the real return code
2018-05-23 20:49:02 +03:00
defa sunandLeonid Bugaev 7b1544157f fix out of range index in headerIndex, github.com/buger/goreplay/issues/578 2018-05-23 20:33:32 +03:00
Daniel RoopandLeonid Bugaev 4e46bb46af Updated README to include httpHeaders 2018-05-23 20:22:58 +03:00
Daniel RoopandLeonid Bugaev b1092d1567 Created helper to return all http headers for node middleware 2018-05-23 20:22:58 +03:00
Leonid Bugaev 0c0ef97b67 Add additional tests 2018-05-12 15:17:26 +03:00
Leonid Bugaev fe6cfd90fe Fix responses when header end line separated by multiple packets 2018-05-10 22:19:56 +03:00
Leonid Bugaev c9fe4a11ad Fix proto.Body when body < 4 bytes 2018-05-10 22:19:08 +03:00
Leonid Bugaev e9294aeb5f Fix emitter typo 2018-05-10 22:18:47 +03:00
Leonid Bugaev cb1ae0e7c0 Revert "Update middleware.js"
This reverts commit 2db143aaef.
2018-04-24 19:42:37 +03:00
Oleg BlokhinandLeonid Bugaev 2db143aaef Update middleware.js
fix request filtering in middleware.js
2018-04-24 19:42:05 +03:00
UbuntuandLeonid Bugaev a65256d707 Fixed kafka client run of brokers and index out of range issues 2018-02-27 20:17:45 +03:00
Rajat VermaandLeonid Bugaev 1f62555ca8 Update README.md
Fix minor typos
2018-02-27 20:17:14 +03:00