Preciso de um programa ou ferramenta para registrar o uso de memória (RAM) e salvá-lo em um arquivo para que eu possa pegar o arquivo e abri-lo. para que eu possa ver o resultado e fazer a comparação com outros sozinho.
Responder1
Você pode usar o seguinte comando no bash assim:
for i in `seq 0 60`; do
echo `cat /proc/meminfo | grep Active: | sed 's/Active: //g'` >> usage.txt
sleep 1m
done
Este comando registrará o uso atual da memória em um arquivo chamado 'usage.txt' a cada minuto durante 1 hora.
Se desejar, você pode alterar a usage.txt
parte do comando para salvar com um nome diferente. Você também pode alterar o sleep 1m
comando para alterar o tempo entre cada entrada e o '60' na seq
seção superior para alterar o número de entradas a serem registradas.
Ao terminar de fazer suas entradas, você terá um arquivo de texto com as entradas que pode ser importado para uma planilha para facilitar a comparação.
EDIT: Se desejar gravar também a memória total com cada entrada, você pode usar os seguintes comandos:
for i in `seq 0 60`; do
echo `cat /proc/meminfo | grep Active: | sed 's/Active: //g'`/`cat /proc/meminfo | grep MemTotal: | sed 's/MemTotal: //g'` >> usage.txt
sleep 1m
done
Em vez disso, esses comandos registrarão entradas na forma de<active>/<total>
Responder2
sysstatfaz exatamente isso - é executado em uma programação cron e registra várias métricas do sistema (CPU, RAM, uso de dispositivos de bloco e assim por diante). Basicamente você apt-get install sysstat
e esqueça isso. Por padrão ele mantém as métricas do último mês.
Mais tarde, quando precisar diagnosticar um problema, você poderá usar sua CLI,sar, para navegar pelos dados ou por uma GUI de terceiros,ksarpara visualização.