it-swarm-pt.tech

histórico de uptime do linux

Como posso obter um histórico de uptimes para minha caixa debian? Depois de uma reinicialização, não vejo uma opção para o comando uptime para imprimir um histórico de uptimes. Se for importante, eu gostaria de usar esses uptimes para representar graficamente uma página em php para mostrar o tempo de atividade de meus servidores web entre as inicializações.

Update: Não tenho certeza se é baseado em um período de tempo ou se a última reinicialização é reinicializada, mas só recebo o timestamp de inicialização mais recente com o último comando. last -x também não retorna mais nenhuma informação. Parece que um roteiro é a minha melhor aposta.

Update: Uptimed é a informação que estou procurando, não tenho certeza de como grep essa informação no código. Gerenciando meu próprio script para um banco de dados soa como o melhor ajuste para um aplicativo.

32
Jas

Você pode criar um script simples que executa o tempo de atividade e o despeja em um arquivo.

uptime >> uptime.log

Em seguida, configure um cron job para isso.

26
etchasketch

Instalar uptimed . Faz exatamente o que você quer.

Editar:

Você pode, aparentemente, incluí-lo em uma página PHPtão facilmente como esta:

<? system("/usr/local/bin/uprecords -a -B"); ?>

Exemplos - link quebrado?

47
1800 INFORMATION

o comando last lhe dará os tempos de reinicialização do sistema. Você poderia ter a diferença entre cada reinicialização sucessiva e isso deve dar o tempo de atividade da máquina.

update

1800 INFORMAÇÃO resposta é uma solução melhor.

22
roo

de acordo com a página de manual last:

A pseudo-reinicialização do usuário efetua login sempre que o sistema é reinicializado. Assim, a última reinicialização mostrará um registro de todas as reinicializações desde que o arquivo de log Foi criado.

portanto, a última coluna do comando #last reboot fornece o histórico de tempo de atividade:

#last reboot
reboot   system boot  **************** Sat Sep 21 03:31 - 08:27 (1+04:56)   
reboot   system boot  **************** Wed Aug  7 07:08 - 08:27 (46+01:19)
7
sepehr

Tente isso: 

last | grep reboot 
5
none

Eu criaria um cron job para rodar na resolução requerida (digamos, 10 minutos) digitando o seguinte [on one single line - acabei de separá-lo para fins de formatação] no seu crontab (cron -l to list , cron -e para editar).

0,10,20,30,40,50 * * * *
    /bin/echo $(/bin/date +\%Y-\%m-\%d) $(/usr/bin/uptime)
    >>/tmp/uptime.hist 2>&1

Isso acrescenta a data, a hora e o tempo de atividade ao arquivo uptime.hist a cada dez minutos enquanto a máquina está em funcionamento. Você pode examinar esse arquivo manualmente para descobrir as informações ou escrever um script para processá-lo como achar melhor.

Sempre que o tempo de atividade diminui, houve uma reinicialização desde o registro anterior. Quando existem grandes intervalos entre linhas (isto é, mais do que os dez minutos esperados), a máquina ficou inativa durante esse tempo.

2
paxdiablo

Isso não é armazenado entre as inicializações, mas O Uptimes Project é uma opção de terceiros para rastreá-lo, com software para diversas plataformas.

Outra ferramenta disponível no Debian é uptimed que rastreia uptime entre as inicializações.

2
Shermozle

Ou você pode usar tuptime https://sourceforge.net/projects/tuptime/ para um tempo total de atividade.

1
Slet

eu não acho que esta informação é salva entre as reinicializações.

se desligar corretamente, você pode executar um comando de desligamento que economiza tempo de atividade, assim você pode lê-lo de volta depois de inicializar novamente.

1
John Boker

Esta informação não é normalmente salva. No entanto, você pode se inscrever em um serviço on-line que fará isso para você. Você acabou de instalar um cliente que enviará seu tempo de atividade para o servidor a cada 5 minutos e o site apresentará um gráfico de seus tempos de atividade:

http://uptimes-project.org/

1
Kyle Cronin

Você pode usar o tuptime, um comando simples para relatar o tempo total de atividade no Linux mantendo-o entre as reinicializações.

http://sourceforge.net/projects/tuptime/

1
Rfraile

O Nagios pode fazer diagramas muito bonitos sobre isso.

0
peterh