[SOLVED] HABPanel sluggish

yes, it seems openhab is very generous on errors :slight_smile: my recent one - systeminfo running on 2.5 x64 linux failing to find x86 udev … (2.4 worked ok), oh well - new day, new problem - this is why I am reluctant to update.

On a side note, I do think openhab should have LTS releases with addon update. What we have right now is that, if you want to have addons updated - you need to update openhab as well, which sometimes is a bad idea :slight_smile:

Its actually not like that. 95% of my bindings are dropped into the /addons directory vs pulled from OH natively. I’m running OH 2.4 and most of my bindings are 2.5 versions.

Best, Jay

i think this is not a general rule, or is it? my experience with openhab (and that might be wrong) says, it does not always work like that :slight_smile:

Yes, somethings it doesn’t work like that because additional functionality has been added to the core that the 2.5 binding need. Below is “some” of my 2.5 bindings in OH 2.4.

Best, Jay

Wow, that’s a lot. I am usually happy with the bindings and only have up to three in the addons folder - currently:
icloud, habpanel, habpanel-filter

I guess I found a related thread - it’s obviously harmless.

hi! what modules do I need to have enabled in apache to run this?

EDIT: Ok I enabled all as follows and it works!

sudo a2enmod ssl
sudo a2enmod proxy
sudo a2enmod proxy_balancer
sudo a2enmod proxy_http

Also I have put habpanelfilter.conf with the virtualhost definition into /etc/apache2/sites-available/
and then I enabled this site by command:

sudo a2ensite habpanelfilter.conf

THe only problem I have yet is that nginx uses the same port as Apache2 and I have to kill nginx start Apache2. Hints?

1 Like

Hi Pavel,

Is it possible to get another link to these .jar files?

I am running 2.4


Ok that was easy. Just needed to change the port of the nginx server in conf file.
I must say that it works much better than the modified habpanel!
Thanks @schmidmuc !

1 Like

As I mentioned previously, there are two issues that contribute to HabPanel being slow (at least for me):

  1. Getting items (effects loading time when changing screens, received through /rest/items endpoint).
  2. Getting item updates (normal event stream, received through /rest/events endpoint).

Correct me if I am wrong, but the method described here only solves the issue 1, however has no effect on issue 2, right?

What was/is the problem 2 about? (I don’t know this issue).

My main problem was the slow change between screens or long time waiting after pushing a button. And both problems have gone with my solution. The panel is much faster now. And item update still work with a reasonable delay.

As I have a lot of items, my main problem (besides the loading time) is that my tablet is not fast enough to process all the changes happening (process openhab event stream, also tablet gets very hot) and event stream needs to be filtered in order to reduce event stream only to events happening on filtered devices. So all in all, filtering not only item list but also event stream.

Ah ok, understood, but unfortunately I don’t have a solution for this problem in mind…

yepp, this is why habpanel-filter addon was made :slight_smile:

That’s fine that you solved your two problems with the habpanel-filter…
Unfortunately habpanel-filter did not work on my system as it depends on OH and after every new OH2 release modifications might be necessary. No habpanel-filter version was available for my OH version.

So I tried to find a solution solving my one problem and which is independent from OH and OH releases.

I don’t see any problem in having different solutions for similar problems, do you? :wink:

How do you filter events stream within habpanelfilter? As far as I understand, as you said, you need to filter both /rest/items and /rest/events. The proxy virtualhost seems to filter anything that is going to the whole for /rest/.

ProxyPass /rest/ http://localhost:8080/rest/
        ProxyPassReverse /rest/ http://localhost:8080/rest/
1 Like

As far as I know rest endpoint for event stream does not accept any parameters, so I do not think it is possible to filter it using proxy hack.

I’m not sure if I understand what you’re saying. That’s why I’ve asked what actually was done with habpanelfilter that is different from filtering specific items? What differs event stream? I just don’t catch it.

sorry for misleading in my last comment. What I actually meant is that habpanelfilter does:

  1. Provide a filtered item list through a separate rest endpoint.
  2. Provide a new event stream through a separate rest endpoint (that attaches to the openhab event stream and filters events based on filtered item list).

Hi, thanks for clarification. So if I understand correctly, to verify if proxy method works with event stream, would it be correct if I go to http://serveraddress:8081/rest/events/ and verify if only filtered items remain there?