This is the forum archive of Homey. For more information about Homey, visit the Official Homey website.

The Homey Community has been moved to https://community.athom.com.

This forum is now read-only for archive purposes.
Closed

0.8.34

1235

Comments

  • bvdbosbvdbos Member
    edited May 2016
    one of the first apps, stocks, also behaves badly apparantly:

  • BasPostBasPost Member
    And today the Netatmo app crashes on my Homey (0.8.34)
  • one of the first apps, stocks, also behaves badly apparantly:

    I have seen it with Twitter, NetAtmo and solar panel  already. Although NetAtmo was the GitHub fork for multiple  devices I think.....
  • MarcoFMarcoF Member
    Here also crashes on solar panels and netatmo.
    I have forked solar panels to my websolarlog installation ans I thought it was my mistake of the crash.... 

    Netatmo and websolarlog app are installed locally, so crash reports aren't send and 0.8.35+ has a option for local crash reports. So have to wait for this release to see what's going wrong and maybe fix it.... 
  • MarcoF said:
    0.8.35+ has a option for local crash reports. So have to wait for this release to see what's going wrong and maybe fix it.... 
    That would be a very welcomed feature.
    Do you remember where you read this?
  • MarcoFMarcoF Member
    MarcoF said:
    0.8.35+ has a option for local crash reports. So have to wait for this release to see what's going wrong and maybe fix it.... 
    That would be a very welcomed feature.
    Do you remember where you read this?

    Slack
  • BumblezBumblez Member
    Quite a few apps have crashes (kills), since Athom introduced their App Watchdog in 0.8.34. I've been running the Harmony app without any problems for a long time, but in 0.8.34 it crashes (is killed) every time.
    Could it be their conditions for terminating an app are set a bit too strict?
  • MarcoFMarcoF Member
    edited May 2016
    Here i'm working on the multi sensor NetAtmo app and on almost all sequences to get data from NetAtmo I get CPUWARN.
    It are just "simple" http request, with a pretty straight forward and short JSON response. 
    Here I have 6 NetAtmo "modules" (station, 1x outdoor, 2 x indoor, wind, rain) and since .34 the app crashes multiple times a day.
    My setup isn't the max that a station could be, so in the field it could be a bigger problem if a person has the max module count.

    Emile mentioned on Slack that CPUWARN could be avoided by delaying stuff (doing the same over a bigger period of time). So now i'm trying to delay request and hopefully this make the app more robust.

    But I do agree that at least the could have made the thresholds a big higher. Now almost all existing apps are crashing, even there own Stock app :smirk: 

  • BumblezBumblez Member
    If you're forced to delay stuff to make it work, that means response from Homey to triggers could get quite a bit slower... if even simple requests like the ones you describe are already forced to have delays, then I wonder how people can ever create more complicated apps
  • MarcoFMarcoF Member
    edited May 2016
    To put it more in perspective;
    My NetAtmo setup has 6 modules with in total 18 sensors (for example; 4 x Wind types, 3 x CO2, 4 x temp etc).

    NetAtmo's max sensor count is about 22;
    1 base station with 1 outdoor module: 5 + 2 sensors
    3 additional indoor modules: 9 (3 x 3) sensors
    1 rain module: 1 sensor
    1 wind module: 4 sensors
    ==================
    total 21 sensor

    with a ton of more data such as trends, 24h averages, etc. also its possible to add for example virtual "devices" such as absolute humidity.
    In that way the sensor/HomeyDevice count can go up to 25+ which is around 50% more sensors (and potential load?).

    The app does every 5 min updates these sensors, fires 6 http request, receives these JSON's, walk through the JSON's and (where needed) updates the Homey sensors.

    In most cases 5-10 sensors are changed per update run, so after the 6 json request Homey has to change 5-10 devices.

    Homey is/has a powerful unit/CPU and it surprises me that such things could make it cripple (CPUWARN is there for a purpose).

    I now have added timeouts of 500ms for every HTTP request and after 30min. its working OK.

    So lets wait and see what's going to happen today :smirk: 
    (maybe we receive .35 with less strict thresholds)
  • I think apps crashed just as much before 0.8.34 but they would simply be restarted. Now with the watchdog users have insight in crashes and apps don't seem to be automatically restarted anymore. 
  • MarcoFMarcoF Member
    edited May 2016
    Yeah.... so in the past the functionality which the app brings, keeps working and only sometimes a Homey crashed, now overnight 2-4 apps are crashed and Homey lost total functionality of these apps.

    Don't know which one is better.... One Homey crash once every 1-3 days or after 12 hours 2-4 apps dead.

    Bottom line;
    At certain points in time Homey loses functionality.
    And for now I think a lot of apps will keep crashing because developers won't have the time/resources to fix it.
  • ZperXZperX Member
    As a workaround a Reboot flow card would be useful.
    The Somfy app has been updated last night and it works with 0.8.34.
  • MarcoF said:
    Yeah.... so in the past the functionality which the app brings, keeps working and only sometimes a Homey crashed, now overnight 2-4 apps are crashed and Homey lost total functionality of these apps.

    Don't know which one is better.... One Homey crash once every 1-3 days or after 12 hours 2-4 apps dead.

    Bottom line;
    At certain points in time Homey loses functionality.
    And for now I think a lot of apps will keep crashing because developers won't have the time/resources to fix it.
    When the devs update their app and they don't crash anymore it'll be the best situation.
    Better crash reporting is also being worked on so it should make the lives of a dev a little easier in solving crashes.
  • MarcoF said:
    Yeah.... so in the past the functionality which the app brings, keeps working and only sometimes a Homey crashed, now overnight 2-4 apps are crashed and Homey lost total functionality of these apps.

    Don't know which one is better.... One Homey crash once every 1-3 days or after 12 hours 2-4 apps dead.

    Bottom line;
    At certain points in time Homey loses functionality.
    And for now I think a lot of apps will keep crashing because developers won't have the time/resources to fix it.
    When the devs update their app and they don't crash anymore it'll be the best situation.
    Better crash reporting is also being worked on so it should make the lives of a dev a little easier in solving crashes.
    This if for now impossible, as we have no insight in why the app crashes. Furthermore, even if we do, occasional crashes (i.e. only once every 24hours) are very hard to troubleshoot and fix.

    I would rather have an option for each app (or a global setting) to automatically restart the app upon a crash, with some log somewhere that it crashed in that time.
  • BumblezBumblez Member
    edited May 2016
    Would be nice if we could disable the new App Watchdog, to test if it's the watchdog that kills these apps (which is what I believe), or if EvertorN is right and the apps crash just as much as before, they just don't get automatically restarted anymore.
  • MarcoFMarcoF Member
    edited May 2016
    As far as I know devs receive crash reports and a "normal" user of the app can't see why its crashed.
    Emile mentioned on Slack that from .35 the orange crash triangle will show are stack trace after clicking it.
    From then on also the user can see whats happening.

    Also its for every user possible to see whats happening if a app crashes, the "only thing" you need to do is run the app from CLI in "debug mode".

    But for this you need to keep connection with your Homey to catch the error and stack trace.

    At the moment its not a ideal situation for long term monitoring/bug fixing.

    Currently the NetAtmo app is running 20 intervals of 5 min without a CPU-warn :smile: 
  • EmileEmile Administrator, Athom
    I made the choice to not make apps auto-restart on crash, to stimulate developers to fix crashes. Eventually, they will be automatically restarted if they have been running for at least {x} minutes. For now, I'd rather see apps crash, than putting them in a loop of crashes.
  • BumblezBumblez Member
    edited May 2016
    @Emile This would be great, if we could access the crash logs and tell the developer why that specific app crashed. Any chance of this functionality becoming available to us?
  • MarcoFMarcoF Member
    Bumblez said:
    @Emile This would be great, if we could access the crash logs and tell the developer why that specific app crashed. Any chance of this functionality becoming available to us?
    As far as i known devs already receive reports of there apps.
  • BumblezBumblez Member
    They receive crash reports from their apps on my Homey?
  • markmgmarkmg Member
    Bumblez said:
    They receive crash reports from their apps on my Homey?
    yeah saw in a nother topic also that they reveive them, was able to tell what IP was used, wonder what else they receive and can read about my homey
  • KoenMartensKoenMartens Member
    edited May 2016
    Bumblez said:
    They receive crash reports from their apps on my Homey?
    Yes. An example of crash e-mail I get (from my own Homey; I have not gotten other's IP addresses - they are left out on reports from other's people's crashes):

    Dear Koen,

    A crash occurred for your app (version 0.1.0) at May 15, 2016 5:36 PM.

    Crash report: 
    Error: connect ENETUNREACH 192.168.2.1:80 - Local (0.0.0.0:0) at Object.exports._errnoException (util.js:870:11) at exports._exceptionWithHostPort (util.js:893:20) at connect (net.js:849:16) at net.js:937:9 at nextTickCallbackWith0Args (node.js:420:9) at process._tickCallback (node.js:349:13)

    N.B.: You will soon be able to view (an archive of) these logs from witin a developer panel on the app page.

  • BumblezBumblez Member
    edited May 2016
    Although this is definitely useful for the app developers, I also find it creepy... I wonder what other data is sent to Athom that they didn't tell us about.
    This is definitely not in line with what they claim in their privacy statement (and these logs also don't show up in Insight).
  • MarcoFMarcoF Member
    edited May 2016
    Bumblez said:
    Although this is definitely useful for the app developers, I also find it creepy... I wonder what other data is sent to Athom that they didn't tell us about.
    This is definitely not in line with what they claim in their privacy statement (and these logs also don't show up in Insight).
    More info;
    https://legal.athom.com/?language=en&document=privacy-policy

    It looks like "Almost everything" we do with our Homey goes through Athom servers..... and that surprised me a bit
    And it also looks like that if you are working locally on your Homey, all these command((7) To command your Homey) goes through the Athom servers.
    (i hope i'm wrong )

    [edit]
    Note that all data used for this goal is pseudonymized before analysis.
    I read this as;
    We save all your data and just before analyzing it we remove your data from it. Does this mean Athom has a ton of my personal data there server? 
  • markmgmarkmg Member
    edited May 2016
    Bumblez said:
    They receive crash reports from their apps on my Homey?
    Yes. An example of crash e-mail I get (from my own Homey; I have not gotten other's IP addresses - they are left out on reports from other's people's crashes):

    this is from the harmoney topic
    https://forum.athom.com/discussion/653/published-harmony-hub-app-v0-3-1#latest

    brinkie said:

    I do get some unreachable errors every know and then. Anyone recognize their Hub's IP-address?

    A crash occurred for your app (version 0.3.1) at Apr 19, 2016 5:54 AM.

    Crash report: 
    Error: connect EHOSTUNREACH 192.168.0.127:5222 at Object.exports._errnoException (util.js:870:11) at exports._exceptionWithHostPort (util.js:893:20) at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1061:14)


  • ReemsterReemster Member
    edited May 2016
    We have privacy laws in Holland where athom also must adhere to, so probably it's fine. 
  • BumblezBumblez Member
    edited May 2016
    MarcoF said:
    If I understand this (especially that section 7) correctly, then (apart from your account creation data) only spoken voice commands go through Athom's server, which sends it out to speech recognition servers, and eventually sends back the text command to your Homey. So your Homey doesn't contact the speech recognition servers directly. I can understand why they would do it this way. But apparently these audio files are not deleted directly, but kept until you specifically ask them to delete the files. Why? Don't know.

    Other than that, I don't believe any of the automatic flow triggers that you set up, go through Athom's servers.

  • MarcoFMarcoF Member
    Bumblez said:
    MarcoF said:
    If I understand this (especially that section 7) correctly, then (apart from your account creation data) only spoken voice commands go through Athom's server, which sends it out to speech recognition servers, and eventually sends back the text command to your Homey. So your Homey doesn't contacts the speech recognition servers directly. I can understand why they would do it this way. But apparently these audio files are not deleted directly, but kept until you specifically ask them to delete the files. Why? Don't know.

    Other than that, I don't believe any of the automatic flow triggers that you set up, go through Athom's servers.


    Click command: if you use the App to give your Homey a command, this command will be led to your Homey via Athom's servers. Homey will then execute the command.

    ?

This discussion has been closed.