Ignition Edge on arm32hf device

Hello all,

We been working on implementing the the Ignition Edge version for the armv32hf , in a debian based armv32hf target.

we have correctly installed and configured the JRE arm32 version 8, and followed through pretty much this whole tutorial
https://docs.inductiveautomation.com/display/DOC79/ARM+-+Install

However we keep gettin the - gateway failed to start

below my lastest wrapper log , thanks in advance for the help -

STATUS | wrapper | 2019/06/05 19:58:45 | --> Wrapper Started as Daemon
STATUS | wrapper | 2019/06/05 19:58:46 | Java Service Wrapper Standard Edition 32-bit 3.5.35
STATUS | wrapper | 2019/06/05 19:58:46 | Copyright © 1999-2018 Tanuki Software, Ltd. All Rights Reserved.
STATUS | wrapper | 2019/06/05 19:58:46 | http://wrapper.tanukisoftware.com
STATUS | wrapper | 2019/06/05 19:58:46 | Licensed to Inductive Automation for Inductive Automation
STATUS | wrapper | 2019/06/05 19:58:46 |
STATUS | wrapper | 2019/06/05 19:58:49 | Launching a JVM…
INFO | jvm 1 | 2019/06/05 19:58:54 | WrapperManager: Initializing…
INFO | jvm 1 | 2019/06/05 19:59:31 | 19:59:31,508 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
INFO | jvm 1 | 2019/06/05 19:59:31 | 19:59:31,687 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAppender]
INFO | jvm 1 | 2019/06/05 19:59:31 | 19:59:31,934 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
INFO | jvm 1 | 2019/06/05 19:59:33 | 19:59:33,330 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [com.inductiveautomation.logging.SQLiteAppender]
INFO | jvm 1 | 2019/06/05 19:59:33 | 19:59:33,601 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DB]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,373 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@a0c166 - Driver name=SQLiteJDBC
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,377 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@a0c166 - Driver version=native
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,380 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@a0c166 - supportsGetGeneratedKeys=true
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,539 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,700 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAsync]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,723 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAppender] to ch.qos.logback.classic.AsyncAppender[SysoutAsync]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,732 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Attaching appender named [SysoutAppender] to AsyncAppender.
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,756 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,786 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,791 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DBAsync]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,816 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DB] to ch.qos.logback.classic.AsyncAppender[DBAsync]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,840 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Attaching appender named [DB] to AsyncAppender.
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,849 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,859 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,865 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAsync] to Logger[ROOT]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,870 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DBAsync] to Logger[ROOT]
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,872 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
INFO | jvm 1 | 2019/06/05 19:59:37 | 19:59:37,891 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@1e9ee9d - Registering current configuration as safe fallback point
INFO | jvm 1 | 2019/06/05 19:59:40 | E [IgnitionGateway ] [19:59:39]: Error initializing web manager:
INFO | jvm 1 | 2019/06/05 19:59:40 | java.lang.IllegalStateException: Could not find data//gateway.xml or data//gateway.xml_clean.
INFO | jvm 1 | 2019/06/05 19:59:40 | at com.inductiveautomation.catapult.util.FileUtil.ensureFileExists(FileUtil.java:108)
INFO | jvm 1 | 2019/06/05 19:59:40 | at com.inductiveautomation.ignition.gateway.web.WebResourceManagerImpl.readGatewayProperties(WebResourceManagerImpl.java:412)
INFO | jvm 1 | 2019/06/05 19:59:40 | at com.inductiveautomation.ignition.gateway.web.WebResourceManagerImpl.(WebResourceManagerImpl.java:103)
INFO | jvm 1 | 2019/06/05 19:59:40 | at com.inductiveautomation.ignition.gateway.IgnitionGateway.(IgnitionGateway.java:474)
INFO | jvm 1 | 2019/06/05 19:59:40 | at com.inductiveautomation.ignition.gateway.IgnitionGateway.main(IgnitionGateway.java:268)
INFO | jvm 1 | 2019/06/05 19:59:40 | at com.inductiveautomation.catapult.Catapult.main(Catapult.java:8)
INFO | jvm 1 | 2019/06/05 19:59:40 | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO | jvm 1 | 2019/06/05 19:59:40 | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
INFO | jvm 1 | 2019/06/05 19:59:40 | at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
INFO | jvm 1 | 2019/06/05 19:59:40 | at java.base/java.lang.reflect.Method.invoke(Unknown Source)
INFO | jvm 1 | 2019/06/05 19:59:40 | at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:349)
INFO | jvm 1 | 2019/06/05 19:59:40 | at java.base/java.lang.Thread.run(Unknown Source)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp:
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: Encountered an error running main:
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: java.lang.NullPointerException
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at com.inductiveautomation.ignition.gateway.IgnitionGateway.start(IgnitionGateway.java:519)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at com.inductiveautomation.ignition.gateway.IgnitionGateway.main(IgnitionGateway.java:270)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at com.inductiveautomation.catapult.Catapult.main(Catapult.java:8)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at java.base/java.lang.reflect.Method.invoke(Unknown Source)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:349)
INFO | jvm 1 | 2019/06/05 19:59:40 | WrapperSimpleApp Error: at java.base/java.lang.Thread.run(Unknown Source)
STATUS | wrapper | 2019/06/05 19:59:42 | <-- Wrapper Stopped

This looks like it’s Ignition 8, is that right?

That is rigth Kevin, go the files from here https://inductiveautomation.com/downloads/ignition/8.0.2

Assuming you unzipped to /usr/local/ignition, is there a data folder in there with either gateway.xml or gateway.xml_clean?

Yep, that seems to be the problem, I do not have these files, where do I get them, though they were embeeded in the xml.

They are in the zip file, it seems maybe something went wrong when you unzipped.

Hey Kevin thnaks for supporting, i found the gateway.xml_clean put back in place, but now I am runnin onto a diferent problem

STATUS | wrapper | 2019/06/10 09:40:30 | --> Wrapper Started as Daemon
STATUS | wrapper | 2019/06/10 09:40:30 | Java Service Wrapper Standard Edition 32-bit 3.5.35
STATUS | wrapper | 2019/06/10 09:40:30 | Copyright © 1999-2018 Tanuki Software, Ltd. All Rights Reserved.
STATUS | wrapper | 2019/06/10 09:40:30 | http://wrapper.tanukisoftware.com
STATUS | wrapper | 2019/06/10 09:40:30 | Licensed to Inductive Automation for Inductive Automation
STATUS | wrapper | 2019/06/10 09:40:30 |
STATUS | wrapper | 2019/06/10 09:40:34 | Launching a JVM…
INFO | jvm 1 | 2019/06/10 09:40:39 | WrapperManager: Initializing…
INFO | jvm 1 | 2019/06/10 09:41:16 | 09:41:16,759 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
INFO | jvm 1 | 2019/06/10 09:41:17 | 09:41:16,936 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAppender]
INFO | jvm 1 | 2019/06/10 09:41:17 | 09:41:17,192 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
INFO | jvm 1 | 2019/06/10 09:41:18 | 09:41:18,331 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [com.inductiveautomation.logging.SQLiteAppender]
INFO | jvm 1 | 2019/06/10 09:41:18 | 09:41:18,581 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DB]
INFO | jvm 1 | 2019/06/10 09:41:22 | 09:41:22,234 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@307a60 - Driver name=SQLiteJDBC
INFO | jvm 1 | 2019/06/10 09:41:22 | 09:41:22,239 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@307a60 - Driver version=native
INFO | jvm 1 | 2019/06/10 09:41:22 | 09:41:22,243 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@307a60 - supportsGetGeneratedKeys=true
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:22,987 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,071 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAsync]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,080 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAppender] to ch.qos.logback.classic.AsyncAppender[SysoutAsync]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,085 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Attaching appender named [SysoutAppender] to AsyncAppender.
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,102 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,111 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,122 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DBAsync]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,139 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DB] to ch.qos.logback.classic.AsyncAppender[DBAsync]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,149 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Attaching appender named [DB] to AsyncAppender.
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,160 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,233 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,284 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAsync] to Logger[ROOT]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,307 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DBAsync] to Logger[ROOT]
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,315 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
INFO | jvm 1 | 2019/06/10 09:41:23 | 09:41:23,386 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@1afa538 - Registering current configuration as safe fallback point
INFO | jvm 1 | 2019/06/10 09:41:26 | W [WebResourceManagerImpl ] [09:41:26]: Unable to read “gateway.metroKeystoreAlias” gateway.xml property. Assuming metro keystore alias is: metro-key

Is there more to the logs? I don’t really see anything that looks like an issue that would prevent startup.

Thnaks for supporting, that is all in the Wrapper log, but I am aslo getting this in the console , below

Starting Ignition-Gateway…
Waiting for Ignition-Gateway…
/bin/ps: invalid option – ‘p’
BusyBox v1.24.1 (2019-02-19 19:53:10 UTC) multi-call binary.

Usage: ps
Removed stale pid file: /usr/local/ignition/./Ignition-Gateway.pid
WARNING: Ignition-Gateway may have failed to start.

It looks like you are using BusyBox for the unix util ps which doesn’t have support for the -p option. You will have to remove the link to busybox ps and use the default ps utility or install one that supports the -p option. This allows us to grab information about the gateway process.

would work if I use top instead of ps ?

thanks

The ps -p command is executed as part of ignition.sh, which is a part of Java Service Wrapper. It’s not our code.

If you want to try and modify that shell script to work without ps -p you’re welcome to try. For now I think you might be better off using a system that isn’t based on BusyBox if possible.

1 Like

Hey Kevin I fixed that now I am getting the following , thnaks for the support again

Starting Ignition-Gateway…
Waiting for Ignition-Gateway…
running: PID:6963

wrapper log

Launching a JVM…
INFO | jvm 1 | 2019/07/12 11:36:02 | WrapperManager: Initializing…
INFO | jvm 1 | 2019/07/12 11:36:31 | 11:36:31,257 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
INFO | jvm 1 | 2019/07/12 11:36:31 | 11:36:31,347 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAppender]
INFO | jvm 1 | 2019/07/12 11:36:31 | 11:36:31,486 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
INFO | jvm 1 | 2019/07/12 11:36:32 | 11:36:32,384 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [com.inductiveautomation.logging.SQLiteAppender]
INFO | jvm 1 | 2019/07/12 11:36:32 | 11:36:32,610 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DB]
INFO | jvm 1 | 2019/07/12 11:36:35 | 11:36:35,731 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@a0c166 - Driver name=SQLiteJDBC
INFO | jvm 1 | 2019/07/12 11:36:35 | 11:36:35,735 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@a0c166 - Driver version=native
INFO | jvm 1 | 2019/07/12 11:36:35 | 11:36:35,740 |-INFO in ch.qos.logback.core.db.DataSourceConnectionSource@a0c166 - supportsGetGeneratedKeys=true
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:35,942 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,038 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SysoutAsync]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,047 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAppender] to ch.qos.logback.classic.AsyncAppender[SysoutAsync]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,053 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Attaching appender named [SysoutAppender] to AsyncAppender.
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,102 |-INFO in ch.qos.logback.classic.AsyncAppender[SysoutAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,126 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,158 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [DBAsync]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,172 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DB] to ch.qos.logback.classic.AsyncAppender[DBAsync]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,177 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Attaching appender named [DB] to AsyncAppender.
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,182 |-INFO in ch.qos.logback.classic.AsyncAppender[DBAsync] - Setting discardingThreshold to 51
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,195 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,205 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SysoutAsync] to Logger[ROOT]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,229 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [DBAsync] to Logger[ROOT]
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,238 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
INFO | jvm 1 | 2019/07/12 11:36:36 | 11:36:36,281 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@1e9ee9d - Registering current configuration as safe fallback point
INFO | jvm 1 | 2019/07/12 11:36:38 | W [WebResourceManagerImpl ] [11:36:38]: Unable to read “gateway.metroKeystoreAlias” gateway.xml property. Assuming metro keystore alias is: metro-key

I don’t see any issues here. Is there nothing else in the logs? Is the gateway accessible at http://localhost:8088?

it is running , thanks , awesome support dude

Has been on that page for quite an while now,

If there’s nothing else in the logs aside from what you posted above maybe you can use the jstack util to get a thread dump of the Ignition process and we can see what it’s doing.

thanks Kevin , it is going , thnaks for the support again you cna mark this topic as resolved