Skip to content
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

Feedback / suggestions / comments welcome! #56

Open
ysawa0 opened this issue May 23, 2019 · 3 comments
Open

Feedback / suggestions / comments welcome! #56

ysawa0 opened this issue May 23, 2019 · 3 comments
Labels
help wanted Extra attention is needed

Comments

@ysawa0
Copy link
Contributor

ysawa0 commented May 23, 2019

No description provided.

@ysawa0 ysawa0 added the help wanted Extra attention is needed label May 23, 2019
@owenville
Copy link

I've got a use case that Shadowreader would be delightful for: load testing resources through an AWS API Gateway, by mirroring traffic from one stage to another stage.

We have two resource "lanes", each receiving traffic from the same API Gateway endpoint via Stages (one stage per lane.) The primary stage typically routes traffic to the primary lane, but occasionally we route primary stage traffic to the secondary lane while updating the primary lane.

We'd get value out of mirroring primary stage traffic to the secondary stage in (near) real time, such as testing resized/updated resources in the secondary lane with real production traffic and observing the relative performance in (near) real time.

@ysawa0
Copy link
Contributor Author

ysawa0 commented Jun 27, 2019

I have looked into this a bit before and I believe it should be possible as API Gateway access logs can now be sent to CloudWatch:

https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html

One note is that there would need to be a process (Lambda) to tail the CW logs and ship them to S3 so that ShadowReader can parse and replay them.

@dskrvk
Copy link

dskrvk commented Oct 1, 2019

I went through the documentation, and looks like this only works for GET requests with no body. My team would like to use this for an API that uses different HTTP verbs, some of which have bodies. I know ELB doesn't capture request body, so this might require a different approach.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants