Escolar Documentos
Profissional Documentos
Cultura Documentos
Marco Gomes
mpglesi@gmail.com Departamento de Informtica Universidade do Minho
Marco Gomes
RRD::Simple
RRD::Simple. . .
Da documentao: (. . . ) is ideal for quick and simple storage of data within an RRD le (. . . )
Marco Gomes
RRD::Simple
Marco Gomes
RRD::Simple
Marco Gomes
RRD::Simple
Marco Gomes
RRD::Simple
RRD signica Round Robin DataBase. Um cheiro RRD no aumenta de tamanho. Os valores armazenados tem que ser numricos mas no precisam de ser apenas inteiros.
Marco Gomes
RRD::Simple
RRD signica Round Robin DataBase. Um cheiro RRD no aumenta de tamanho. Os valores armazenados tem que ser numricos mas no precisam de ser apenas inteiros.
Como o manipulamos?
Marco Gomes
RRD::Simple
RRD signica Round Robin DataBase. Um cheiro RRD no aumenta de tamanho. Os valores armazenados tem que ser numricos mas no precisam de ser apenas inteiros. RRDTool.
Como o manipulamos?
1
Marco Gomes
RRD::Simple
RRDTool
RRDTool!! O que ? uma ferramenta :-)
Marco Gomes
RRD::Simple
RRDTool
RRDTool!! O que ? uma ferramenta :-) Cria, guarda e obtm dados de cheiros RRD.
Marco Gomes
RRD::Simple
RRDTool
RRDTool!! O que ? uma ferramenta :-) Cria, guarda e obtm dados de cheiros RRD. Gera grcos a partir dos dados contidos no cheiro RRD.
Marco Gomes
RRD::Simple
RRDTool
RRDTool!! O que ? uma ferramenta :-) Cria, guarda e obtm dados de cheiros RRD. Gera grcos a partir dos dados contidos no cheiro RRD.
Pode ser usado para medir: Download/Upload de uma ligao, utilizao do CPU e da memria, entre outros. . .
Marco Gomes RRD::Simple
RRDTool (continuao..)
RRDTool. Como funciona? Criar um cheiro RRD para armazenar os dados. rrdtool create . . .
Marco Gomes
RRD::Simple
RRDTool (continuao..)
RRDTool. Como funciona? Criar um cheiro RRD para armazenar os dados. rrdtool create . . . Obter novos dados e actualizar o cheiro. rrdtool update . . .
Marco Gomes
RRD::Simple
RRDTool (continuao..)
RRDTool. Como funciona? Criar um cheiro RRD para armazenar os dados. rrdtool create . . . Obter novos dados e actualizar o cheiro. rrdtool update . . . Extrair os dados do cheiro para visualizao ou para criao de grcos. rrdtool fetch . . . rrdtool graph . . .
Marco Gomes
RRD::Simple
Em Perl
O que pretendemos?
Marco Gomes
RRD::Simple
Em Perl
O que pretendemos?
Criar scripts para monotorizao.
Marco Gomes
RRD::Simple
Em Perl
O que pretendemos?
Criar scripts para monotorizao.
Como faze-lo?
Marco Gomes
RRD::Simple
Em Perl
O que pretendemos?
Criar scripts para monotorizao.
Como faze-lo?
Usar o comando rrdtool. system(rrdtool . . . )
Marco Gomes
RRD::Simple
Em Perl
O que pretendemos?
Criar scripts para monotorizao.
Como faze-lo?
Usar o comando rrdtool. system(rrdtool . . . ) Usar um mdulo.
RRD::Simple RRDTool::OO
Marco Gomes
RRD::Simple
Em Perl
O que pretendemos?
Criar scripts para monotorizao.
Como faze-lo?
Usar o comando rrdtool. system(rrdtool . . . ) Usar um mdulo.
RRD::Simple RRDTool::OO
Marco Gomes
RRD::Simple
RRD::Simple
Mtodos Principais: new - Criar um novo objecto. create - Criar um cheiro RRD. update - Actualizar o cheiro RRD. graph - Gerar um grco.
Marco Gomes
RRD::Simple
RRD::Simple
Mtodos Principais: new - Criar um novo objecto. create - Criar um cheiro RRD. update - Actualizar o cheiro RRD. graph - Gerar um grco. Outros Mtodos: last - Obter quando foi feita a ltima actualizao. sources - Obter a lista dos campos armazenados. add_source - Adicionar um novo campo ao cheiro RRD. rename_source - Alterar o nome de um campo. info - Obter detalhes do cheiro RRD.
Marco Gomes RRD::Simple
Exemplo
Objectivo: Criar um script para recolher estatsticas e gerar dois grcos que mostram:
consumo de CPU e memria. quantidade de download e upload.
Marco Gomes
RRD::Simple
Exemplo - Parte I
Criar um novo objecto:
my $ r r d = RRD : : Simple new ( ) ;
Marco Gomes
RRD::Simple
Exemplo - Parte I
Criar um novo objecto:
my $ r r d = RRD : : Simple new ( ) ;
Marco Gomes
RRD::Simple
Exemplo - Parte II
Actualizar o cheiro RRD:
while ( 1 ) { my $ o b j = L i n u x : : S t a t i s t i c s new( P r o c S t a t s 1 , MemStats 1 , NetStats 1 ) ; sleep ( 1 ) ; my $ s t a t s = $ o b j g e t S t a t s ; $ r r d update ( " f i l e 1 . r r d " , cpu $ s t a t s { P r o c S t a t s } { T o t a l } , mem $ s t a t s { MemStats } { MemUsedPer } , ); $ r r d update ( " f i l e 2 . r r d " , down $ s t a t s { NetStatsSum } { RxBytes } , up $ s t a t s { NetStatsSum } { TxBytes } , ); }
Marco Gomes
RRD::Simple
Marco Gomes
RRD::Simple
Exemplo - Resultados
Marco Gomes
RRD::Simple
Exemplo - Resultados
Marco Gomes
RRD::Simple
Referncias:
Marco Gomes
RRD::Simple