Metadata-Version: 1.1
Name: psutil
Version: 0.7.1
Summary: A process and system utilities module for Python
Home-page: http://code.google.com/p/psutil/
Author: Giampaolo Rodola
Author-email: g.rodola <at> gmail <dot> com
License: License :: OSI Approved :: BSD License
Download-URL: http://psutil.googlecode.com/files/psutil-0.7.1.tar.gz
Description: ===========
        Quick links
        ===========
        
        * `Home page <http://code.google.com/p/psutil>`_
        * `Download <http://code.google.com/p/psutil/downloads/list>`_
        * `Documentation <http://code.google.com/p/psutil/wiki/Documentation>`_
        
        =======
        Summary
        =======
        
        psutil is a module providing an interface for retrieving information on all
        running processes and system utilization (CPU, memory, disks, network, users) in
        a portable way by using Python, implementing many functionalities offered by
        command line tools such as:  **ps, top, df, kill, free, lsof, free, netstat,
        ifconfig, nice, ionice, iostat, iotop, uptime, pidof, tty, who, taskset, pmap**.
        
        It currently supports **Linux**, **Windows**, **OSX** and **FreeBSD** both
        **32-bit** and **64-bit** with Python versions from **2.4** to **3.3** by using
        a single code base.
        
        ==============
        Example usages
        ==============
        
        CPU
        ===
        
        >>> import psutil
        >>> psutil.cpu_times()
        cputimes(user=3961.46, nice=169.729, system=2150.659, idle=16900.540,
                 iowait=629.509, irq=0.0, softirq=19.422)
        >>>
        >>> for x in range(3):
        ...     psutil.cpu_percent(interval=1)
        ...
        4.0
        5.9
        3.8
        >>>
        >>> for x in range(3):
        ...     psutil.cpu_percent(interval=1, percpu=True)
        ...
        [4.0, 6.9]
        [7.0, 8.5]
        [1.2, 9.0]
        >>>
        
        
        Memory
        ======
        
        >>> psutil.virtual_memory()
        vmem(total=8374149120L, available=2081050624L, percent=75.1, used=8074080256L,
             free=300068864L, active=3294920704, inactive=1361616896, buffers=529895424L,
             cached=1251086336)
        >>> psutil.swap_memory()
        swap(total=2097147904L, used=296128512L, free=1801019392L, percent=14.1,
             sin=304193536, sout=677842944)
        >>>
        
        
        Disks
        =====
        
        >>> psutil.disk_partitions()
        [partition(device='/dev/sda1', mountpoint='/', fstype='ext4', opts='rw,nosuid'),
         partition(device='/dev/sda2', mountpoint='/home', fstype='ext, opts='rw')]
        >>>
        >>> psutil.disk_usage('/')
        usage(total=21378641920, used=4809781248, free=15482871808, percent=22.5)
        >>>
        >>> psutil.disk_io_counters()
        iostat(read_count=719566, write_count=1082197, read_bytes=18626220032,
               write_bytes=24081764352, read_time=5023392, write_time=63199568)
        >>>
        
        
        Network
        =======
        
        >>> psutil.network_io_counters(pernic=True)
        {'lo': iostat(bytes_sent=799953745, bytes_recv=799953745,
                      packets_sent=453698, packets_recv=453698),
         'eth0': iostat(bytes_sent=734324837, bytes_recv=4163935363,
                        packets_sent=3605828, packets_recv=4096685)}
        >>>
        
        
        Users
        =====
        
        >>> psutil.get_users()
        [user(name='giampaolo', terminal='pts/2', host='localhost', started=1340737536.0),
         user(name='giampaolo', terminal='pts/3', host='localhost', started=1340737792.0)]
        >>>
        
        
        Process management
        ==================
        
        >>> import psutil
        >>> psutil.get_pid_list()
        [1, 2, 3, 4, 5, 6, 7, 46, 48, 50, 51, 178, 182, 222, 223, 224,
        268, 1215, 1216, 1220, 1221, 1243, 1244, 1301, 1601, 2237, 2355,
        2637, 2774, 3932, 4176, 4177, 4185, 4187, 4189, 4225, 4243, 4245,
        4263, 4282, 4306, 4311, 4312, 4313, 4314, 4337, 4339, 4357, 4358,
        4363, 4383, 4395, 4408, 4433, 4443, 4445, 4446, 5167, 5234, 5235,
        5252, 5318, 5424, 5644, 6987, 7054, 7055, 7071]
        >>>
        >>> p = psutil.Process(7055)
        >>> p.name
        'python'
        >>> p.exe
        '/usr/bin/python'
        >>> p.getcwd()
        '/home/giampaolo'
        >>> p.cmdline
        ['/usr/bin/python', 'main.py']
        >>>
        >>> str(p.status)
        'running'
        >>> p.username
        'giampaolo'
        >>> p.create_time
        1267551141.5019531
        >>> p.terminal
        '/dev/pts/0'
        >>>
        >>> p.uids
        user(real=1000, effective=1000, saved=1000)
        >>> p.gids
        group(real=1000, effective=1000, saved=1000)
        >>>
        >>> p.get_cpu_times()
        cputimes(user=1.02, system=0.31)
        >>> p.get_cpu_percent(interval=1.0)
        12.1
        >>> p.get_cpu_affinity()
        [0, 1, 2, 3]
        >>> p.set_cpu_affinity([0])
        >>>
        >>> p.get_memory_percent()
        0.63423
        >>>
        >>> p.get_memory_info()
        meminfo(rss=7471104, vms=68513792)
        >>> p.get_ext_memory_info()
        meminfo(rss=9662464, vms=49192960, shared=3612672, text=2564096, lib=0, data=5754880, dirty=0)
        >>> p.get_memory_maps()
        [mmap(path='/lib/x86_64-linux-gnu/libutil-2.15.so', rss=16384, anonymous=8192, swap=0),
         mmap(path='/lib/x86_64-linux-gnu/libc-2.15.so', rss=6384, anonymous=15, swap=0),
         mmap(path='/lib/x86_64-linux-gnu/libcrypto.so.1.0.0', rss=34124, anonymous=1245, swap=0),
         mmap(path='[heap]', rss=54653, anonymous=8192, swap=0),
         mmap(path='[stack]', rss=1542, anonymous=166, swap=0),
         ...]
        >>>
        >>> p.get_io_counters()
        io(read_count=478001, write_count=59371, read_bytes=700416, write_bytes=69632)
        >>>
        >>> p.get_open_files()
        [openfile(path='/home/giampaolo/svn/psutil/somefile', fd=3)]
        >>>
        >>> p.get_connections()
        [connection(fd=115, family=2, type=1, local_address=('10.0.0.1', 48776),
                    remote_address=('93.186.135.91', 80), status='ESTABLISHED'),
         connection(fd=117, family=2, type=1, local_address=('10.0.0.1', 43761),
                    remote_address=('72.14.234.100', 80), status='CLOSING'),
         connection(fd=119, family=2, type=1, local_address=('10.0.0.1', 60759),
                    remote_address=('72.14.234.104', 80), status='ESTABLISHED'),
         connection(fd=123, family=2, type=1, local_address=('10.0.0.1', 51314),
                    remote_address=('72.14.234.83', 443), status='SYN_SENT')]
        >>>
        >>> p.get_num_threads()
        4
        >>> p.get_num_fds()
        8
        >>> p.get_threads()
        [thread(id=5234, user_time=22.5, system_time=9.2891),
         thread(id=5235, user_time=0.0, system_time=0.0),
         thread(id=5236, user_time=0.0, system_time=0.0),
         thread(id=5237, user_time=0.0707, system_time=1.1)]
        >>>
        >>> p.get_num_ctx_switches()
        amount(voluntary=78, involuntary=19)
        >>>
        >>> p.get_nice()
        0
        >>> p.set_nice(10)
        >>>
        >>> p.suspend()
        >>> p.resume()
        >>>
        >>> p.terminate()
        >>> p.wait(timeout=3)
        0
        >>>
        >>> psutil.test()
        USER         PID %CPU %MEM     VSZ     RSS TTY        START    TIME  COMMAND
        root           1  0.0  0.0   24584    2240 ?          Jun17   00:00  init
        root           2  0.0  0.0       0       0 ?          Jun17   00:00  kthreadd
        root           3  0.0  0.0       0       0 ?          Jun17   00:05  ksoftirqd/0
        ...
        giampaolo  31475  0.0  0.0   20760    3024 /dev/pts/0 Jun19   00:00  python2.4
        giampaolo  31721  0.0  2.2  773060  181896 ?          00:04   10:30  chrome
        root       31763  0.0  0.0       0       0 ?          00:05   00:00  kworker/0:1
        >>>
        
Keywords: ps,top,kill,free,lsof,netstat,nice,tty,ionice,uptime,taskmgr,process,df,iotop,iostat,ifconfig,taskset,who,pidof,pmap,smem,monitoring
Platform: Platform Independent
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft
Classifier: Operating System :: Microsoft :: Windows :: Windows NT/2000
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: POSIX :: BSD :: FreeBSD
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.4
Classifier: Programming Language :: Python :: 2.5
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.0
Classifier: Programming Language :: Python :: 3.1
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Topic :: System :: Monitoring
Classifier: Topic :: System :: Networking
Classifier: Topic :: System :: Networking :: Monitoring
Classifier: Topic :: System :: Benchmark
Classifier: Topic :: System :: Hardware
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Utilities
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: BSD License
