Contact Us 1-800-596-4880

Troubleshooting Request Connection

When configuring and running Flex Gateway, you might encounter connection issues.

To troubleshoot these issues, use the flexctl check http command. This command makes direct requests to both the outbound connection between the upstream service and Flex Gateway and the inbound connection between Flex Gateway and the client. Making direct requests isolates Flex Gateway connections, which allows you to localize the issue.

The following diagram demonstrates the difference between inbound and outbound requests.

Inbound connections are between the client and Flex Gateway and outbound connections are between Flex Gateway and the upstream service

Outbound Requests Between Flex Gateway and the Upstream Service

Isolating the connection between the upstream service and Flex Gateway enables you to test for connection between the two.

To make a direct outbound request to the upstream service:

  1. Log into the Flex Gateway container or VM:

    • Linux:

      ssh [-i sshkey.pem] <user>@<domain>
    • Docker:

      docker exec -it <container-id> bash
    • Kubernetes:

      kubectl -n <namespace> exec -it <pod-name> -- bash
  2. Make a request to the upstream service:

    flexctl check http -X=POST -d='{\"key\": \"value\"}' -H='Authorization:token' <http://upstream.domain>

Inbound Requests Between the Client and Flex Gateway

Isolating the connection between Flex Gateway and the client enables you to test if the connection issue is due to a load balancer or another system added between Flex Gateway and the client.

To make a direct inbound request to the client:

  1. Log into the Flex Gateway container or VM:

    • Linux:

      ssh [-i sshkey.pem] <user>@<domain>
    • Docker:

      docker exec -it <container-id> bash
    • Kubernetes:

      kubectl -n <namespace> exec -it <pod-name> -- bash
  2. Make a request to Flex Gateway:

    flexctl check http -X=POST -d='{\"key\": \"value\"}' -H='Authorization:token' http://localhost:<api-instance-port>/<path>