The following are common errors that occur when integrations are running on an engine.
When running an integration on an engine, the most common errors are:
Broken Pipe"ImportError: No module named...Invalid syntaxScript failed to run: exec: “python”: executable file not found in $PATH (2603)
These errors could indicate that the engine is not using Docker.
Use SSH to access the engine server.
Make sure Docker is healthy.
Ensure that Docker is installed and is running.
sudo systemctl status dockerIf the Docker status is not good, restart your Docker.
sudo systemctl restart dockerEnsure Docker can run a container.
sudo docker run hello-worldIf this fails, reinstall your Docker.
Access the d1.conf file on the engine server.
sudo vi /usr/local/demisto/d1.confAdd the
"python.engine.docker": trueconfiguration to the d1.conf file and remove any other configurations related to python and Docker, such as“python.executable.no.docker”.Restart the system on the engine server.
sudo systemctl restart d1Note
If the Allow running multiple engines on the same machine option is selected, run the command:
sudo systemctl restart d1_<Engine _name>Retest the integration from the user interface. This may take a few minutes because it may need to pull the relevant Docker image.
A common error message you may see when running integrations on engines is something like: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.35/images/json?t.
Determine if you are using a Docker group or Dockerroot group by running one of the following on the server engine:
ls -la /var/run/docker.sockThe output from this command will show what user/group is running docker.sock. For example:
srw-rw----. 1 root docker 0 Apr 12 20:32 /var/run/docker.sock
shows that it’s a Docker group and not Dockerroot.
cat /etc/group | grep dockerThis command shows if you are running Docker or Dockerroot.
Note
Docker CE installations typically run Docker, while Docker EE installations typically run Dockerroot.
To fix a Docker user, run the following commands on the server engine:
sudo groupadd dockersudo usermod -aG docker demistosudo systemctl restart dockersudo systemctl restart d1Note
If the Allow running multiple engines on the same machine option is selected, run the command:
sudo systemctl restart d1_<Engine _name>
To fix a
dockerrootuser, run the following commands on the server engine:sudo groupadd dockerrootSet the dockerroot group in
/etc/docker/daemon.json. For example: { "group": "dockerroot" }.sudo usermod -aG dockerroot demistosudo chcon -Rt svirt_sandbox_file_t /var/lib/demisto/tempsudo systemctl restart dockersudo systemctl restart d1Note
If the Allow running multiple engines on the same machine option is selected, run the command:
sudo systemctl restart d1_<Engine _name>