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

Disneyland Paris times returning error after some kind of hiccup #271

Open
dotaguro opened this issue Jan 25, 2020 · 7 comments
Open

Disneyland Paris times returning error after some kind of hiccup #271

dotaguro opened this issue Jan 25, 2020 · 7 comments

Comments

@dotaguro
Copy link
Contributor

I'm still trying to track this down, but I've noticed that after a while of running fine, the two Disney Paris parks will start spitting out 504: {
"message": "Endpoint request timed out"
}.

Killing the task and restarting it restores it to working.

I think it's something to do with the API itself starting to reject the incoming requests... I ran the same code on two different machines in different data centers starting a few hours apart and both of them started to return the same error at approximately the same time (6:49 AM UTC) this morning (so each task was running for different amounts of time).

I'll see if I can get some more information next week (e.g. a more detailed stacktrace for which API call is being rejected, which I'm not currently logging), and dig through the code to see if some transient part of the URI or POST might be causing the rejections, but I figured I'd flag this now in case someone else knows the code off the top of their head and can suggest where to start.

@jeanmatthieud
Copy link
Contributor

I have EXACTLY the same issue.
I though it was an issue on my end but I didn't find any way to avoid it.
I'm happy to see that I'm not alone lol

@DougSisk
Copy link
Sponsor Contributor

It looks like Disney has begun blocking IP addresses. I had to rotate mine out.

@cubehouse Is there an easy way with the Couchbase polling system to decrease the update interval to help avoid pissing off Disney?

@rraayy
Copy link

rraayy commented Feb 18, 2020

Due to the AWS was public their IP range, I think Disney's server(hosted by AkamaiGHost) is blocking these IPs. Few IP can run well on the AWS Lambda, every "save" will change the IP. You might find the working IP. (Maybe someday will be blocked?)
Google Cloud function also has the same behavior. T. T

@jeanmatthieud
Copy link
Contributor

I don't think that it is the problem.
I personally own a fix IPv4. When it doesn't work anymore, I just have to restart my service and it is working again.

@dotaguro
Copy link
Contributor Author

dotaguro commented Feb 18, 2020 via email

@cubehouse
Copy link
Owner

Only thing I can think to try is manually switching out the User Agent string every few hours, see if that stops this happening?
Something like this to generate a random Android UA string:

MyPark.UserAgent = (ua) {
  return (ua.osName === 'Android');
};

@jeanmatthieud
Copy link
Contributor

I think that the issue is more recurrent when I'm calling the API when the park is closed.
I changed my code to only get the ride schedules 1h before / during / 1h after park opening hours, and the issue is less recurrent... maybe it's just a coincidence...

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

No branches or pull requests

5 participants