This article covers some basic troubleshooting tips to test communication with the Snaplex.
To verify if outbound requests are permitted from the Snaplex node, run:
...
Code Block |
---|
curl https://elastic.snaplogic.com/status
|
A response with status OK indicates successful completion.
If this request hangs or fails, then a proxy is required. Request the HTTP proxy information from your network operations team.
To check access through a proxy, run:
...
Code Block |
---|
curl -x myproxy.mydomain.com:3128 https://elastic.snaplogic.com/status
|
If this request fails with a 407 (Proxy Authentication Required), then you need to specify the authentication information in the proxy.
To check the proxy authentication, run:
...
Code Block |
---|
curl -x myproxy.mydomain.com:3128 --proxy-user "proxyuser:proxypasswd" https://elastic.snaplogic.com/status
|
The -v
option can be added to curl to get detailed messages.
...
Configuring the Script Snap to Use a HTTP Proxy
HTTP-compatible Snap Packs can use a HTTP proxy configured in the Node Proxies configuration tab of a Snaplex within SnapLogic Manager. However, the Script Snap allows you to write scripts that call external processes (for example: curl
) and these scripts will not be aware of proxy configurations within the SnapLogic application.
You can use curl
to configure a proxy directly via the --proxy
argument. To enforce proxy usage across all usages of the Script Snap, set the http_proxy
and/or https_proxy
environment variables within the following file:
|
Environment variables declared within the /etc/sysconfig/jcc
file are visible to the Snaplex application (OS-level environment variables are not visible). If the /etc/sysconfig
directory and /etc/sysconfig/jcc
file does not exist in your Snaplex, run the following command with your own username/password
(if authentication is required), proxy-ip-address
, and port
(you could also add https_proxy
) to create them:
|
After the file and its directory are created, run one of the following commands to restart the Snaplex application:
|
The http_proxy
/https_proxy
environment variable is now active within the SnapLogic product. You can now run your script to call the external process.
For example, the following Script Snap uses the subprocess
library to execute curl
and adds the response body to the output document.
|
On execution, the proxy access log shows the request being routed through the proxy.