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

Upstream aware toxics #244

Open
chbatey opened this issue Feb 11, 2019 · 3 comments
Open

Upstream aware toxics #244

chbatey opened this issue Feb 11, 2019 · 3 comments

Comments

@chbatey
Copy link

chbatey commented Feb 11, 2019

I'd like to be able to write toxics that are upstream aware e.g. drop if client's IP = x.

This will be useful for testing peer 2 peer systems rather than client server.

The usecase I have in mind is for a service that forms a cluster e.g. a Cassandra Cluster or an Akka Cluster I'd like to have toxi proxy between each P2P connection and be able to simulate a node misbehaving. As these are P2P systems each node will connect to a subset of other nodes so I only wan to disrupt incoming traffic from a given source.

To support this I think we'd need to add more information to ToxicStub or create a new toxic type.

WDYT? Is this something you'd accept if I worked on it?

@jpittis
Copy link
Contributor

jpittis commented Feb 11, 2019

Heya @chbatey!

One way to do that would be to add more information about the connection to the ToxicStub as you suggest. I can't think of a better approach. I think we'd accept something like this.

(Mostly unrelated, FYI that #50 protocol aware toxics have been a WIP for a while.)

@chbatey
Copy link
Author

chbatey commented Feb 13, 2019

Thanks @jpittis I raised #246 and have been testing with it and some custom toxics and it works. We could instead not have a toxic added to the link rather than all the toxics that want to be client specific doing the check.

@xthexder
Copy link
Contributor

I'm not sure how useful this is, since it's a fairly old PR, but some of the code in #132 might be helpful for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants