[python-brasil] Monitorar processos do sistema operacional

72 views
Skip to first unread message

Paulo Patto

unread,
Sep 30, 2011, 2:31:33 PM9/30/11
to Lista Python Brasil
 

Olá integrantes da lista.

Bem estou trabalhando em um projeto de pesquisa cientifica e estava usando
python como "linguagem de cola" ou seja usava python no projeto para montar
ambiente, usava como script de automação, porém em dado momento, me
perguntei '*será que o python não poderia ser a linguagem base?*' Assim
resolvi usar python além de linguagem de auxilio, porém agora estou com
algumas dúvidas de como fazer certas tarefas em python. Gostaria de saber se
é possível:

*~> Monitorar Processos no sistema operacional:*
Gostaria de poder monitorar um processo no sistema operacional onde o
script/aplicativo estiver rodando, supondo que eu rode um processo
MyProcess, quero obter seu uso de CPU, Memória, PID e usuário, a plataforma
base para meus scripts é linux e unix-like, porém por ventura pode ser que
um usuário Windows venha a utilizar, por isso se possível a solução tem que
ser portável ou que seja possível via implementação nativa para as duas
plataformas.

*~> Monitorar I/O de disco:*
Como eu conseguira monitorar o I/O de um HD com python? Quero saber isso
para por ventura saber benchmarkings de leitura e escrita em disco.

*~> Manipulação de links para arquivos:*
Existe a possibilidade tanto em linux/unix-like e windows de através do
python eu criar links (comando "ln -s ...")?

*~> Manipular grandes arquivos XML:*
Tenho grandes arquivos de xml com registros de dados (ou seja banco de dados
em xml), a api minidom e sax do python são as mais recomendadas para
trabalhar com arquivos na casa do MEGA BYTES e GIGA BYTES? Não quero todo o
arquivo em memória, somente a parte de registros que me interessar.

Agradeço desde já pelas possíveis respostas.

--

*@paulopatto*
RT *#**Confúcio: **"Dê a quem você ama: asas para voar, raízes para voltar e
motivos para ficar."*
*http://paulopatto.me/*

[As partes desta mensagem que não continham texto foram removidas]

__._,_.___
Atividade nos últimos dias:
.

__,_._,___

mauro.baraldi

unread,
Oct 6, 2011, 9:31:55 PM10/6/11
to python...@yahoogrupos.com.br
 

Paulo, é sempre muito legal saber das histórias de novos adeptos à linguagem. Bem vamos às dúvidas...

Manipulação de processos: A melhor opção é a biblioteca psutil [1]. Já esta pronto e tem a maioria das funcionalidaes que vc precisa para trabalhar com processos. Ela é cross-plataform, mas se tratando de MS Windows, me bate uma curiosidade... =D

I/O de disco: Tem o iotop [2] que é feito em Python. Eu sei que não foi essa a sua pergunta, mas a partir da aplicação instalada no siste é possível acessar suas bibliotecas, eu testei aqui (no Ubuntu 10.04/Python 2.7/iotop 0.4.1 (ubuntu repo version) e consegui importar a biblioteca. O próximo passo seria ler o código e trabalhar em cima dele. Essa realmente foi baseada essenciamente em sistemas POSIX.

Symlinks: Se vc quiser criar links, os.symlink(src, dst), simples assim. Para saber se o arquivo é um link os.path.islink(path). Para apagar, os.remove(path). Mais alguma coisa que queira fazer com links ? =P Ah, "Availability: Unix."

XML: Eu recomendo usar a biblioteca lxml [3]. Aqui [4] rolou uma discussão sobre esse assunto (Parsing large XML file with Python)

[1] http://code.google.com/p/psutil/
[2] http://freshmeat.net/projects/iotop
[3] http;//lxml.de
[4] http://stackoverflow.com/questions/324214/what-is-the-fastest-way-to-parse-large-xml-docs-in-python

[ ]'s
Mauro Baraldi

--- Em python...@yahoogrupos.com.br, Paulo Patto <paulopatto@...> escreveu

__._,_.___
.

__,_._,___

Paulo Patto

unread,
Oct 7, 2011, 12:34:40 PM10/7/11
to python...@yahoogrupos.com.br
 

2011/10/6 mauro.baraldi <no_r...@yahoogrupos.com.br>



> Paulo, é sempre muito legal saber das histórias de novos adeptos à
> linguagem. Bem vamos às dúvidas...
> Manipulação de processos: A melhor opção é a biblioteca psutil [1]. Já esta
> pronto e tem a maioria das funcionalidaes que vc precisa para trabalhar com
> processos. Ela é cross-plataform, mas se tratando de MS Windows, me bate uma
> curiosidade... =D
> I/O de disco: Tem o iotop [2] que é feito em Python. Eu sei que não foi
> essa a sua pergunta, mas a partir da aplicação instalada no siste é possível
> acessar suas bibliotecas, eu testei aqui (no Ubuntu 10.04/Python 2.7/iotop
> 0.4.1 (ubuntu repo version) e consegui importar a biblioteca. O próximo
> passo seria ler o código e trabalhar em cima dele. Essa realmente foi
> baseada essenciamente em sistemas POSIX.
> Symlinks: Se vc quiser criar links, os.symlink(src, dst), simples assim.
> Para saber se o arquivo é um link os.path.islink(path). Para apagar,
> os.remove(path). Mais alguma coisa que queira fazer com links ? =P Ah,
> "Availability: Unix."
> XML: Eu recomendo usar a biblioteca lxml [3]. Aqui [4] rolou uma discussão
> sobre esse assunto (Parsing large XML file with Python)
> [1] http://code.google.com/p/psutil/
> [2] http://freshmeat.net/projects/iotop
> [3] http;//lxml.de
> [4]
> http://stackoverflow.com/questions/324214/what-is-the-fastest-way-to-parse-large-xml-docs-in-python
>

> Primeiramente gostaria de agradecer ao Carlos e Eduardo pelas respostas, já
devia ter respondido a dias, mas não estive muito bem de saúde.

Mauro vou analizar suas sugestões, eu estava quase implementando códigos
nativos em C e fazendo um Wrapper em Python, mas vou analizar suas
sugestões. Muito obrigado.



--

*@paulopatto*
RT *#**Confúcio: **"Dê a quem você ama: asas para voar, raízes para voltar e
motivos para ficar."*
*http://paulopatto.me/*

*


*

[As partes desta mensagem que não continham texto foram removidas]

__._,_.___
.

__,_._,___

@maltzsama

unread,
Oct 7, 2011, 6:38:12 PM10/7/11
to python...@yahoogrupos.com.br

Paulo Patto

unread,
Oct 7, 2011, 7:28:58 PM10/7/11
to python...@yahoogrupos.com.br
 

Paulo Patto;
enviado de um celular Android, desconsiderar erros.
Em 07/10/2011 19:38, "@maltzsama" <cau...@gmail.com> escreveu:

> **

__._,_.___
.

__,_._,___

Paulo Patto

unread,
Oct 7, 2011, 7:32:53 PM10/7/11
to python...@yahoogrupos.com.br
 

Mas a psutil funcionou bem no windows e linux, no window tive alguns
prblemas para compilar (instalação via pip), pois dava erro com o mingw e
msvc. Poré tem a solução pre compilada pelo desenvolvedor... mas foi de boa
o uso. Vou ver essa outra wmi, que eu já havia visto, vou testar, mas acho
que vou usar psutil para manter uma aior homogeniedde e simplicidade do
código.



Paulo Patto;
enviado de um celular Android, desconsiderar erros.
Em 07/10/2011 19:38, "@maltzsama" <cau...@gmail.com> escreveu:

> **
>
>

__._,_.___
.

__,_._,___

Alejandro Mesias ale.mesias@gmail.com [python-brasil]

unread,
Nov 2, 2014, 8:25:45 PM11/2/14
to python-brasil, python...@yahoogrupos.com.br
 

Wellington você se refere a criar registros do windows (que o regedit faz) ?

se for isso você tem o winreg que vem na lib padrão do python:

Isso não tem relação com a finalidade do psutil, até onde eu sei.

2014-10-29 22:32 GMT-02:00 Wellington Almeida Silva <wellington...@gmail.com>:
Boa noite, alguém ainda acessaria esse topico? rs
criei um algoritmo usando psutil para monitorar um processo especifico, esse modulo da suporte a criação de arquivos, conexões, mas não a criação de registros, não faço ideia de como monitorar essa parte usando a instancia desse processo no meu script. alguém tem uma dica de implementação?

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
======================================
Alejandro Mesias André Nebra Perez
Java/Python/Js/Something else Developer
Twitter: @meszias
Linux User #442506
Campinas - SP - Brasil - South America
======================================

__._,_.___

Enviado por: Alejandro Mesias <ale.m...@gmail.com>
Responder através da web através de email Adicionar um novo tópico Mensagens neste tópico (7)

.

__,_._,___
Reply all
Reply to author
Forward
0 new messages