Unleash/unleash-client-node

Unleash Metrics Error: cannot fetch from API

roblevintennis opened this issue · 3 comments

Thanks for the unleash service!

I've been working on implementing Unleash feature flags for my company. We're using the open source version. Needless to say, I'm hitting the API pretty hard as I debug and develop my scripts. Yesterday, I started noticing Unleash Metrics error: network timeout from both my use of the unleash client (node sdk) and attempting to curl.

Here's an excerpt from usage via unleash-client:

..."msg":"Issue checking feature flags: Unleash Metrics error: network timeout at: https://unleash.app-delivery.cipheruse.com/api/client/register"}

Similarly I've seen:

FetchError: Unleash Metrics error: network timeout at: https://unleash.app-delivery.cipheruse.com/api/client/register
    at Timeout.<anonymous> (/Users/roblevin/workspace/fflags/node_modules/minipass-fetch/lib/index.js:89:18)
    at listOnTimeout (node:internal/timers:557:17)
    at processTimers (node:internal/timers:500:7) {
  code: 'FETCH_ERROR',
  errno: 'FETCH_ERROR',
  type: 'request-timeout'

When I've wanted to just curl the service I've been able to use the following curl successfully until same time yesterday:

curl https://unleash.app-delivery.cipheruse.com/api/client/features -H “Authorization: OUR_API_KEY”

but now it hangs.

I suspect my IP may have been blocked or the app is blocked. But, when I google around for unleash rate limiting I don't really find anything. Later I will try hitting the API from outside my home (my ISP doesn't let me change my public IP address) to confirm.

I'm just hunting for answers, but I saw this: url: 'http://blocked.app' in your tests so I'm guessing apps can be blocked somehow?

Is rate limiting in fact a possibility here? Any guidance on how to troubleshoot and confirm on my end? Is there a workaround for this? My colleague in devops has set it up, so I do not have access to our dashboard but can ask him to check if there's something there we should be checking. Thanks.

Update: ok, I just went to another location and verified both my internal and external IPs are different (of course) and it looks like unleash is refusing based off our URL / key. Is our app blocked?

$ curl https://unleash.app-delivery.cipheruse.com/api/client/features -H "Authorization: OUR_KEY"
curl: (7) Failed to connect to unleash.app-delivery.cipheruse.com port 443: Connection refused

I wonder if this is because we’re using the Free plan? https://www.getunleash.io/plans? It says in the bullet points Hosted by you does Unleash give folks some sort of trial amount of fetches until that app is blocked?

Unleash is not rate limiting anything. There must be something with your setup / network blocking this.

Ok, thanks for the fast reply. Will close this.