Date: Thu, 22 Feb 2018 10:11:57 +0100 From: Karli =?ISO-8859-1?Q?Sj=F6berg?= <karli@inparadise.se> To: Marcin Cieslak <saper@saper.info> Cc: ports@freebsd.org, ruby@freebsd.org Subject: Re: monitoring ruby app memory usage with passenger-recycler (was: Cannot require library for passenger in ruby) Message-ID: <1519290717.1980.31.camel@inparadise.se> In-Reply-To: <1519282237.1980.26.camel@inparadise.se> References: <nycvar.OFS.7.76.6.1802202034350.2659@z.fncre.vasb> <1519282237.1980.26.camel@inparadise.se>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] On Thu, 2018-02-22 at 07:50 +0100, Karli Sjöberg via freebsd-ports wrote: > On Tue, 2018-02-20 at 21:31 +0000, Marcin Cieslak wrote: > > On Mon, 19 Feb 2018, Karli Sjöberg wrote: > > > > > > What is the tool you are trying to deploy? foreman_maintain? > > > > Sorry, I was too quick. This foreman_main is used to > > download/update > > foreman > > from RedHat Satellite servers, which is not what you want. > > Well, I want the "foreman_maintain" package, which includes > "passenger- > recycler", so I guess I do want it :) > > > > > However, the passenger-recycler script is a standalone script which > > could possibly used with this little fix: > > Ooh, awesome! Yeah, should´ve figured since it´s only at 0.1.3 :) > > > > > https://github.com/theforeman/foreman_maintain/pull/143 > > > > To apply this, please add files/patch-bin_passenger-recycler in the > > port I've sent before: > > > > --- bin/passenger-recycler.orig 2018-02-20 21:09:18 UTC > > +++ bin/passenger-recycler > > @@ -41,10 +41,10 @@ def process_status?(pid) > > end > > > > require 'phusion_passenger' > > +PhusionPassenger.locate_directories > > require 'phusion_passenger/platform_info' > > require 'phusion_passenger/platform_info/ruby' > > require 'phusion_passenger/admin_tools/memory_stats' > > -PhusionPassenger.locate_directories > > stats = PhusionPassenger::AdminTools::MemoryStats.new > > unless stats.platform_provides_private_dirty_rss_information? > > puts 'Please run as root or platform unsupported' > > Yes, this works, thanks! > > > > > > > But the real problem is that Passenger does think it supports > > getting process private dirty RSS memory information only on Linux: > > > > https://github.com/phusion/passenger/blob/219ad24159ae4033a342e6ad7 > > 53 > > cfee05d98bae0/src/ruby_supportlib/phusion_passenger/admin_tools/mem > > or > > y_stats.rb#L121 > > > > In file > > src/ruby_supportlib/phusion_passenger/admin_tools/memory_stats.rb: > > > > 120 def platform_provides_private_dirty_rss_information? > > 121 return os_name_simple == "linux" > > 122 end > > > > This support probably would need to be written. So, unfortunately, > > passenger-recycler > > as written will exit with: > > > > Please run as root or platform unsupported > > Yes, I have now gotten to this stage at least, thank you very much! I > don´t mind having a look at it, it might be simplest thing to write, > or > it´s hell, but I´ll have a look! > > Thank you for pointing me in the right direction! > > /K > > > > > But passenger-recycler does something very simple - if the amount > > of > > "private resident RSS > > memory" is higher than specified amount in the configuration file, > > it > > kills the process. > > > > You might get a much better monitoring on FreeBSD by monitoring the > > output of > > > > procstat -v <processid> > > > > which will give you details about the memory usage of the process > > and > > see how it is growing > > over time. Maybe you can pinpoint the shared library that causes > > this, if you are lucky. How do I interpret the output of 'procstat -v <pid>' though? Can I sum up all of the RES or PRES numbers to get the total virtual memory that this process is consuming? /K > > > > Marcin [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- iQEcBAABCAAGBQJajoldAAoJEBpo164N2cuRYy0H/2f/9+wUPshB67rRNyGd1uV8 tEsK02AVouTlPwMteLubkqBB0FraXatdF+8LETSkJ2SJ/cM3RS2UcOlRL9Tuzmof jexaWj/XP/RC24Vx3EM1ZhtsXcx35rXcP9KrcO4s+GZ2k0U/D1id6jNwl7MZgm3r MIoxHjOTvDN1Q1ejDtiVRtP7eV1GrRcHnc4fOTedF03tMUO5jxPnUIvwID/ZwHk+ 8KGcqrcf6BY5Jx18INEDlPkyo0MLrIedzAYmfI8MvRQ3F2fqVcMQeOtwYCTzEqEJ 5DmrkNHzpEafRUNbbKaT+b2j6CVmoWNjHbMWExQ26Vmzct98cjRqO0zRq2aM4D0= =2PTA -----END PGP SIGNATURE-----home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1519290717.1980.31.camel>
