-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gor traffic copy write file error, partly out of order #1008
Comments
Hi! What version of GoReplay do you use? Is this output from a recorded file? Can you show a command which you use to record this traffic? And finally if it is easy to replicate, any chance you can record small portion of traffic and send me to support@goreplay.org? Thank you! |
gor version is 1.2.0 Command executed:sudo ./gor --input-raw :80 --output-file ./gor.log --exit-after 600s --output-file-append --http-allow-header Host:xxx.xxx.com --http-allow-url /v1/xxx/unread_count.json -http-disallow-url /v1/xxx/detail.json --http-disallow-url /v1/xxx/ban_list.json --http-allow-method GET Currently we are using it online, so it involves security issues, it may not be convenient to give the copied files。sorry |
I would recommend trying 1.3, this code has changed a lot |
gor version : 1.3.0 As shown above, using gor1.3.0 to copy traffic, it is found that the problem is more serious. There are a large number of missing request lines. I guess that there may be a concurrency problem in the process of writing files. |
Indeed it is very weird!
I wonder if it happen same if you remove http-set and http-allow filters...
Just want try to isolate the issue.
--
Sincerely yours, Leonid Bugaev
https://goreplay.org - test your system with real data
@buger <https://twitter.com/buger> - me on twitter
|
@wjyGithub looks bad indeed! Can you try latest 1.3.3 pls? |
About this question,I may need to add background。 The scenario where this problem occurs is usually when the QPS is relatively high. Our online QPS is usually more than 10,000. At the same time, the online connection is continuously maintained。 I want to reproduce this problem locally, but I cannot simulate a higher QPS. I have a guess here, is it because the Http connection is KeepAlive when the gopacket library captures the message, it can’t distinguish the front and back requests correctly, causing the previous request to be overwritten by the next request |
As shown above, Access-Token contains the next request line information
The text was updated successfully, but these errors were encountered: