Ways of displaying full-screen openHAB logs on dedicated inexpensive tablets

Howdy!

I’m looking into ways of displaying logs in realtime on inexpensive tablets, in a control center fashion. Tablets can be very low power and it’s nice for debugging purposes to have a permanent display.

frontail appears to be a good option, and I’ve managed to set up some other ports (9002, 9003) with different color schemes and showing different logs.
So far, so good.

Then, I ran into a lot of problems with actually setting up the view on android devices.
Some browsers (chrome) displays the log but don’t scroll.
Firefox works and scrolls but won’t go fullscreen, and the fullscreen addons don’t work with current versions.
Kiosk mode apps (at least the one I tried) uses the built in android browser, which doesn’t display the log data at all, just the header.

Seriously, can’t anything be easy? :unamused:

Thinking further, perhaps multitail is a more efficient option. If we’re just displaying text, why should the CPU be burning power doing all that smooth scrolling? A console app should be much lower power. Maybe there’s a way to set up multitail to present color-coded data on a TCP port which one could connect to using some terminal app on an android device?

Does anyone have any ideas for how achieve the result I’m looking for – nice logging data on a dedicated tablet on the wall which just does its thing, and without heavily loading the CPU?

One crucial bit is that it should be maintenance-free. It should re-connect on its own if the connection ever goes down.

I know of nothing that works out of the box.

Were I to try and build something like this I’d probably try the following.

  • JuiceSSH for logging into the machine and running multitail upon connection. I recommend setting up certificate authentication but I think you can store your password if you need to. I believe you can configure a connection to automatically run a command once connected, but I am not sure if that is only a feature of the pro feature.

  • The JuiceSSH Tasker plugin is a separate app that lets you interact with JuiceSSH from Tasker.

  • Tasker is kind of like openHAB for your phone. If you like automation you should be using it. :wink: Anyway, you can set up a profile that when the phone boots it kicks off the JuiceSSH connection. This gets you half way there. The problem is the JuiceSSH Tasker plugin doesn’t tell Tasker when a connection is lost.

  • So we need AutoNotification, a Task plugin that can monitor your system notifications and do actions on those. This will need to be configured to look for the “Disconnected” notification from JuiceSSH. When that occurs use Tasker to clear the notification and start the connection again. You will probably want to have a repeat and standoff loop on the reconnect in case the problem is because OH went down or the network is down.

As you can see, this is going to be a whole ton of work, it’s going to be brittle, and it’s going to be far from maintenance free.

So let’s assume this is an XY Problem. What are you really after? While having a bunch of screens with raw logs scrolling by may look cool, it is frankly not all that useful. This is, I believe, one of the main reasons why you are struggling to find something that works. In real control centers that I’ve seen (i.e. operational ones, not as seen on TV) you never see screens up with scrolling logs. Instead you see stuff like this from Prometheus using Grafana (tutorial and openHAB plugin for integration with openHAB can be found at: New Add-on bundle for Prometheus health Metrics)

or the following using Kibana which is part of the ELK Stack (tutorial for setting up ELK with openHAB: Logging to Logstash+Elasticsearch+Kibana)

or using one of the many log visualization tools that are out there, both commercial and open source (search Google for “log visualization”). Note that Grafana can be used with other log aggregators besides Prometheus.

In short, what people have are systems that monitor the logs looking for certain patterns and that generate alerts when those patterns are detected. If they look at any sort of visualization at all, it will be a graphical aggregation dashboard like those presented above.

2 Likes

Duuuude… I’ve been looking for something like “eventghost” for my phone, to (for example) play a notification in my outside speakers if it rings while I’m outside and my phone is inside. I had never heard of Tasker before, I just looked it up and it’s exactly what I’ve been looking for! Wow, thank you for that one!

Good point about useful vs as-seen-on-TV, and I will certainly get into grafana soon enough (that’s going to look gorgeous, too), but dedicating a cheap 8" tablet to show the openhab + event log, and another to show the z-wave log, could still be useful for debugging and overview purposes.

I’ve managed to set up multiple frontails with custom color schemes on different ports. That may do it, but if not, perhaps my first ever android app should be a telnet scrolling ansi terminal with infinite auto-reconnect, so I could simply pipe multitail output to a TCP server on the openhab raspberry pi? Might be a good learning project.