I am setting the cloud environment for my application. We are using express gateway as entry point. How to check liveness or readiness of the express gateway on linux environment? Please let me know is there any configuration or url to check the health of api gateway?
we do not have explicit liveness and readiness endpoints. However, most of the users, me included, have been using with success the /users endpoint from the Admin API.
Would that solve your use case? Otherwise you could easily plug any express-based middleware accomplishing such thing and get away with it.
Related
Traicing is currently not supported for API Gateway based on this documentation
However, when the trace is "started" by some component in front of that e.g. LB those traces/headers are not visible in the log either.
API GW is ESP v2. I found following startup options available
Is there a way how to pass those startup options to API gateway for example in terraform?
CORS and other configuration would be the same.
The only way I could think of was OpenAPI extension where I don't see such option.
Propagating trace context to stackdriver logs I consider as bare minimum for the purpose of supportability.
Thanks for the help
I'd like to use Spinnaker's Kayenta application to provide canary deployment analysis using AWS Managed Prometheus as its source for metrics data.
The open source Spinnaker's Kayenta application looks like it only supports basic and bearer token authentication. It looks like it does not support signing a request using AWS SigV4, which is the authentication mechanism used by AWS Managed Prometheus.
Has anyone else thought through this? Do you have suggestions on how to put these together? One option would be to add the feature to Kayenta, which will take time; another might be to put a signing proxy in place (there's a signing proxy from AWSLabs that could be adapted...
Love to hear your thoughts on what might be doable.
I have Google Run containers serving gRPC services. I'd like to build out a front end using web gRPC on Firebase. I am exploring the usage of Google API Gateway as a proxy between web gRPC and proper gRPC.
I am looking at this guide: https://cloud.google.com/api-gateway/docs/get-started-cloud-run-grpc which doesn't mention web, but I know the gateway is based off Envoy which is used for this purpose quite often. I am wondering if someone has a definitive answer or whether I need to deploy Envoy as a service on Cloud Run by hand to serve as a proxy.
Yes, API Gateway supports gRPC-web. API gateway runs ESP-V2, which is built on top of ESP. The original ESP has added the support for grpc-web which is shown in this GitHub link. And it still exists in ESP V2 as we can confirm from this link
API Gateway allows clients to use HTTP/JSON to communicate with gRPC service. You can look at this link and see if it helps your use case.
I have built an EC2 reverse proxy (Nginx) that communicates with an external API endpoint over the internet. I have a Route53 DNS with an A record linking to my EC2. There are a few endpoints (Nginx locations) and depending on which url you hit, you are redirected to a specific proxy location, and forwarded to the right endpoint on the external API. It all works great.
Now i want to create some type of job that will test this process periodically to ensure that it's running and notify me if it's not. AWS has so many tools and i think i need to use Lambda and API Gateway.
I'd like to hit my url(Route53 DNS) go thru the EC2 and receive a response from the endpoint server. My site does this, postman can, but i can't figure out how to accomplish this in an automated way and alert me based on the response values.
how can i test my full pathway (www.example.com/option -> nginxEC2 path('/option') -> www.endpoint.com/option) and be notified based on the results.
EDIT: i need to be able to send a body with this. if i send it without body the server returns 404, if i can send with a body/payload, i'll get a response.
EDIT: basically looking for a way to hit my DNS, which thru A record, routes to my reverse proxy, to an endpoint. i just need to do an HTTP request to the Domain, and get and answer back and know the status code.
Mark B's solution is the closest as the free site he sent me has an option to pay for this service. gonna leave it open a few more days.
You definitely don't need API Gateway for this. That wouldn't help you test this at all. API Gateway would just give you an entirely new API that you would need to test.
You could use Lambda for this as you mentioned. You would write a Lambda function that hits the URLs you want to test, checks the results, and sends you a message over SES or SNS or some other means when it fails. The Lambda function could be configured to automatically run on a schedule.
However, AWS already has a service that does exactly what you are looking for: Route53 Health Checks.
What you are describing is called an HTTP health check or HTTP uptime monitor. There are tons of services that provide this feature, some of them free.
It looks like the word that you're looking for is trace -- you want to trace requests along your application. AWS offer for that is X-Ray. As you see in their official documentation, you need to use their SDK to instrument your application, which talks to a deamon in your EC2 instance. You can then integrate with CloudWatch and SNS to be notified upon errors (e.g. 4xx codes): https://aws.amazon.com/blogs/devops/using-amazon-cloudwatch-and-amazon-sns-to-notify-when-aws-x-ray-detects-elevated-levels-of-latency-errors-and-faults-in-your-application/
Hope it helps!
I was thinking of using my own custom api gateway running on a separate box using nginx.
Is there any way in which the WSO2 API Manager can integrate to my api gateway?
In case there isn't, wanted to know if there's the possibility to run WSO2 API Manager without (or disabling) the API Gateway and if you could tell me which WSO2 API Manager's features would be unavailable.
Currently there's no way of replacing the gateway since we do the authentication, throttling, etc using synapse handlers. Here I am not sure about your use case of using nginx but what you can do is you can use nginx endpoint when you create the API or on the other way around you can route nginx traffic to API Gateway (you need to fix the API endpoints appearing in the API manager store view to point to nginx). Basically API layer need to be on top of service layer.
I 'm looking for a tool to host and publish APIs documentation so
that users of the api can browse it and test it right from the
documentation web page
If i got it correctly, you need a API store only to host your APIs.You can try enterprise store The documentation can be found here