-
Notifications
You must be signed in to change notification settings - Fork 327
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
API Umbrella 0.7 Not Passing Traffic To Back-End #107
Comments
Hm, if you could take a look or share these log files, that might help pinpoint the issue (but these may contain information on your API backend, so if that is sensitive information, you may want to be careful sharing):
|
It smells like it could be an issue with those new DNS improvements you mentioned. In router-error.log:
In config-reloader.log:
I can curl for staging.api.mygrocerydeals.com from the API proxy host without an issue. |
From gatekeeper.log:
log-processor.log
|
Ah, I think you're likely right that it's related to the DNS changes. What are the contents of the |
dnsmasq.log:
|
Is there any new mandatory configuration in |
No additional configuration should be necessary for dnsmasq (and for a bit more context, we added dnsmasq to act as a caching DNS server so we can hammer the DNS server a little more freely, and also act as a cache, since we've seen a number of flakey instances where our DNS servers go down briefly). Dnsmasq should be pretty transparent (it picks up your current name servers out of
(If you don't have the Also, what operating system is this on? Sorry for the trouble, but thanks for reporting this! |
dig staging.api.mygrocerydeals.com
dig @127.0.0.1 -p 14007 staging.api.mygrocerydeals.com
No worries. We're running Ubuntu 14.04. |
Hm, well that's good in the respect that dnsmasq seems to be behaving as expected, but bad in the respect that I don't know what would be causing this then. I'm standing up a fresh Ubuntu 14.04 box that I can do more detailed debugging on later today, but in the meantime, was there more to your Also, I hate to pull an IT Crowd, but have you tried completely restarting API Umbrella ( |
Here is the full config-reload.log:
|
Oh, and restarting had no effect. Here is the packer script I used to build the machine image:
And my config file:
|
@GUI, I can grant you ssh access to the box if it would help to troubleshoot the issue. If so, I'll need your SSH public key and the public IP address you'd be connecting from. You have my email from the message I sent you a week or so ago. |
Thanks for the offer. I was actually able to replicate this issue on a local Ubuntu 14.04 box with your same config, so that definitely simplifies things. I haven't had a chance to debug it yet, but I should be able to look at it a bit later today. Now that I can replicate it locally, I'm hoping it should be fairly straight forward. |
I believe I've pinpointed the issue, and apologies for releasing v0.7 like this. As a very short term work around, can you try running this after starting up API Umbrella? $ sudo /opt/api-umbrella/embedded/bin/supervisorctl -c /opt/api-umbrella/etc/supervisord.conf restart config-reloader Does that make things work for you? In my tests that restart command fixes things for me. However, in my tests rebooting API Umbrella also fixes this issue, so I'm seeing slightly different behavior. But I think this same bug might lead to a race condition on startup, so that could also explain why your system has remained broken across restarts (I've just gotten lucky on my reboots, and you've gotten unlucky). If that |
The I think this just serves as another argument for the new architecture. It's extremely difficult to thoroughly test an open source project with so many moving parts. You've done a masterful job of hiding the complexity under the hood -- sometimes almost too good of a job -- but you just can't avoid all the places there are for gremlins to hide. :) |
Thanks for reporting this and your help debugging this. I believe this should now be fixed in the new v0.7.1 packages that have been released. I've also added better integration tests surrounding this. If you want to give the new packages a spin, hopefully they'll do the trick. Sorry for the trouble! (And yes, I agree the new architecture would help simplify many things--the good news is that the rearchitecture seems to be coming together quite nicely in a fully backwards compatible way. We're still a ways off, but I think it's all quite promising.) |
Fix confirmed. |
I just setup a fresh instance with API Umbrella 0.7. I have configured my backend servers as I had them before and published the configuration. However, when I try to make a request to the API, I get an Nginx 502 Bad Gateway error. I'll dig into the logs and see where exactly this is happening in the pipeline.
The text was updated successfully, but these errors were encountered: