Commit Graph
948 Commits
Author SHA1 Message Date
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
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
Leonid Bugaev d265594b00 Ensure that tcp-output do not loose messages when reconnecting 2018-02-07 20:29:19 +02:00
Leonid Bugaev 0097c599df Fix response latency calculation
Previously latency calcualted as Response.End - Request.Start
Where both End and Start is a last and first packets

This calcualtion is wrong, because it is total roundtrip

Correct server latency will be Response.End - Request.End

In addition added new `--input-raw-timestamp-type` option
which allows choose more precise packet timestamp source (if available).
2018-02-05 21:47:48 +02:00
Ohad BasanandLeonid Bugaev f8a1b9dde6 fix error in bash example 2018-02-03 13:17:20 +02:00
Ohad BasanandLeonid Bugaev 22a67df6c0 fix wrong param in docs 2018-02-03 13:17:20 +02:00
Leonid Bugaev 5bd47ee1df Merge branch 'master' of https://github.com/buger/gor 2018-01-10 21:24:38 +02:00
Leonid Bugaev 45d7527128 Increase middleware buffer to avoid overloads when prettifier returns buffer larger then original 2018-01-10 21:23:55 +02:00
Daniel AlbuquerqueandLeonid Bugaev bf8198d639 Hardcode alpine version and bump version of goreplay from 16.0.2 to 16.1 2017-11-15 21:20:44 +02:00
Mel ShaferandLeonid Bugaev 3acec0fd42 fix typo in the README 2017-10-31 09:15:00 +02:00
noibarandLeonid Bugaev cc005ddcbb Fix comment on tcp message methods (#521)
* Fix comment on tcp message methods

* Update tcp message constructor documentation
2017-10-23 18:26:14 +03:00
Leonid Bugaev debb265d6d Fix memory leak 2017-10-04 20:18:05 +03:00
Leonid Bugaev c5f12b567b Add log helper and fix memory leak 2017-09-24 22:32:03 +05:00
Leonid BugaevandGitHub 4255d4155f Improve handling for 100-continue requests for clients ignoring response (#513)
Some clients, even if have `Expect: 100-continue` in request, start
sending data without waiting approval from the server. More over, there
is cases when response “100 Continue” is received, client changes TCP
seq, and following requests start having valid sequences, based on
response one.

This change should address this bugs.

As small addition extended list of http methods, to fully support
webdav.
2017-09-15 19:25:46 +05:00
Leonid Bugaev 4bb64be27e Fix panic when reading too big response in debug mode 2017-09-14 22:35:45 +05:00
Leonid Bugaev e310fc8369 Fix zero-length 100-continue packets
Should fix https://github.com/buger/goreplay/issues/496
2017-09-03 22:11:42 +05:00
Leonid BugaevandGitHub c8f4493eca Update COMM-LICENSE
Misc improvements
2017-08-28 19:26:24 +05:00
Aggelos AvgerinosandLeonid Bugaev d309650589 Allow all HTTP methods to have body (#479)
HTTP specification in section 4.3 (Message Body) states:

"A message-body MUST NOT be included in a request if the specification of the
request method (section 5.1.1)"

Section 5.1.1 has links to the description of each method (sections 9.2
to 9.9). None of those sections prohibit the transfer of a message body,
it just points out how each method should be treated server-side.
2017-08-22 19:28:21 +05:00
田欧andLeonid Bugaev 17f6c59061 remove some else statements for reducing indent (#488)
* remove else

* remove else
2017-08-22 19:22:59 +05:00
Ashwin JayaprakashandLeonid Bugaev 9cf1ad65df Filter requests using regex on base64 decoded userId:passwd of basic auth (#475)
Example snippet: --http-basic-auth-filter "^customer[0-9].*"
2017-08-22 19:16:55 +05:00
田欧andLeonid Bugaev 16b6a3cc31 Adjust package order (#487)
* format package order

* format package order

* format package order

* format package order and format code by fmt
2017-08-22 19:15:01 +05:00
Ivan KlishchandLeonid Bugaev dfb67b4456 Fixed Dockerfile that fails during docker build (#472)
* Fixed Dockerfile that fails during docker build

* make build should use Dockerfile.dev since other make targets use it
2017-08-22 19:14:32 +05:00
François-Xavier PonscarmeandLeonid Bugaev efce146244 fix: add basic auth support in elastic URI (#433)
* fix: add basic auth support in elastic URI

* more simple URI check and index extract

* chore: remove dead code
2017-08-22 19:13:46 +05:00
SoulZxzandLeonid Bugaev eb8eb1db52 fix file rotate issues 2017-08-22 19:12:51 +05:00
Amir MajediandLeonid Bugaev d7ffc3c359 Adding a python middleware example file 2017-08-22 17:35:59 +05:00
Leonid Bugaev 1c3cd633d1 Fix bpfFilter 2017-08-22 17:20:45 +05:00
Leonid Bugaev b8befff286 Sync makefile 2017-08-22 17:07:37 +05:00
Leonid Bugaev 2b79791fe6 Reading from pcap file should properly set src and dest ports 2017-08-22 17:07:37 +05:00
Leonid Bugaev 39ebff56b4 Update to use latest docker.dev 2017-08-22 17:07:37 +05:00
thinkerouandLeonid Bugaev c138fa9739 format file 2017-08-11 14:40:55 +03:00
thinkerouandLeonid Bugaev 89c34c6bf5 format file 2017-08-11 14:40:55 +03:00
tianouandLeonid Bugaev a1054b10e8 fix typo 2017-08-11 06:33:26 +03:00
Leonid Bugaev cf402a1d0e Add option to specify custom BPF filter
Can be useful in case of non standard network interfaces when like
tunnels or SPAN ports, when IP of interface does not match with IP of
packet.

Can be used to read traffic from multiple ports and interfaces at once
as well.
2017-07-27 17:56:33 +03:00