ANN: rilasciata psutil 0.4.0

Salute a tutti,
sono lieto di annunciare il rilascio della versione 0.4.0 di psutil:
http://code.google.com/p/psutil
 
=== About ===
psutil è una libreria che permette di ottenere informazioni riguardo i processi in esecuzione e il sistema operativo (CPU, memoria, dischi, rete) implementando diverse funzionalità offerte da tool da linea di comando quali ps, top, lsof, netstat e altri.
Supporta Linux, Windows, OSX e FreeBSD, sia 32-bit che 64-bit, su Python da 2.4 a 3.2 utilizzando un'unica code-base.
 
=== Nuove features ===
Oltre a fixare diversi bug ad alta priorità questa release offre 2 nuove importanti funzionalità: i contatori di utilizzo disco e interfacce di rete con i quali è possibile scrivere applicazioni di monitoraggio di questo tipo:
http://code.google.com/p/psutil/source/browse/trunk/examples/iotop.py
http://code.google.com/p/psutil/source/browse/trunk/examples/nettop.py
...e qui alcuni screenshots:
http://code.google.com/p/psutil/#Example_applications
 
=== Altre migliorie ==

  • Process.get_connections() ha un nuovo parametro "kind" per filtrare le connessioni in base alla famiglia (ipv4/6) e il tipo (TCP/UDP).
  • Process.wait() può essere utilizzato in modo non bloccante passando timeout=0 come parametro.
  • Installer Python 3.2 per Windows 64-bit
  • (FreeBSD) aggiunto supporto per determinare la directory di lavoro corrente del processo (Process.getcwd())
  • (FreeBSD) Process.get_open_files() (files aperti dal processo) è stata riscritta in C (non richiede più lsof)

Per una lista completa dei cambiamenti si veda:
http://psutil.googlecode.com/svn/trunk/HISTORY
 
=== New features by example ===
...Un po' di codice:
 
>>> import psutil
>>>
>>> psutil.disk_io_counters()
iostat(read_count=8141, write_count=2431, read_bytes=290203, 
       write_bytes=537676, read_time=5868, write_time=94922)
>>>
>>> psutil.disk_io_counters(perdisk=True)
{'sda1' :iostat(read_count=8141, write_count=2431, read_bytes=290203, 
                 write_bytes=537676, read_time=5868, write_time=94922),
 'sda2' :iostat(read_count=811241, write_count=31, read_bytes=1245, 
                 write_bytes=11246, read_time=768008, write_time=922)}
>>>
>>>
>>> psutil.network_io_counters()
iostat(bytes_sent=1270374, bytes_recv=7828365, 
       packets_sent=9810, packets_recv=11794)
>>>
>>> psutil.network_io_counters(pernic=True)
{'lo': iostat(bytes_sent=800251705, bytes_recv=800251705, 
              packets_sent=455778, packets_recv=455778),
 'eth0': iostat(bytes_sent=813731756, bytes_recv=4183672213, 
                packets_sent=3771021, packets_recv=4199213)}
>>>
>>>
>>> import os
>>> p = psutil.Process(os.getpid())
>>> p.get_connections(kind='tcp')
[connection(fd=115, family=2, type=1, local_address=('10.0.0.1', 48776), 
            remote_address=('93.186.135.91', 80), status='ESTABLISHED')]
>>> p.get_connections(kind='udp6')
[]
>>> p.get_connections(kind='inet6')
[]
>>>
 
=== Links ===

--- Giampaolo Rodola'
http://code.google.com/p/pyftpdlib/
http://code.google.com/p/psutil/
 

Ancora nessun voto per questo contenuto