Contents

Introdução

Overview

Objetivos práticos:

Como eles funcionam

Níveis de rastreamento

Exibir Níveis de Rastreamento Atuais

Modificar Nível de Rastreamento

Novas Opções de Rastreamento

Exibir os Tracelogs para processos diferentes

Suporte a vários processos

Opções da Janela de Tempo

Mostrar logs em nível de log específico

Mostrar Logs Do Carimbo De Data/Hora

Mostrar Logs Entre Dois Carimbos De Data/Hora

Executar registro em tempo real

Usar perfis de log predefinidos

Enviar Saídas de Log para um Arquivo

Introdução

Este documento descreve o novo aprimoramento de registro unificado para uma experiência perfeita para coletar e gerenciar Tracelogs do sistema.

Overview

Objetivos práticos:

- Troubleshooting. Quando um chassi encontra um problema, os dados nos arquivos de rastreamento podem ser inestimáveis para identificar e resolver o problema.

- Depuração. Os resultados dos arquivos de rastreamento podem oferecer aos usuários uma perspectiva mais granular sobre as ações e operações do sistema.

Como eles funcionam

- O recurso de rastreamento registra os detalhes dos eventos internos que ocorrem dentro do chassi. Periodicamente, os arquivos de rastreamento que contêm a saída de rastreamento completa para um módulo são gerados e atualizados, e esses arquivos são mantidos no diretório tracelog.

- Você pode liberar espaço no sistema de arquivos. Os arquivos de rastreamento podem ser excluídos desse diretório sem afetar o desempenho do dispositivo.

- Você pode transferir os logs de rastreamento para locais alternativos. Você pode usar FTP, TFTP e assim por diante, para copiar os arquivos e analisá-los ou carregá-los em um caso aberto com o Technical Assistance Center (TAC).

- Você não pode desativar os logs de rastreamento, mas pode alterar o nível de rastreamento para determinar quantas informações você deseja coletar para cada módulo.

Níveis de rastreamento

Os níveis de rastreamento ditam o volume de informações retidas no buffer de rastreamento ou no arquivo. Todos os níveis de rastreamento disponíveis são os seguintes e explicam os tipos de mensagens registradas em cada nível.

Emergência—> O sistema está instável/inutilizável.

Erro—> Um evento que resulta em uma pequena perda de funcionalidade sem resolução automática, representando um problema não previsto que não pode afetar as operações imediatamente, mas pode ter consequências futuras.

Aviso—> Um problema que pode ser potencialmente resolvido automaticamente ou uma condição que pode levar a uma perda de funcionalidade se não for investigado e tratado imediatamente.

Aviso—> O nível de log padrão definido para os módulos. Esse nível captura eventos importantes que ocorrem no sistema.

Info—> Somente mensagens informativas. Fornece informações adicionais sobre eventos significativos que são relevantes para o sistema ou seus recursos.

Debug—> Fornece logs de depuração.

Verbose—> Fornece segundo nível de logs de depuração.

Ruído—> O máximo possível de mensagens é registrado.

Exibir Níveis de Rastreamento Atuais

Você pode ver e alterar o nível de rastreamento de qualquer módulo com o comando show platform software trace level.

Esse comando mostra o Nível de rastreamento dos processos do gerenciador de encaminhamento no RP ativo.

Router#show platform software trace level forwarding-manager rp ative

Esta é a saída:

Module Name                     Trace Level

-----------------------------------------------

acl                             Notice

active-identity                 Notice

alg                             Notice

appnav-controller               Notice

aps                             Notice

bcrpgc                          Informational

bfd                             Notice

bier                            Notice

Modificar Nível de Rastreamento

Você pode modificar um nível de rastreamento para um módulo específico ou para todos os módulos em um processo. Para fazer isso, você pode usar o comando set platform software trace.

Este comando set platform software trace chassis-manager f0 cman_fp warning altera o nível de rastreamento para cman_fp no gerenciador de chassis do ESP no slot 0 para nível de aviso.

Você pode validar a alteração com este comando show platform software trace level chassis-manager f0

Esta é a saída:

Module Name                     Trace Level

-----------------------------------------------

bcrpgc                          Informational

bipc                            Notice

bsignal                         Notice

btrace                          Notice

btrace_ra                       Notice

cdllib                          Notice

chasfs                          Notice

cman_fp                         Warning

Novas Opções de Rastreamento

Começando em 16,8 , a Cisco apresenta o aprimoramento do Unified Logging. O objetivo é criar uma experiência de registro transparente para o usuário entre o registro do IOS e outros sistemas de registro do processo. Os registros de ambos os sistemas podem ser mesclados e exibidos em ordem de tempo. Isso facilita a solução de problemas no sistema.

Exibir os Tracelogs para processos diferentes

O comando show logging process pode ser usado para exibir o conteúdo dos logs de rastreamento gerados pelos processos especificados. Os logs do buffer e do diretório tracelogs podem ser incluídos na saída.

Também há suporte para nome de processo parcial o nome do processo é aceito como uma palavrapelo analisador.

Note: O nome do processo deve corresponder (parcial ou totalmente) ao nome do log de rastreamento; caso contrário, uma incompatibilidade pode ocorrer, resultando na exibição de nenhum rastreamento.

O comando show logging process fman pode combinar os logs fman-rp e fman-fp.

Router#show logging process fman

Displaying logs from the last 0 days, 0 hours, 10 minutes, 0 seconds

executing cmd on chassis local ...

Unified Decoder Library Init .. DONE

Found 1 UTF Streams

2024/05/22 19:01:01.347466887 {fman_rp_R0-0}{255}: [source] [11941]: (ERR): ipc(mqipc/iosd/iosd-fman):Unable to open config channel to source

2024/05/22 19:00:50.246774567 {fman_fp_image_F0-0}{255}: [btrace] [13616]: (note): Btrace started for process fman_fp_image_pman ID 13616 with 512 modules

2024/05/22 19:00:50.246777079 {fman_fp_image_F0-0}{255}: [btrace] [13616]: (note): File size max used for rotation of tracelogs: 8192

Suporte a vários processos

O comando CLI "show logging process" agora permite especificar vários nomes de processos separados por vírgulas usando a palavra-chave 'process'. Log de rastreamento mesclado exibindo logs somente dos processos especificados, como os processos sman e ios.

Router#show logging process sman,ios

executing cmd on chassis 1 ...

Collecting files on current[1] chassis.

Opções da Janela de Tempo

Todos os rastreamentos podem ter timestamps em um fuso horário local se algum estiver configurado. Se não, timestamps é usado em "Tempo Universal Coordenado" (UTC), mas você pode mudar o fuso horário para os logs entre Local e UTC com o comando set logging timezone <local | UTC>

Por padrão, o comando show logging CLI exibe apenas os últimos 10 minutos de logs da hora atual.

A palavra-chave start last pode ser usada para expandir a janela de tempo de acordo com as necessidades individuais.

Router#show logging process btman start last ?

<0-4294967295>  interval (default seconds)

boot            system boot time

clear           display all logs since last "clear logging"

marker          selects latest matching marker from list to start displaying

logs from

Note: Se você escolher um valor numérico do comando anterior, poderá especificar dias, horas, minutos ou segundos como a próxima opção.

As opções de palavra-chave end last foram adicionadas para serem usadas em conjunto com start last para especificar o fim da janela de tempo. Quando as opções start last e end last são usadas, somente os logs na janela são coletados. Sem a opção end last, a coleta de logs assume como padrão a hora atual como a hora de término.

Este é um exemplo de configuração de uma janela entre as últimas duas horas e a última hora:

Router#show logging process btman start last 2 hours end last 1 hours

Displaying logs from the last 0 days, 2 hours, 0 minutes, 0 seconds

End time set to show logs before last 0 days, 1 hours, 0 minutes, 0 seconds

executing cmd on chassis 1 ...

Collecting files on current[1] chassis.

Mostrar logs em nível de log específico

Você pode mostrar logs somente para um nível específico:

Router#show logging process wncd level ?

debug    Debug messages

error    Error messages

info     Informational messages

notice   Notice messages

verbose  Verbose debug messages

warning  Warning messages

Este é um exemplo do btman de logs em aviso de nível de erro:

Router#show logging process btman level notice

Logging display requested on 2024/07/24 06:20:23 (UTC) for Hostname: [Router], Model: [ASR1002-HX          ], Version: [17.12.03a], SN: [JAD22460SN9], MD_SN: [FXS2223Q74M]

Displaying logs from the last 0 days, 0 hours, 10 minutes, 0 seconds

executing cmd on chassis local ...

Unified Decoder Library Init .. DONE

Found 1 UTF Streams

2024/07/24 06:10:59.533374335 {btman_R0-0}{255}: [utm_main] [5809]: (note): Inserted UTF(2) HT(old):droputil_R0-0[13] lnode /tmp/rp/trace/droputil_R0-0.6823_63.20240724061059.bin PID:6823

2024/07/24 06:10:59.695395289 {btman_R0-0}{255}: [utm_wq] [5809:15578]: (note): Inline sync, enqueue BTF message flags:0x1, PID:15578 BTF:/tmp/rp/trace/droputil_R0-0.6823_62.20240724060959.bin

Mostrar Logs Do Carimbo De Data/Hora

Você pode mostrar logs de um carimbo de data/hora específico em UTC como "2017/02/10 14:41:50.849425". Este é um exemplo:

Router#show logging process wncd start timestamp "2024/07/24 05:36:45.849425"

Logging display requested on 2024/07/24 06:39:15 (UTC) for Hostname: [Router], Model: [ASR1002-HX          ], Version: [17.12.03a], SN: [JAD22460SN9], MD_SN: [FXS2223Q74M]

executing cmd on chassis local ...

Unified Decoder Library Init .. DONE

Found 1 UTF Streams

Filter policy: Done with UTM processing

Mostrar Logs Entre Dois Carimbos De Data/Hora

Você pode exibir logs de rastreamento entre uma janela de tempo adicionando carimbo de data/hora inicial e carimbo de data/hora final. Este é um exemplo com 1 hora de janela de manutenção:

Router#show logging process wncd start timestamp "2024/07/24 05:36:45.849425" end timestamp "2024/07/24 06:36:45.849425"

Logging display requested on 2024/07/24 06:39:15 (UTC) for Hostname: [Router], Model: [ASR1002-HX          ], Version: [17.12.03a], SN: [JAD22460SN9], MD_SN: [FXS2223Q74M]

executing cmd on chassis local ...

Unified Decoder Library Init .. DONE

Found 1 UTF Streams

Filter policy: Done with UTM processing

Executar registro em tempo real

Você pode monitorar os logs gerados em tempo real para um processo ou perfil. Os logs são mostrados conforme são gerados.

Router#monitor logging process cman ?

<0-25>    instance number

filter    specify filter for logs

internal  select all logs. (Without the internal keyword only customer

curated logs are displayed)

level     select logs above specific level

metadata  CLI to display metadata for every log message

module    select logs for specific modules

Tip:  Para escapar ou sair, o modo de registro em tempo real emite um CTRL-C.

Usar perfis de log predefinidos

O registro em tempo real oferece perfis integrados que podem ser aplicados facilmente. Isso elimina a necessidade de o usuário estar familiarizado com os arquivos de log de processo subjacentes que constituem o recurso. Os perfis suportados incluem todos os arquivos, sem fio, sdwan, netconf-yang, restconf, install, hardware-diagnostics.

O perfil pode ser usado com o comando show logging ou o comando monitor logging.

Note: A opção show logging profile exibe apenas logs do buffer e não inclui logs do diretório tracelogs.

SCP_Test#show logging profile ?

all                   all processes

file                  show logs for specific profile file

hardware-diagnostics  hardware diagnostics specific processes

install               Install specific processes

netconf-yang          netconf-yang specific processes

restconf              restconf specific processes

sdwan                 SDWAN specific processes

wireless              Wireless specific processes

Router#monitor logging profile ?

all                   all processes

file                  show logs for specific profile file

hardware-diagnostics  hardware diagnostics specific processes

install               Install specific processes

netconf-yang          netconf-yang specific processes

restconf              restconf specific processes

sdwan                 SDWAN specific processes

wireless              Wireless specific processes

Na versão 17.12+, as estatísticas são incluídas por padrão no final de "show logging <process/profile/file> ..". Stats mostra o número de mensagens de rastreamento decodificadas em cada nível de gravidade que foram adicionadas às estatísticas de decodificador existentes. As contagens de nível são somente para rastreamentos processados.

2024/07/24 04:26:41.710239127 {btman_R0-0}{255}: [utm_wq] [5806:15568]: (note): Inline sync, enqueue BTF message flags:0x1, PID:15568 BTF:/tmp/rp/trace/IOSRP_R0-0.3437_2.20240724042222.bin

2024/07/24 04:26:41.759114843 {btman_R0-0}{255}: [utm_wq] [5806]: (note): utm delete /tmp/rp/trace/IOSRP_R0-0.3437_2.20240724042222.bin

===========================================================

======= Unified Trace Decoder Information/Statistics ======

===========================================================

----------------- Decoder Input Information ---------------

===========================================================

Num of Unique Streams .. 1

Total UTF To Process ... 1

Total UTM To Process ... 89177

UTM Process Filter ..... btman

MRST Filter Rules ...... 1

===========================================================

----------------- Decoder Output Information --------------

===========================================================

First UTM TimeStamp ............... 2024/07/24 02:51:45.623542304

Last UTM TimeStamp ................ 2024/07/24 04:26:48.710794233

UTM [Skipped / Rendered / Total] .. 89047 / 130 / 89177

UTM [ENCODED] ..................... 130

UTM [PLAIN TEXT] .................. 0

UTM [DYN LIB] ..................... 0

UTM [MODULE ID] ................... 0

UTM [TDL TAN] ..................... 0

UTM [APP CONTEXT] ................. 0

UTM [MARKER] ...................... 0

UTM [PCAP] ........................ 0

UTM [LUID NOT FOUND] .............. 0

UTM Level [EMERGENCY / ALERT / CRITICAL / ERROR] .. 0 / 0 / 0 / 0

UTM Level [WARNING / NOTICE / INFO / DEBUG] ....... 0 / 130 / 0 / 0

UTM Level [VERBOSE / NOISE / INVALID] ............. 0 / 0 / 0

===========================================================

Enviar Saídas de Log para um Arquivo

Você pode usar a palavra-chave to-file para criar um arquivo com as saídas do comando show logging. Este exemplo mostra como enviar os logs de rastreamento do processo btman para um arquivo chamado btman_log.txt no sistema de arquivos bootflash:

Router#show logging process btman to-file bootflash:btman_log.txt

Logging display requested on 2024/07/25 03:49:41 (UTC) for Hostname: [Router], Model: [ASR1006-X           ], Version: [17.09.05a], SN: [FXS221200GH], MD_SN: [FXS2221Q0EL]

Displaying logs from the last 0 days, 0 hours, 10 minutes, 0 seconds

executing cmd on chassis local ...

Files being merged in the background, please check [/bootflash/btman_log.txt] output file

Unified Decoder Library Init .. DONE

unified trace decoder estimates: [1] number of files, [139913] number of messages

that may be processed. Use CTRL+SHIFT+6 to break.

Found 1 UTF Streams

2024-07-25 03:49:41.694987 - unified trace decoder estimate: processed 5%

2024-07-25 03:49:41.701433 - unified trace decoder estimate: processed 10%

2024-07-25 03:49:41.707803 - unified trace decoder estimate: processed 15%

2024-07-25 03:49:41.714185 - unified trace decoder estimate: processed 20%

2024-07-25 03:49:41.720592 - unified trace decoder estimate: processed 25%

2024-07-25 03:49:41.726951 - unified trace decoder estimate: processed 30%

2024-07-25 03:49:41.733306 - unified trace decoder estimate: processed 35%

2024-07-25 03:49:41.739734 - unified trace decoder estimate: processed 40%

2024-07-25 03:49:41.746114 - unified trace decoder estimate: processed 45%

2024-07-25 03:49:41.752462 - unified trace decoder estimate: processed 50%

2024-07-25 03:49:41.758864 - unified trace decoder estimate: processed 55%

2024-07-25 03:49:41.765225 - unified trace decoder estimate: processed 60%

2024-07-25 03:49:41.771582 - unified trace decoder estimate: processed 65%

2024-07-25 03:49:41.777968 - unified trace decoder estimate: processed 70%

2024-07-25 03:49:41.784330 - unified trace decoder estimate: processed 75%

2024-07-25 03:49:41.790693 - unified trace decoder estimate: processed 80%

2024-07-25 03:49:41.797099 - unified trace decoder estimate: processed 85%

2024-07-25 03:49:41.803462 - unified trace decoder estimate: processed 90%

2024-07-25 03:49:41.811411 - unified trace decoder estimate: processed 95%

2024-07-25 03:49:41.822322 - unified trace decoder estimate: processed 100%

2024-07-25 03:49:41.822335 - unified trace decoder : processing complete Result:[Success]

Você pode validar que o arquivo foi criado com o comando dir bootflash e filtrar o nome do arquivo da seguinte forma:

Router#dir bootflash: | include btman_log.txt

17      -rw-            26939  Jul 25 2024 03:49:41 +00:00  btman_log.txt