Troubleshooting

Commonly Known issues

1. Error while creating cluster via eksctl

Logs: Unable to connect to the server: getting credentials: decoding stdout: no kind "ExecCredential" is registered for version "client.authentication.k8s.io/v1alpha1" in scheme "pkg/client/auth/exec/exec.go:62"

Solution: Update AWS cli to latest version

2. Error: "No Requests Found"

HyperTest does not have any traffic on which it can run test.

  1. Verify that hypertest is actually capturing traffic

  2. The main reason for this error is that there would be no request in HyperTest's database, so if the traffic is being captured, make a request at the logger port and check the LAST MIRRORED REQUEST INFO on the dashboard.

3. Tests are stuck (running/scheduled)

Clicking on the prohibit sign ⊘ near the top right corner of the screen will terminate ALL the running tests.

4. HyperTest does not report any change

Ensure that primary and secondary base urls are as specified and that mirroring is set up correctly.

5. Error: "Your application is down, try again in a moment. Please check if your app is running"

The health check for the target application failed, ensure that your application is up, and the health check endpoint, and the status defined the configuration matches with that your application has.

6. No api coverage

OAS doc path is not set. Set it in the configuration

7. Error (while opening dashboard): "Please wait while backend starts. If the backend does not start, please reboot the application or contact hypertest"

Refresh the dashboard after 5 minutes, if it does not appear you may need to manually restart hypertest or contact HyperTest.

8. Checking docker status

It is possible that the docker daemon is down. One method is to run docker run hello-world from the command line. To get a detailed log of the docker service, use journalctl -u docker.

9. Error: connect ENOENT /path/to/hypertest/ht-bg-service.sock

A background service necessary for carrying out maintenance related tasks is not running. It can be restarted via ./hypertest bg-start. However, to ensure that everything is working as intended it is advisable to restart hypertest itself, which will start all its services.

Restarting HyperTest

It is required to restart HyperTest everytime the host machine is restarted. HyperTest can be restarted in following ways:

1. Using the HyperTest UI

Available at /maintenance/, the UI provides an option to restart HyperTest, along with a few other options. Should this endpoint still be unavailable, HyperTest can also be restarted via the command line.

2. Using the command line

A restart can be initiated by executing the following command in HyperTest's root directory via ./hypertest restart.

Mirror Traffic

1. Debug mirroring setup via Goreplay

To debug if goreplay is receiving the traffic from your application, we will output the incoming traffic to stdout, so we can see if Goreplay is receiving requests.

Steps:

  1. Exec into the goreplay container using below command:

kubectl exec -it <pod-name> -c goreplay sh

2. Run the following command:

goreplay --input-raw :<application_port> --output-stdout

Now hit any api on your application and verify if Goreplay is able to receive it.

Last updated