On Wed, Feb 02, 2005 at 12:10:41PM +0100, Borja Marcos wrote: > > Hello, > > I'm writing a performance monitoring data collector for Orca > (www.orcaware.com) for FreeBSD 4- and 5-. > > I'm not sure about the correct values in the process description to > get a picture as accurate as possible of the cpu usage of different > processes. I've seen that top uses p_runtime (FreeBSD 5 and FreeBSD 4), > but I'm not sure if the value would be really useful. > > You can see a snapshot of the work in progress at: > > ftp://borja.sarenet.es/pub/freebsd4-devilator.pdf > ftp://borja.sarenet.es/pub/freebsd5-devilator.pdf > > I'm intending to do something more complete than the classical > "orcallator" for Solaris. Namely, I am going to plot: > > - System processes resource usage (hopefully useful to spot > bottlenecks, and hopefully useful for the system developers) > > - Resource usage by a set of processes specified by the user. It > will have a configuration file with {process name, regular expression} > pairs. Processes whose name matches the regular expression will get > their own graph with %user/%system, etc cpu times, and probably I/O > statistics, memory statistics, so that you can know wether your (for > example) smtpd processes are getting more resources, or the memory hogs > are the httpd's, etc. > > - MBUF statistics > > - Network statistics (connections, TCP/UDP/ICMP statistics...) > > - Various caches and VM
If you're looking for some implementation examples for some of these, take a look at ganglia's freebsd code. It's largly based on extracting things from other programs, but the work's been done so you don't have to figure out what matters. http://cvs.sourceforge.net/viewcvs.py/ganglia/monitor-core/srclib/libmetrics/freebsd/metrics.c?rev=1.4&view=markup -- Brooks -- Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4
pgpmzPfo5ojv2.pgp
Description: PGP signature