apigee / apigee-remote-service-envoy

Apigee Remote Service adapter for Envoy
Apache License 2.0
27 stars 15 forks source link

Product list not being updated #406

Closed gautambaghel closed 1 year ago

gautambaghel commented 1 year ago

Issues filed on Github are not subject to service level agreements (SLAs) and responses should be assumed to be on an ad-hoc volunteer basis. The Apigee community board is recommended for community support and is regularly checked by Apigee experts. Apigee customers should use formal support channels. See the Get help! page in the wiki for more information.


Describe your issue

What are you seeing?

What were you expecting?

Which playbooks did you follow?

What were the results of that investigation?

What other investigative actions did you take?

What's your environment?

What is your environment?

What version are you running?

What Apigee environment (eg. hybrid, SaaS, OPDK)?

What is your OS and version? What version of Envoy? If you're using Kubernetes and/or Istio - what are their versions?

Is there anything unique about your deployment?

What's your Configuration?

What is your configuration for apigee-remote-service-envoy?

What is your configuration for envoy? Be sure to exclude any sensitive information.

Steps to Reproduce

Can your issue be recreated?

Will we be able to recreate your issue?

If so, how can we recreate it?

Additional context

Anything else you can tell us that might be helpful?

Attach relevant logs

Attach relevant log files, preferably at the debug level, and filtered as narrowly as possible to only the lines dealing with the request where you are seeing the issue. We'll likely at least need logs from apigee-remote-service-envoy and envoy.

gautambaghel commented 1 year ago
│ 2023-08-25T02:49:19.673Z    DEBUG    product/manager.go:244    retrieved 0 products, kept 0                                                                                        │
│ 2023-08-25T02:49:48.238Z    DEBUG    server/authmanager.go:110    setting internal JWT                                                                                             │
│ 2023-08-25T02:50:18.254Z    DEBUG    server/authmanager.go:110    setting internal JWT                                                                                             │
│ 2023-08-25T02:50:48.257Z    DEBUG    server/authmanager.go:110    setting internal JWT                                                                                             │
│ 2023-08-25T02:51:18.262Z    DEBUG    server/authmanager.go:110    setting internal JWT    
theganyo commented 1 year ago

Most likely the environment(s) set for the API Product(s) do not match the the environment in the Envoy Adapter configuration.

gautambaghel commented 1 year ago

It's being set by terraform to "env" everywhere, hence no typos, I checked the Google UI too

theganyo commented 1 year ago

Since you're apparently not getting any products and the client is not logging any errors, the issue must be on the Apigee side when retrieving the product list. I would suggest using the debugger on the proxy in the UI to see what happens with the request when you start the Envoy Adapter.

gautambaghel commented 1 year ago

So it's hitting the Send Product List method -> Which goes to Products Callout and it's returning

the overall workflow is:

Lookup product -> Parse Product cache -> Get runtime version (1.1.1) -> Send Product List ... and that returns

{ "apiProduct": [ ] }

this payload but there's clearly a product in my environment with a developer app attached to it

theganyo commented 1 year ago

Ok, thanks for verifying everything is operating correctly for Envoy Adapter and its proxy. Please be sure that you have at least one Remote Service on your API Product. The Remote Service is used to configure Envoy Adapter.

Screenshot 2023-08-29 at 9 05 17 AM

gautambaghel commented 1 year ago
Screenshot 2023-08-29 at 12 10 27 PM

I do have an operation attached to it

https://github.com/gautambaghel/consul-k8s-apigee-x/blob/main/app/apigee.tf#L37

theganyo commented 1 year ago

Everything looks right to me, then. You may need to open a case with the Apigee X team so they can look closer as to why it's not giving the list of API Products to the remote-service proxy.