Further to what has been said already.

My experience with that sort of memory usage has been with the PIL,
Pillow (or whatever it's now called) image library.
In one case (a CentOS install) replacing it with a current pip version
fixed it outright.
In my case (debian) I could never get on top of it. Changing to a pip
install of the image library made some difference but not enough to
stop the excessive usage, the slow remorseless climb to oblivion
continued.

I suspect it wasn't just one SLE or other weewx addition, but the load
from them all. I could see memory climbing, I could identify where it
was happening (syslog, ANTI_ALIAS, draw) but it was all so variable
that I couldn't get on top of it. Most of it pointed to the image
generation, perhaps I do too many? and they are too large?  If I
didn't generate the images the problem disappeared - but I want the
images, and in particular the configuration I have. (If the wireless
NBN is behaving -- http://203.213.243.61/weewx/ )

Anyway, Life caught up with me and I could no longer justify the time
to run around in ever diminishing circles trying to nail it; so I
resorted to a hack.

I don't expect this to be a solution, but it might offer some insight.
It bypasses the problem in the cleanest way I could come up with and
confirms the problem (mine) is in the report generation cycle. The
result has been more than satisfactory - it's basically stable. (see
attached image, 200K in 30 days). So stable that I haven't needed to
get back to it; but then, maybe I don't want to get in over my head
again. ;-)

Along the lines of Garys advice re: turning off services.
I removed (commented out) from weewx.conf the call to
'weewx.engine.StdReport' , under [Engine][[Services]]. That stops all
reports.
I then edited engine.py to generate a suitable, unique message to
syslog at the conclusion of the loop cycle (ie: the start of what
would have been the report cycle). This ensured I wasn't accessing
weewx 'out of cycle' and kept it as inhouse as possible.
With that done a small plugin was added to rsyslog that then called
wee_reports every time that log message appears. It then generates the
needed reports, exactly where weewx did them before, and most
importantly returns all the memory at its completion.

Good luck Steve. I hope you get it pinpointed and fixed, quickly and easily.



Cheers
 Glenn

rorpi - read only raspberry pi & various weewx addons
https://github.com/glennmckechnie


On 10 September 2018 at 09:59, gjr80 <gjroder...@gmail.com> wrote:
> Steve,
>
> Been there and done that. These memory issues can be a pain to track down. I
> had one a while back and it was a case of memory usage ramping up each hour,
> the slope of the plot was so constant you could set your watch by it.
> Tracking down the culprit can be a time consuming process as I found it took
> a few hours from a restart before I could be sure the memory usage was on
> the way up, there used to be a bit of up and down after startup before the
> constant increases started. As Vince said one approach is to go back to a
> bare bones install and add things back one at a time till you find the
> culprit. Unless you have done anything out of the norm with your RPi I would
> not worry too much about winding back the operating system, start with
> WeeWX, its the obvious candidate.
>
> In terms of winding back WeeWX, sure you can uninstall your extension but
> then you risk losing config settings. Another way to achieve the same effect
> is to disable services in [Engine] [[Services]], that way you keep your
> config and just turn services off. Just comment out/remove services for
> those you wish to disable, if you want to go back to a bare bones setup or
> want to know what services you have on top of a bare bones install have a
> look at/compare to the bare bones weewx.conf on gitHub. Of course take a
> backup copy of weewx.conf before you start so you can easily go back to how
> it was before.
>
> Another approach is rather than going back to a bare bones install disable
> one added on service at a time until you find the culprit. You can do this
> one at a time or cumulatively.
>
> Remember also that even with this problem WeeWX will still be doing
> everything it should, so you are not losing data. It's just that WeeWX runs
> out of memory. My stop gap solution until I solved my issue was setting a
> reminder to remind me to restart WeeWX every so many days (I think it was
> 4). I am not a fan of forced restarts so did it manually each time.
>
> Gary
>
> On Monday, 10 September 2018 06:37:18 UTC+10, Steve2Q wrote:
>>
>> Ok..sounds like a project for the weekend..or after the incoming bad
>> weather..I dont want to miss anything!
>>
>> On Sun, Sep 9, 2018, 4:35 PM vince <vince...@gmail.com> wrote:
>>>
>>> On Sunday, September 9, 2018 at 12:09:32 PM UTC-7, Steve2Q wrote:
>>>>
>>>> Vince: here are the extensions that are running (ignore as3935..I
>>>> removed it a long time ago but for some reason wee_extension --list keeps
>>>> showing it there).
>>>
>>>
>>> Again - if you have an unstable system, the best way to get it to 'be'
>>> stable is to run it as minimally as possible first.  Then gradually add
>>> things.
>>>
>>> Turn everything off other than the raspi os and the most minimal weewx
>>> possible.  All your cron jobs.  All the software you added that you run at
>>> boot. Everything.  Run the bare minimum to get things baselined as stable.
>>>
>>>
>>> --
>>> You received this message because you are subscribed to a topic in the
>>> Google Groups "weewx-user" group.
>>> To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/weewx-user/VehicK_KNso/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> weewx-user+...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups
> "weewx-user" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to weewx-user+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to weewx-user+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to