--doctor is a command line utility that you can use to diagnose issues with Sauce Connect Proxy. This topic describes how to read the doctor the log, the errors that --
doctor will detect, and how to resolve them.
When running your Sauce Labs tests with Sauce Connect Proxy, there may be situations in which Sauce Connect Proxy doesn't perform as expected. To make sure everything's in working order, you can run Sauce Connect diagnostic tests by adding the --doctor flag to your Sauce Connect command line, like so:
sc -u [Your Sauce Username] -k [Your Sauce Access Key] --doctor
--doctor will run a series of diagnostic operations to:
- See what DNS servers and SSL certificates can be found in your network when Sauce Connect Proxy boots up.
- Verify that the Sauce Connect Proxy tunnel can make connections to
443using the DNS servers found in your network.
- Verify that the Sauce Connect Proxy tunnel can make connections on port
g.symd.comusing the SSL certificates found in your network.
- Verify that you are able to make a connection to these Sauce Labs REST API calls:
- Verify that the Sauce Connect can make a connection to
If you need additional assistance when tests are failing with Sauce Connect Proxy, get in touch with our support team at firstname.lastname@example.org. When creating your support ticket, please remember to send us the doctor flag, the link to your Sauce Labs test, and the Sauce Connect verbose log. You can get the verbose log by adding the
-l sc.log options to your Sauce Connect Proxy command line:
sc -u [Your Sauce Username] -k [Your Sauce Access Key] -vv -l sc.log
failed to fetch PAC file ...: ...
Indicates the specified PAC file couldn't be downloaded. This may be caused by an incorrect URL, or a network mis-configuration. To troubleshoot this type of issue, try to download the PAC file manually from the machine running Sauce Connect with Curl or another HTTP client.
To debug the PAC file you can create one locally and pass it to Sauce Connect Proxy using the
In Windows, remember to add the drive to the path like this:
|failed to fetch or empty PAC file ...||The connection to the remote server was successfull but the PAC file was empty or missing.|
both --proxy and --pac are used
|Using both may work, but this is unsupported by Sauce Labs and should only be used if directed by the Saucelabs support.|
invalid REST URL ...
|The URL specified in the |
failed to find proxy via PAC for ...
|The PAC file was downloaded successfully, but no proxy was found for this host. This may be the result of an incorrect PAC file: make sure a proxy is specified for all the hosts.|
can't resolve 'saucelabs.com'/... tunnel hostname(s) via any DNS server
Please check your firewall and DNS settings.
To troubleshoot this issue, use
your hosts file contains an entry for ...
The DNS server can't resolve saucelabs.com correctly, this is most likely because the DNS system has a special configuration for some hosts. We strongly recommend you remove this entry from the host file: it's usually
connecting via <proxy> to http://<url>: <error> or connecting to http://<url>: <error>
The URL isn't accessible. If you see this error after other errors in the logs, try to fix the previous errors first.
Please refer to the libcurl errors manual to troubleshoot this issue.
SSL connect failed, socket: ... code: %d
|The Secure connection couldn't be established. Please refer to the OpenSSL manual to get more information about the error.|
failed to retrieve certificate chain
|Some X509 certificates couldn't be imported into the SSL library. This may indicate an issue in with DNS, or public CA's being unreachable.|
failed to reach https?://google.com
|The Sauce Connect client can't reach google.com, this indicates that the client doesn't have full Internet connectivity. It may not be an issue: Sauce Connect only needs access to saucelabs.com and its tunnels.|