Troubleshooting

This section provides some useful tips to troubleshoot your ESF installation.

Checking the ESF install logs

After following the steps described in the Install ESF page, the installation logs can be reviewing at the path /opt/eurotech/esf/log/kura_install_<timestamp>.log. This can be helpful to troubleshoot the ESF installation process.

Checking the ESF systemd unit

There are a few necessary steps to ensure that ESF is running as expected. First, verify that the systemd unit is running with the following command:

systemctl status kura

This command should display the status of the ESF systemd unit. Example of the expected output:

● kura.service - Kura
     Loaded: loaded (/lib/systemd/system/kura.service; enabled; vendor preset: disabled)
     Active: active (running) since Mon 2024-09-23 12:06:12 UTC; 49min ago
    Process: 708 ExecStart=/bin/sh /opt/eurotech/esf/bin/start_kura_general.sh (code=exited, status=0/SUCCESS)
   Main PID: 832 (java)
      Tasks: 106 (limit: 3553)
     Memory: 1.1G
     CGroup: /system.slice/kura.service
             ├─  832 java -Xms901m -Xmx901m -Xss256k -XX:+PrintGCDetails -Xloggc:/var/log/kura-gc.log -XX:+HeapDumpOnOutOfMemo>
             ├─ 1717 /usr/sbin/chronyd -f /tmp/kura-chrony-server.conf -x -U
             └─ 2133 /bin/busybox.nosuid /usr/sbin/udhcpd -S /etc/udhcpd-eth0.conf

Checking the ESF logs

Once the ESF unit has been identified, it is important to check the ESF log files for errors. Log files can be found in the system journal. You can use the following command to set the terminal in listening mode on the journal.

journalctl -f -u kura

If the ESF process is running and the logs files are clear of errors, the ESF framework is working correctly on the target system and users can access the ESF Web UI to start customising their IoT deployment. See Administration Console.

Common issues

"ESF requires at least Java version 17" error

Since ESF 7.5.0, the framework will expect to run on Java 17 on new installations. If your system comes pre-bundled with a JVM, make sure that java 17 is installed and available.

If ESF fails to start after installing and rebooting, check the ESF logs with journalctl -f -u kura and look for the following errore message:

Nov 07 16:25:52 dynagate-10-14 systemd[1]: Starting Kura...
Nov 07 16:25:52 dynagate-10-14 sh[7027]: Starting ESF in development mode and in background...
Nov 07 16:25:53 dynagate-10-14 sh[7040]: ESF requires at least java version 17. Please update your configuration.
Nov 07 16:25:53 dynagate-10-14 systemd[1]: kura.service: Control process exited, code=exited, status=1/FAILURE
Nov 07 16:25:53 dynagate-10-14 systemd[1]: kura.service: Failed with result 'exit-code'.
Nov 07 16:25:53 dynagate-10-14 systemd[1]: Failed to start Kura.

If this error is present in the log it means that the wrong Java version is installed on the system. Simply remove the installed version and install Java 17. The correct package name and procedure depend on the system and OS, be sure to refer to the package manager manual.

RPM GPG key signature verification failure

On already deployed devices, the rpm install may require the installation of the ESF RPM GPG key used to sign and verify the ESF RPM.

The ESF RPM Key comes pre-installed in EL 27.1.0 and EL 30.0.0.

The Key is available here. To install in the target device, run the following command: rpm --import <key>