get accounting info for running process

Mel Flynn mel.flynn+fbsd.questions at mailing.thruhere.net
Fri Nov 20 02:37:42 UTC 2009


On Thu, 19 Nov 2009 20:01:02 +0300, cronfy <cronfy at sprinthost.ru> wrote:
>>> Is it possible to find out how much a process have used CPU user 
>>> time/system time/IO operations for now by it's pid? Like in sa, but for

>>> running process.
>>>     
> 
> Dan, Mel, thanks for your answers. I examined 'ps' sources and decided 
> to use  kvm_getprocs() and rusage structure.
> 
> I am trying to create a daemon that would report system accounting stats 
> for every X seconds, let's say 10.  'sa' reports about terminated 
> processes only, but it would be nice to have more detailed system usage 
> stats per user for a given time interval (i.e. last 10 seconds), 
> including tasks that are not finished at the moment of querying.
> 
> I can achieve this by querying list of processes each 10 seconds and 
> producing diffs between previous and current list, saving these to some 
> log and combining data with /var/account/acct file.
> 
> The only thing I do not want to do is to invent a wheel ;-) I googled 
> much for such solutions, but did not find any. May be someone knows 
> existing products that has this functionality already?

I don't know of anything like that, but ... there is of course radius.
Depends what you want to do with the info. If usage restriction is your
ultimate goal, then radius is your friend.

-- 
Mel



More information about the freebsd-questions mailing list