comando netpmon

Propósito

Monitora a atividade e relata estatísticas sobre E/S de rede e uso de CPU relacionadas à rede.

Sintaxe

netpmon [ -o Arquivo ] [ -d ] [ -T n ] [ -P ] [ -t ] [ -v ] [-r PURR] [ -O ReportType ... ] [ -i Trace_File -n Gensyms_File ] [ -@ [WparList | TODOS] ]

Descrição

O comando netpmon monitora um traço de eventos do sistema, e relatórios sobre atividade e desempenho de rede durante o intervalo monitorado. Por padrão, o comando netpmon é executado em segundo plano enquanto um ou mais programas de aplicativos ou comandos do sistema estão sendo executados e monitorados. O comando netpmon automaticamente inicia e monitora um traço de eventos do sistema relacionados à rede em tempo real. Por padrão, o rastreio é iniciado imediatamente; opcionalmente, o rastreio pode ser adiado até que o usuário emite um comando trcon . Quando o rastreio é interrompido por um comando trcstop , o comando netpmon gera todos os relatórios e saídas especificados.

O comando netpmon também pode funcionar no modo offline, ou seja, em um arquivo de rastreio gerado anteriormente. Neste modo, também é necessário um arquivo gerado pelo comando gensyms . O arquivo gensyms deve ser gerado imediatamente após o rastreio ter sido interrompido, e na mesma máquina. Ao executar em modo offline, o comando netpmon não pode reconhecer protocolos usados por soquetes, o que limita o nível de detalhes disponível nos relatórios de socket.

O comando netpmon informa sobre as seguintes atividades do sistema:

Uso de CPU
O comando netpmon monitora o uso da CPU por todas as threads e interrompe manipuladores. Ele estima o quanto desse uso se deve a atividades relacionadas à rede.
Dispositivo de Rede-E/S de Driver
O comando netpmon monitora as operações de E/S através de drivers de dispositivo de rede token-ring e Fiber-Distributed Data Interface (FDDI). No caso da E/S de transmissão, o comando também monitora as utilizações, os comprimentos de filas e os hosts de destino. Para o ID do recebimento, o comando também monitora o tempo na camada de demux.
Chamadas de Internet Socket
O comando netpmon monitora todos os enviar, recv, sendto, recvfrom, reade write subroutines em soquetes da Internet. Ele relata estatísticas sobre uma base por processo, para cada um dos seguintes tipos de protocolo:
  • Internet Control Message Protocol (ICMP)
  • Transmission Control Protocol (TCP)
  • User Datagram Protocol (UDP)
NFS E/S
O comando netpmon monitora leitura e escrever subroutines em arquivos do Network File System (NFS) arquivos, cliente NFS Solicitações de procedimento remoto (RPC) e solicitações de leitura ou gravação de servidor NFS . O comando relata estatísticas subroutine sobre um por processo ou opcionais por thread e em uma base por arquivo para cada servidor. O comando netpmon relata estatísticas de RPC do cliente para cada servidor, e estatísticas de leitura e gravação de servidor para cada cliente.

Qualquer combinação dos tipos de relatório precedentes pode ser especificada com as bandeiras da linha de comando. Por padrão, todos os relatórios são produzidos.

Notas: Os relatórios produzidos pelo comando netpmon podem ser bastante longos. Consequentemente, a sinalização -o geralmente deve ser usada para gravar o relatório em um arquivo de saída. O comando netpmon obtém dados de desempenho usando a facilidade de rastreio do sistema. A instalação de trace suporta apenas um fluxo de saída. Consequentemente, apenas um processo netpmon ou trace pode ser ativo de uma vez. Se outro processo netpmon ou trace já estiver em execução, o comando netpmon responderá com a mensagem:
/dev/systrace: Device busy

Embora monitore muito aplicativos intensivos em rede, o comando netpmon pode não ser capaz de consumir eventos de rastreio tão rápido quanto produzidos em tempo real. Quando isso acontece, a mensagem de erro:

Trace kernel buffers overflowed, N missed entries

exibe em erro padrão, indicando quantos eventos de rastreio foram perdidos enquanto os buffers de rastreio estavam cheios. O comando netpmon continua monitorando a atividade da rede de monitoramento, mas a precisão do relatório diminui por algum grau desconhecido. Uma maneira de evitar o estouro é aumentar o tamanho do buffer de rastreio usando a sinalização -T , para acomodar queimadas maiores de eventos de rastreio antes do estouro. Outra maneira de evitar problemas de estouro todos juntos é executar netpmon no modo offline.

Ao executar em ambientes restrinados à memória (onde a demanda por memória excede a oferta), a sinalização -P pode ser usada para fixar as páginas de texto e de dados do processo netpmon em tempo real na memória para que as páginas não possam ser trocadas. Se a sinalização -P não for usada, permitindo que o processo netpmon seja trocado para fora, o progresso do comando netpmon pode ser retardado tal que não pode processar eventos de rastreio rápido o suficiente para evitar o estouro de buffer de rastreio.

Se o arquivo /unix e o kernel em execução não forem os mesmos, os endereços do kernel estarão incorretos, fazendo com que o comando netpmon saia.

Sinalizações

Item Descrição
-d Inicia o comando netpmon , mas os defers traçando até que o comando trcon tenha sido executado pelo usuário. Por padrão, o rastreio é iniciado imediatamente.
-i Arquivo de rastreamento Lê registros de rastreio a partir do arquivo Trace_File produzido com o comando trace em vez de um sistema vivo. O arquivo de rastreamento deve ser reescrito primeiro no formato bruto usando o comando trcpt -r. Esta sinalização não pode ser usada sem a sinalização -n .
-n Gensyms_File Lê informações de mapeamento necessárias do arquivo Gensyms_File produzido pelo comando gensyms . Esta sinalização é obrigatória quando a sinalização -i é usada.
-o Arquivo Escreve os relatórios para o Arquivoespecificado, em vez de para a saída padrão.
-O ReportType ... Produz os tipos de relatório especificados. Os valores do tipo de relatório válido são:
cpu
Uso de CPU
dd
Dispositivo de rede-driver I/O. Este relatório não está disponível dentro de uma partição de carga de trabalho (WPAR) no modo online ou no WPAR global com a bandeira '-@ WparList'.
so
E/S de chamada de soquete de Internet
NFS
NFS E/S (qualquer versão)
nfs2
NFS Versão 2 E/S
nfs3
NFS Versão 3 E/S
nfs4
NFS Versão 4 E/S
Tudo
Todos os relatórios são produzidos. Este é o valor padrão quando o comando netpmon é executado no WPAR global sem a sinalização -@ .
-P Processo de monitor de pinos na memória. Esta sinalização faz com que o texto netpmon e as páginas de dados sejam depositados em memória para a duração do período de monitoramento. Esta sinalização pode ser usada para garantir que o processo netpmon em tempo real não fique sem espaço de memória ao ser executado em um ambiente restringida à memória.
-r PURR Usa o tempo PURR em vez de TimeBase em percentual e cálculo de tempo de CPU. Os cálculos de tempo transcorridos são pouco afetados.
-t Imprime relatórios de CPU em uma base por encadeamento.
-T n Configura o tamanho do buffer de rastreio do kernel para n bytes. O tamanho padrão é 64000 bytes. O tamanho do buffer pode ser aumentado para acomodar explosões maiores de eventos, se houver. (Um tamanho de registro de eventos típico é na ordem de 30 bytes.)

Nota: O driver de rastreio no kernel usa buffering duplo, portanto, na verdade dois buffers de tamanho n bytes serão alocados. Esses buffers são fixados em memória, por isso não estão sujeitos a paginação.

-v Imprime informações extras no relatório. Todos os processos e todos os arquivos remotos acessados estão incluídos no relatório em vez de apenas os 20 processos e arquivos mais ativos.
- @ [ WparList|ALL ] Especifica que os relatórios são limitados à lista de WPARs que são transmitidos como argumento.

Relatórios

Os relatórios gerados pelo comando netpmon começam com um cabeçalho, que identifica a data, o ID da máquina e o comprimento do período de monitoramento em segundos. Isso é seguido por um conjunto de relatórios sumários e detalhados para todos os tipos de relatórios especificados.

Relatórios de Uso da CPU

Estatísticas de Uso da CPU do processo: Cada linha descreve o uso da CPU associado a um processo. A menos que a opção de verbose seja especificada, apenas os 20 processos mais ativos estão listados. Na parte inferior do relatório, o uso da CPU para todos os processos é totalizado e o tempo ocioso da CPU é informado.

Process
Nome do processo
PID
Número do ID do processo
CPU Time
Quantidade total de tempo de CPU utilizada por este processo
CPU %
Uso da CPU para este processo como uma porcentagem do tempo total
Network CPU %
Percentual de tempo total que esse processo passou executando código relacionado à rede
Thread CPU Usage Statistics
Se a sinalização -t for usada, cada linha de processo descrita acima é imediatamente seguida por linhas descrevendo o uso da CPU de cada thread pertencente a esse processo. Os campos nessas linhas são idênticos àqueles para o processo, exceto para o campo de nome. (Threads não são nomeadas.)

Estatísticas de Uso do manipulador de interrupção de primeiro nível: Cada linha descreve o uso da CPU associado a um manipulador de interrupção de primeiro nível (FLIH). Na parte inferior do relatório, o uso da CPU para todas as FLIHs é totalizado.

FLIH
Descrição do manipulador de interrupção de primeiro nível
CPU Time
Quantidade total de tempo de CPU utilizada por esta FLIH
CPU %
Uso da CPU para este manipulador de interrupção como uma porcentagem do tempo total
Network CPU %
Porcentagem de tempo total que este manipulador de interrupção executou em nome de eventos relacionados à rede

Estatísticas de Uso do manipulador de interrupção de segundo nível: Cada linha descreve o uso da CPU associado a um manipulador de interrupção de segundo nível (SLIH). Na parte inferior do relatório, o uso da CPU para todos os SLIHs é totalizado.

SLIH
Descrição do manipulador de interrupção de segundo nível
CPU Time
Quantidade total de tempo de CPU utilizada por esta SLIH
CPU %
Uso da CPU para este manipulador de interrupção como uma porcentagem do tempo total
Network CPU %
Porcentagem de tempo total que este manipulador de interrupção executou em nome de eventos relacionados à rede

Resumo do Dispositivo de Rede-Relatórios de Driver

Dispositivo de Rede-Estatísticas de Driver (por Dispositivo): Cada linha descreve as estatísticas associadas a um dispositivo de rede.

Device
Nome do caminho do arquivo especial associado ao dispositivo
Xmit Pkts/s
Pacotes por segundo transmitidos através deste dispositivo
Xmit Bytes/s
Bytes por segundo transmitidos através deste dispositivo
Xmit Util
Tempo de ocupação para este dispositivo, como um percentual de tempo total
Xmit Qlen
Número de pedidos que esperam ser transmitidos através deste dispositivo, em média ao longo do tempo, incluindo qualquer transação atualmente a ser transmitida
Recv Pkts/s
Pacotes por segundo recebidos através deste dispositivo
Recv Bytes/s
Bytes por segundo recebidos através deste dispositivo
Recv Demux
Tempo gasto na camada de demux como uma fração do tempo total

Network Device-Driver Transmit Statistics (por Destination Host): Cada linha descreve a quantidade de tráfego de transmissão associada a um determinado host de destino, no nível do driver de dispositivo.

Quando os hosts estão na mesma sub-rede, o nome do host de destino é exibido. Quando os hosts estão em uma sub-rede diferente, o host de destino pode ser pontes, roteadores ou gateways como resolvido por protocolo ARP.

Host
Nome do host de destino. Um * (asterisco) é usado para transmissões para as quais nenhum nome de host pode ser determinado.
Pkts/s
Pacotes por segundo transmitidos para este host
Xmit Bytes/s
Bytes por segundo transmitido para este host

Resumo da Internet Socket Reports

  • Modo on-line: Estatísticas de Chamada de Soquetes para Cada Internet Protocol (por Processo): Cada linha descreve a quantidade de atividade subroutina read / write em sockets desse tipo de protocolo associado a um determinado processo. A menos que a opção de verbose seja especificada, apenas os 20 principais processos são listados. Na parte inferior do relatório, todas as chamadas de soquete para este protocolo são totalizadas.
  • Modo de Off-line: Estatísticas de Chamada de Soquetes para Cada Processo: Cada linha descreve a quantidade de atividade subroutina read / write em soquetes associados a um determinado processo. A menos que a opção de verbose seja especificada, apenas os 20 principais processos são listados. Na parte inferior do relatório, todas as chamadas de soquete são totalizadas.
Process
Nome do processo
PID
Número do ID do processo
Read Calls/s or Read Ops/s
Número de subroutines read , recv e recvfrom por segundo feito por este processo em soquetes deste tipo
Read Bytes/s
Bytes por segundo solicitado pelas chamadas acima
Write Calls/s or Write Ops/s
Número de subroutines de gravação , enviar e sendto por segundo feito por este processo em soquetes deste tipo
Write Bytes/s
Bytes por segundo escrito por este processo para soquetes deste tipo de protocolo

Resumo NFS Relatórios

NFS Estatísticas do Cliente para Cada Servidor (por Arquivo): Cada linha descreve a quantidade de read/write atividade subroutine associada a um arquivo montado remotamente deste servidor. A menos que a opção de verbose seja especificada, apenas os 20 principais arquivos estão listados. Na parte inferior do relatório, chamadas para todos os arquivos deste servidor são totalizados.

File
Nome do arquivo simples
Read Calls/s or Read Ops/s
Número de subroutines read por segundo neste arquivo
Read Bytes/s
Bytes por segundo solicitado pelas chamadas acima
Write Calls/s or Write Ops/s
Número de subroutines de gravação por segundo neste arquivo
Write Bytes/s
Bytes por segundo escrito a este arquivo

NFS Client RPC Statistics (por Servidor): Cada linha descreve o número de chamadas de procedimento remoto NFS sendo feitas por este cliente para um determinado servidor NFS . Na parte inferior do relatório, as chamadas para todos os servidores são totalizadas.

Server
Nome do host de servidor. Um * (asterisco) é usado para chamadas RPC para as quais nenhum hostname poderia ser determinado.
Calls/s or Ops/s
Número de chamadas de NFS RPC por segundo sendo feitas para este servidor.

NFS Estatísticas do Cliente (por Processo): Cada linha descreve a quantidade de NFS read/write atividade subroutine associada a um determinado processo. A menos que a opção de verbose seja especificada, apenas os 20 principais processos são listados. Na parte inferior do relatório, as chamadas para todos os processos são totalizadas.

Process
Nome do processo
PID
Número do ID do processo
Read Calls/s or Read Ops/s
Número de subroutines de NFS read por segundo feito por este processo
Read Bytes/s
Bytes por segundo solicitado pelas chamadas acima
Write Calls/s or Write Ops/s
Número de subroutines de NFS write por segundo feito por este processo
Write Bytes/s
Bytes por segundo escrito a NFS arquivos montados por este processo

NFS Server Statistics (por Client): Cada linha descreve a quantidade de atividade NFS tratada por este servidor em nome de determinado cliente. Na parte inferior do relatório, as chamadas para todos os clientes são totalizadas.

Client
Nome do host do cliente
Read Calls/s or Read Ops/s
Número de pedidos de leitura remota por segundo processado em nome deste cliente
Read Bytes/s
Bytes por segundo solicitado pelas chamadas de leitura deste cliente
Write Calls/s or Write Ops/s
Número de pedidos de gravação remota por segundo processado em nome deste cliente
Write Bytes/s
Bytes por segundo escrito por este cliente
Other Calls/s or Ops/s
Número de outros pedidos remotos por segundo processados em nome deste cliente

Relatórios detalhados

Relatórios detalhados são gerados para qualquer um dos tipos de relatório especificados. Para esses tipos de relatório, um relatório detalhado é produzido para a maioria dos relatórios sumários. Os relatórios detalhados contêm uma entrada para cada entrada nos relatórios de resumo com estatísticas para cada tipo de transação associada à entrada.

As estatísticas de transações consistem em uma contagem do número de transações desse tipo, seguidas de tempo de resposta e dados de distribuição de tamanho (quando aplicável). Os dados de distribuição consistem em valores médios, mínimos e máximos, bem como de desvios padrão. Cerca de dois terços dos valores estão entreaverage - standard deviationeaverage + standard deviation. Tamanhos são relatados em bytes. Os tempos de resposta são relatados em milissegundos.

Estatísticas de Uso da CPU do Secundário Detalhado do Segundo Nível:

SLIH
Nome do manipulador de interrupção de segundo nível
Count
Número de interrupções deste tipo
CPU Time (Msec)
Estatísticas de uso da CPU para manipulação de interrupções deste tipo

Estatísticas Detalhadas do Driver de Rede (por Dispositivo):

Device
Nome do caminho do arquivo especial associado ao dispositivo
Recv Packets
Número de pacotes recebidos através deste dispositivo
Recv Sizes (Bytes)
Estatísticas de tamanho para pacotes recebidos
Recv Times (msec)
Estatísticas de tempo de resposta para processamento de pacotes recebidos
Xmit Packets
Número de pacotes transmitidos para este host
Demux Times (msec)
Estatísticas de tempo para processamento receberam pacotes na camada de demux
Xmit Sizes (Bytes)
Estatísticas de tamanho para pacotes transmitidos
Xmit Times (Msec)
Estatísticas de tempo de resposta para processamento de pacotes transmitidos

Detalhado Network Device-Driver Transmitir Estatísticas (por Host):

Host
Nome do host de destino
Xmit Packets
Número de pacotes transmitidos através deste dispositivo
Xmit Sizes (Bytes)
Estatísticas de tamanho para pacotes transmitidos
Xmit Times (Msec)
Estatísticas de tempo de resposta para processamento de pacotes transmitidos

Estatísticas Detalhadas de Chamada de Soquete para Cada Internet Protocol (por Processo): (on-line mode) Estatísticas de Chamadas de Soquete Detalhadas para Cada Processo: (off-line mode)

Process
Nome do processo
PID
Número do ID do processo
Reads
Número de subroutines read , recv , recvfrom e recvmsg feitas por este processo em soquetes deste tipo
Read Sizes (Bytes)
Estatísticas de tamanho para chamadas read
Read Times (Msec)
Estatísticas de tempo de resposta para chamadas read
Writes
Número de subroutines de gravação , enviar , sendto e sendmsg feitas por este processo em soquetes deste tipo
Write Sizes (Bytes)
Estatísticas de tamanho para chamadas write
Write Times (Msec)
Estatísticas de tempo de resposta para chamadas write

Detalhado NFS Estatísticas do Cliente para Cada Servidor (por Arquivo):

File
Nome do caminho do arquivo
Reads
Número de subroutines de NFS read para este arquivo
Read Sizes (Bytes)
Estatísticas de tamanho para chamadas read
Read Times (Msec)
Estatísticas de tempo de resposta para chamadas read
Writes
Número de subroutines de NFS write para este arquivo
Write Sizes (Bytes)
Estatísticas de tamanho para chamadas write
Write Times (Msec)
Estatísticas de tempo de resposta para chamadas write

Detalhado NFS Client RPC Estatísticas (por Servidor):

Server
Nome do host do servidor
Calls
Número de chamadas de RPC do cliente NFS feitas para este servidor
Call Times (Msec)
Estatísticas de tempo de resposta para chamadas RPC

Detalhado NFS Estatísticas do Cliente (por Processo):

Process
Nome do processo
PID
Número do ID do processo
Reads
Número de subroutines de NFS read feitas por este processo
Read Sizes (Bytes)
Estatísticas de tamanho para chamadas read
Read Times (Msec)
Estatísticas de tempo de resposta para chamadas read
Writes
Número de subroutines de NFS write feitas por este processo
Write Sizes (Bytes)
Estatísticas de tamanho para chamadas write
Write Times (Msec)
Estatísticas de tempo de resposta para chamadas write

Estatísticas do Servidor NFS detalhadas (por Cliente):

Client
Nome do host do cliente
Reads
Número de solicitações de leitura NFS recebidas deste cliente
Read Sizes (Bytes)
Estatísticas de tamanho para solicitações de leitura
Read Times (Msec)
Estatísticas de tempo de resposta para solicitações de leitura
Writes
Número de solicitações de gravação de NFS recebidas deste cliente
Write Sizes (Bytes)
Estatísticas de tamanho para pedidos de gravação
Write Times (Msec)
Estatísticas de tempo de resposta para solicitações de gravação
Other Calls
Número de outros pedidos de NFS recebidos deste cliente
Other Times (Msec)
Estatísticas de tempo de resposta para outros pedidos

Exemplos

  1. Para monitorar a atividade da rede durante a execução de determinados programas de aplicativos e gerar todos os tipos de relatório, digite:
    netpmon
    <run application programs and commands here>
    trcstop

    O comando netpmon inicia automaticamente o rastreio do sistema e coloca-se em segundo plano. Programas de aplicativos e comandos do sistema podem ser executados neste momento. Depois que o comando trcstop é emitido, todos os relatórios são exibidos na saída padrão.

  2. Para gerar tipos de relatório CPU e NFS e escrever os relatórios para onmon.outarquivo, digite:
    netpmon -o nmon.out -O cpu,nfs
    <run application programs and commands here>
    trcstop

    O comando netpmon imediatamente inicia o rastreio do sistema. Depois que o comando trcstop é emitido, o relatório de atividade de E/S é gravado nonmon.out. Apenas os relatórios da CPU e NFS serão gerados.

  3. Para gerar todos os tipos de relatório e gravar saída de verbose para onmon.outarquivo, digite:
    netpmon -v -o nmon.out
    <run application programs and commands here>
    trcstop

    Com a saída de verbose, o comando netpmon indica os passos que ele está tomando para iniciar o rastreio. Os relatórios sumários e detalhados incluem todos os arquivos e processos, em vez de apenas os 20 arquivos e processos mais ativos.

  4. Para usar o comando netpmon no modo offline, digite:
    trace -a
    run application programs and commands here
    trcoff
    gensyms > gen.out
    trcstop
    netpmon -i tracefile -n gen.out -o netpmon.out