Glances - Monitoramento de Processos e Perfomance

Em uma tela só, exibe números sobre processos, CPU, memória e outros parâmetros que são essenciais para um sysadmin manter o monitoramento dos seus servidores ao alcance dos olhos. Glances é um software de monitoramento CLI baseado em Curses. Não espere gráficos, imagens e animações. O Glances é um software de monitoramento presencial.

[ Hits: 20.588 ]

Por: Dailson Fernandes (fofão) - http://www.dailson.com.br em 17/09/2012


Introdução



Este artigo também está publicado em meu blog:

Olho em seu sistema

Este é o lema principal do Glances. Em uma tela só, números sobre processos, CPU, memória e outros parâmetros que são essenciais para um SysAdmin manter o monitoramento dos seus servidores, ao alcance dos seus olhos.

Glances é um software de monitoramento CLI (Command Line Interface) baseado em Curses. Não espere gráficos, imagens, animações e alertas. É um software de monitoramento presencial. ;)

A página oficial é esta:
E é mantido pelo programador Nicolas Hennion. O Software é feito em Python.

Sua interface traz dados imediatos sobre:
  • O uso do processador (por Core, por processador);
  • Carga do sistema;
  • Uso da memória RAM;
  • Uso da memória swap;
  • Quantidade de processos (ordenado por uso de CPU, memória ...);
  • Uso das placas de rede;
  • Uso dos HDs e partições (Inputs e Outputs);
  • Uso de espaço das partições e dispositivos de armazenamento.

A tela é simples, mas é atualizada a cada segundo e tem tudo que um SysAdmin precisa.

Veja este exemplo, numa interface de 80x24 linhas (Uma tela típica de console):

Outro exemplo ele em uma tela maior (wide) de 90x24:

Note no exemplo da figura acima, que ele gera alertas quando alguns limites são alcançados.

* Dica: Não espere gerenciar processos com o Glances, para isso use o Htop, que abordei em um tópico no meu blog:

Instalação do Glances

Existem diversas maneiras de instalar o Glances. Iremos abordar algumas aqui.

Pré-requisitos:
  • Python 2.6 ou superior;
  • Para distribuições baseadas em Debian, o pacote build-essential (para instalação via Pypi e setup.py);
  • Para distribuições baseadas em Red Hat/Fedora/CentOS, o pacote Development Tool (para instalação via Pypi e setup.py);
  • python-dev (para instalação via Pypi);
  • python-setuptools (para instalação via setup.py);
  • python-psutil 0.4.1 ou superior;
  • python-jinja2 2.0 ou superior (opcional para exportar HTML ).

Obs.: Se você for instalar via apt-get ou yum, não se preocupe, todas estas dependências são resolvidas automaticamente.

Método 1.

Instalando em distribuições Debian:

sudo apt-get install python-pip build-essential python-dev
$ sudo pip install glances


Método 2.

Utilizando os repositórios PPA no Ubuntu/Mint:

sudo add-apt-repository ppa:arnaud-hartmann/glances-stable
$ sudo apt-get update
$ sudo apt-get install glances


Método 3.

Utilizando a instalação via YUM no Red Hat/Fedora/CentOS:

su -
# yum install openstack-glance


Método 4.

Compilando através do código-fonte:

wget -O /tmp/glances-last.tgz https://github.com/nicolargo/glances/tarball/master
sudo apt-get install python-setuptools build-essential python-dev
$ cd /tmp
$ tar zxvf glances-last.tgz
$ cd nicolargo-glances-*
$ sudo python setup.py install


Para executar, basta apenas digitar:

glances

Por padrão, o Glances atualiza a tela a cada segundo, se quiser mudar o tempo, use o parâmetro -t:

glances -t 5

Conhecendo o Glances

O Glances é bastante simples. Abaixo algumas informações sobre Cores do sistema e algumas teclas de atalho:

O status das cores.

É importante ressaltar aqui o que cada cor representa no Glances:
  • Verde: Tudo certo!
  • Azul: Atenção ...
  • Magenta: Cuidado ...
  • Vermelho: Estado crítico!

Durante o uso do Glances você pode utilizar algumas teclas de atalho para mudar seu comportamento:
  • h → Exibe ajuda;
  • c → Ordena os processos por consumo do processador;
  • d → Habilita/desabilita a exibição do status de I/O do disco;
  • f → Habilita/desabilita a exibição do status de I/O dos arquivos;
  • I → Habilita/desabilita os logs (alertas no fim da tela quando algum limite é alcançado);
  • n → Habilita/desabilita a exibição do status de I/O das placas de rede;
  • p → Ordena pelo nome dos processos;
  • q → Sai.

As colunas exibidas pelo Glances são:
  • VIRT: Memória virtual em bytes
  • REST: Total residente em memória em bytes
  • CPU%: % de CPU utilizada
  • MEM%: % de MEM utilizada
  • PID: Identificador do processo
  • USER: Usuário dono do processo
  • NI: Prioridade do processo.
  • S: Status do processo:
    • R - Running
    • D - Sleeping (não pode ser interrompido)
    • S - Sleeping (pode ser interrompido)
    • T - Traced ou Stopped
    • Z - Zombie

  • IO Read and Write
  • TIME+: Uso total da CPU em tempo
  • NAME: Nome do processo

Fonte: http://nicolargo.github.com/glances

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Eu cavo, tu cavas, ele cava... tutorial de DIG

Utilizando o RSYNC para fazer backups de servidores e estações Windows

Instalando a nova versão do HLBR - IPS invisível

NTFS-3g: Leitura e gravação em NTFS com segurança? Ainda não!

Enrolado para configurar o Samba? Chame o SWAT

Leitura recomendada

Como criar um box para o Vagrant

Emulando o Internet Explorer no Slackware

Hamachi no Ubuntu 12.04 - Instalação e configuração

IBM Omni Find Yahoo: Um mecanismo de busca corporativa em seu servidor

Bioinformática - PhyML: alinhamento de sequências nucleotídicas em ambiente paralelo

  
Comentários
[1] Comentário enviado por danniel-lara em 18/09/2012 - 10:34h

Parabéns pelo artigo
já estou testando

[2] Comentário enviado por foxbit3r em 18/09/2012 - 17:40h

A tela do glace para linux lembra muito a tela do topas do AIX.
Apesar que existe o glance para HP-UX, porém eu não cheguei a ver.
Parabéns pela publicação.

[3] Comentário enviado por dailson em 20/09/2012 - 16:06h

Obrigado PessoALL,

Ele parece sim com o topas, porém este tem mais umas firulinhas de cores e estética.

[4] Comentário enviado por thyagobrasileiro em 21/09/2012 - 15:06h

Achei o artigo muito basico, com todas as facilidades de instalaçao e configuração, o que custaria ter testado pessoalmente e ter feito seus proprios print em vez de ter copiado da fonte. Esperava mais...

[5] Comentário enviado por mapkino em 26/09/2012 - 18:34h

Gostei.
Gostei tb do efeitinho de atraso na saida.
Obrigado.

[6] Comentário enviado por junkes em 08/01/2015 - 22:53h

Muito bom... pra quem quiser algo mais simples só pra acompanhar a memória enquanto testa alguma aplicação eu fiz esse programinha em python. Copie o código para um editor de texto e salve como memoria.py. Verifique qual o python que vc tem na máquina... se não for python 3 precisa fazer a alteração informada no comentário. Abraço.

substitua as 4 interrogações por 4 espaços ou por uma tabulação.

from tkinter import * # importante: se for usar Python 2 mude tkinter para Tkinter('T' maiúsculo)

w = Tk()
w.geometry('200x80+100+100')
w.title('Memória')
lab = Label(w)
lab.pack()
lab.place(x = 10, y = 10)

def atualiza():
????arquiv = open('/proc/meminfo')
????valor = arquiv.readlines()
????total = valor[0]
????livre = valor[1]
????lab['text'] = (total+'\n'+livre)
????arquiv.close()
????w.after(100, atualiza)

atualiza()
w.mainloop()

[7] Comentário enviado por rafaelSupertramp em 11/11/2015 - 11:54h


dailson, muito bom o post!

Um pergunta,,, a coluna NAME tem como estender o comando inteiro igual no TOP?

Obrigado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts