rastrear quais arquivos estão causando a atividade io no iostat

1

Usando

iostat -Nkx 1

Posso ver que recebo IO regular em um grupo de volumes. O que estou tentando fazer é encontrar uma maneira de vincular esse IO a um arquivo / canal / o que quer que seja para ver qual processo está criando esse IO e qual destino ele está atingindo. Alguém já se deparou com isso antes e resolveu por favor?

    
por Khushil 17.09.2012 / 19:16

2 respostas

1

Não consigo pensar em um caminho definitivo, mas esta é uma tentativa que deve fazer algum trabalho. Eu acho que você pode blktrace e coletar os dados e, em seguida, usar o blkparse para vê-lo. As chamadas do sistema devem mostrar quais são responsáveis por gerar IO. E então, se você puder mapear as chamadas do sistema para os arquivos correspondentes, poderá obter algumas dicas. Por exemplo, se você vir um bom número de chamadas mkdir e criar um novo diretório ou algo assim, poderá atribuir o IO a isso.

Você pode até mesmo usá-lo e usar o seekwatcher para ver o padrão IO no nível do sistema de arquivos. Mas, eu realmente não conheço uma ferramenta para obter quais arquivos são responsáveis pelo IO.

    
por 17.09.2012 / 19:35
0

Você deu uma olhada em iotop para tentar isolar os processos problemáticos pelo nome ou ID do processo (PID)? A partir daí, lsof -p PID forneceria uma imagem razoável dos arquivos principais em uso.

    
por 17.09.2012 / 20:43