shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Uptime de Serviços


From: Luiz Sales
Subject: Uptime de Serviços
Date: Tue, 9 Jul 2013 15:18:51 -0300

Amigos,
   Estou trabalhando em uma soluçao para descobrir o uptime dos serviços...
eu estou buscando o resultado em segundos.

Segue o script que "estou" desenvolvendo..

#!/bin/sh -x
um_dia="86400"
uma_hora="3600"
um_minuto="60"


processo=$(ps h -C $1 | head -n1 | awk '{print $1}')
if [ -z $processo ];
then
        echo "Processo nao encontrado!"
        exit 1
else
        # Pega a quantos dias o processo ta rodando.
        day=$(ps -eo pid,etime | grep $processo | awk -F " " '{print $2}' |
awk -F "-" '{print $1}')
        echo $day
        if [ -z $day ];
        then

                day="0"
        fi


        # Calcular passado
        # Hora
        hour=$(ps -eo pid,etime | grep $processo | awk -F " " '{print $2}'
| awk -F "-" '{print $2}' | awk -F ":" '{print $1}')
        echo $hour
        minute=$(ps -eo pid,etime | grep $processo | awk -F " " '{print
$2}' | awk -F "-" '{print $2}' | awk -F ":" '{print $2}')
        echo $minute
        seconds=$(ps -eo pid,etime | grep $processo | awk -F " " '{print
$2}' | awk -F "-" '{print $2}' | awk -F ":" '{print $3}')
        echo $seconds

        dia_s=`echo $(($day*$um_dia))`
        echo "Dia: $dia_s"
        hora_s=`echo  $(($hour*$uma_hora))`
        echo "Hora: $hora_s"
        min_s=`echo $(($minute*$um_minuto))`
        echo "Minuto: $min_s"

        echo  "Uptime $1 em segundos: $(($dia_s+$hora_s+min_s+seconds))"
        echo  $(($dia_s+$hora_s+min_s+seconds))

fi

com o comando
ps h -C <nome do serviço>   eu consigo pegar o pid e com o comando
ps -eo pid,time eu pego o tempo de execução, mas alguns serviços nao tem
dias(no ar) e eu acabo pegando outra variavel, acho que devido a posição de
cada atributo..  teria como delimitar o para o time ser sermpre em uma
coluna.. ou algo quen houvesse um padrao..


se o serviço tiver dia hora minuto segundo funciona corretamente, mas se
nao tiver dia, ele ja da erro no shell e eu perco as informações


-- 
Luiz Sales
aka redhate
Certified Zimbra, LPIC-2 e ITIL v2
Linux User #347508
aMSN: address@hidden
Licq: 251384040


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]