Exibir "iftop" na web

1

Eu faço iftop -i eth1 > out.txt

Produz o arquivo com conteúdo de interface do usuário "criptografado", como [(B[)0[[1;80r[[mO[[?7h[[?1h[=[[H[[J[[0;7mO Listening on eth1 [[1;48H[[mO12.5Kb

É possível exibir isso como uma saída web xhtml de alguma forma?

cat out.txt no meu console produz uma janela iftop normal, mas quando eu faço a mesma coisa pela web, recebo o conteúdo acima. Eu entendo que é "gerenciado" no nível do kernel. A tarefa que quero realizar é possível?

    
por DmitrySemenov 23.05.2012 / 01:42

3 respostas

2

Provavelmente não é prático capturar a saída contínua de ncurses.

Provavelmente você pode tentar obter uma saída semelhante com ntop . É um pouco maior e tem muitos outros recursos, e é "mais bonita".

    
por 23.05.2012 / 01:48
2

O que você chama de "conteúdo criptografado da interface do usuário" são os códigos de controle do terminal que instruem o cursor a se mover para diferentes partes da tela e mudar de cor. Isto é o que faz com que a saída do iftop se pareça mais com uma interface gráfica e não apenas com a rolagem de linhas de texto. Quase todos os programas do console interativo usam esses códigos de terminal.

iftop é projetado para produzir uma exibição "gráfica" interativa, e não parece ser possível desativá-la. Você pode tentar analisá-los e removê-los, mas isso requer um conhecimento detalhado da duração e do significado de cada código de controle, que você pode encontrar on-line, mas provavelmente não vale o esforço.

Você pode literalmente executar iftop dentro de um emulador de terminal Javascript que entende esses códigos de controle e os converte em HTML, como Gate One, Shell em uma caixa ou AjaxTerm. Ele ainda parecerá um aplicativo de console para o usuário, mas não precisará instalar ou executar um cliente SSH.

Você pode querer investigar outras ferramentas. O pmacct , por exemplo, pode coletar informações sobre fluxos, semelhantes a iftop, e armazená-los em um banco de dados SQL ou em uma tabela na memória que você pode consultar usando uma ferramenta de linha de comando. Isso pode gerar a saída que você pode analisar a partir de um aplicativo da web. O servidor pmacct do netgraph escreve esta saída em JSON, para ser interpretado por um cliente javascript executando em um navegador e atualizando ao vivo.

Você também pode ser capaz de hackear o código-fonte iftop para retornar as informações desejadas em um formato mais amigável, como o AJAX.

    
por 28.08.2012 / 22:52
0
iftop -t > out.txt
Opção

-t faz o trabalho de remover todo o código do terminal

iftop manual diz o seguinte:

-t text output mode
      Use text interface without ncurses and print the output to STDOUT.
    
por 23.12.2015 / 10:31

Tags