Como Converter um Selo de Data/Hora em um Formato Legível Usando o Cisco WAN Manager Índice Introdução Pré-requisitos Requisitos Componentes Utilizados Convenções Usando uma planilha Utilizando consultas SQL Usando um procedimento SQL Usando uma chamada de sistema C Verificar Troubleshooting Informações Relacionadas Introdução Em um sistema Unix, um timestamp é o número de segundos que decorreu desde o 1º de janeiro 1970, chamado a “época.” Quando uma estatística está armazenada no banco de dados do Cisco WAN Manager (CWM), recebe o timestamp em que os dados foram recolhidos do interruptor. Este timestamp às vezes tem que ser traduzido em mais formato legível. Este documento explica diversos métodos para converter o timestamp em mais formato legível. Os exemplos usam a tabela do packet_ln_data. Pré-requisitos Requisitos Não existem requisitos específicos para este documento. Componentes Utilizados As informações neste documento são baseadas nestas versões de software e hardware: CWM 9.2.09 a CWM 12.0 Solaris 2.6 ao Solaris 8 As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a sua rede estiver ativa, certifique-se de que entende o impacto potencial de qualquer comando. Convenções Para obter mais informações sobre convenções de documento, consulte as Convenções de dicas técnicas Cisco. Usando uma planilha Se você usa uma planilha Microsoft Excel, você pode traduzir o timestamp com este método: 1. Põe o timestamp na pilha a1. 2. Na pilha a2, incorpore =a1/86400+25569. 3. Para aplicar um formato novo a esta pilha, clicar com o botão direito e escolha pilhas do formato > números > costume. No tipo campo, incorpore o dd: mmm: HH yyyy: milímetro. A saída se parece com isto: 04 Apr 2001, 13:57 Utilizando consultas SQL Datilografe isto na alerta do shell (como o svplus do usuário): ecoe “date(timestamp/86400 seleto +25568) || ““ || modificação (trunc (timestamp/3600), 24) || “: ” || modificação (trunc (timestamp/60), 60) || “: ” || modificação (timestamp, 60) do packet_ln_data” | stratacom dos dbaccess Este método produz uma saída que olhe como esta: (expression) (expression) (expression) (expression) (expression) (expression) (expression) (expression) (expression) 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 16:5:0 16:5:0 16:5:0 16:5:0 16:5:0 16:5:0 16:10:0 16:10:0 16:10:0 Usando um procedimento SQL Um outro procedimento é adicionar este procedimento ao banco de dados do stratacom: 1. Execute dbaccess. 2. No menu principal, vá ao idioma de consulta > novo e selecione o banco de dados Stratacom. 3. Cole o texto, a seguir selecione o escape. 4. Selecione a corrida. Se o procedimento é bem sucedido, você vê o mensagem de sistema: Procedimento criado. create procedure ts2date ( l int ) returning char(20); define sec, min, hour int; define ts char(10); define brol char(30); define chour, cmin, csec char(2); let sec = MOD (l, 60); let min = MOD (trunc (l/60), 60); let hour = MOD (trunc (l/3600), 24); if sec >= 10 then let csec = sec; else let csec = '0' || sec; end if if min >= 10 then let cmin = min; else let cmin = '0' || min; end if if hour >= 10 then let chour = hour; else let chour = '0' || hour; end if let Ts = date(trunc((l/86400) + 25568 )); let brol = Ts || ' ' || chour || ':' || cmin || ':' || csec; return brol; end procedure; Use este procedimento ts2date em uma pergunta SQL para obter a saída correta. Como o usuário do svplus, datilografe na alerta do shell: echo 'select ts2date(timestamp) from packet_ln_data' | dbaccess stratacom A saída para esta pergunta olha como esta: (expression) 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 11/14/2001 16:05:00 16:05:00 16:05:00 16:05:00 16:05:00 16:10:00 16:10:00 16:10:00 16:10:00 16:10:00 16:10:00 16:10:00 16:10:00 Nota: Você deve reintroduzir o procedimento no banco de dados cada vez que é deixado cair, após ter reinstalado o CWM, ou após um início cold. Usando uma chamada de sistema C Se você precisa de converter o timestamp com programa ou função corrente alternada, há uma chamada de sistema que converta a notação epoch em uma mais legível. A chamada de sistema é sabida como o “ctime,” e o parâmetro deve ser do tipo do “*clock do time_t const.” Por exemplo: #include <stdio.h> #include <time.h> void main () { time_t tstamp; scanf("%ld", &tstamp); printf ("%s\n", ctime (&tstamp)); } Verificar No momento, não há procedimento de verificação disponível para esta configuração. Troubleshooting Não há atualmente nenhuma informações disponíveis específica para pesquisar defeitos esta configuração. Informações Relacionadas Exemplos de Configuração e Notas Técnicas © 1992-2014 Cisco Systems Inc. Todos os direitos reservados. Data da Geração do PDF: 18 Outubro 2014 http://www.cisco.com/cisco/web/support/BR/104/1042/1042580_cwm_timestamp_9329.html