четверг, 4 апреля 2019 г.

Отображение метки времени в логах IOS в локальном часовом поясе

   Логи (они же журналы событий, но будем пользоваться привычным "логи" от английского logs) важны. Это аксиома. Еще важнее, чтобы логи всех устройств могли рассказать нам не только что произошло, но и когда оно произошло. Из этого вытекает следующая аксиома - время в логах тоже важно.
   Про время, NTP и синхронизацию расскажу в следующей статье. А пока решим конкретную задачу, с которой недавно пришлось столкнуться. Проблема заключалась в том, что на коммутаторе Cisco под управлением IOS 15 в выводе команды show logging метка времени отличалась от настроенного времени на 3 часа.
    Вот вывод команды show logging:
 
Apr  1 07:06:20.496: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet2/0/7, changed state to up
Apr  1 07:06:56.179: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet2/0/7, changed state to down

   А вот конфигурация часовых поясов и настроенное время на самом коммутаторе:

 SW#show clock     
10:32:25.673 MSK Thu Apr 1 2019
 
SW#show run | inc time    
clock timezone MSK 3 0

  Часовой пояс настроен верно. Часы на коммутаторе показывают верное время. Значит, проблема непосредственно в метке времени. Для того, чтобы метку времени вообще поставить, необходимо использовать команду service-timestamp log с необходимыми параметрами.

SW(config)#service timestamps log ?
  datetime  Timestamp with date and time
  uptime    Timestamp with system uptime
  <cr>
   
    Соответственно, параметр datetime - текущие время и дата, настроенные на коммутаторе. А uptime - метка времени относительно времени загрузки устройства.
    Нас интересует параметр datetime. По умолчанию используется часовой пояс UTC. Нам же интересен наш часовой пояс, поэтом команда для исправления указанной в самом начале проблемы должна выглядеть так:

service timestamps log datetime localtime

   В результате получаем в логах правильную метку времени, использующую настроенные параметры времени и часовых поясов.

Apr  1 10:39:40: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet2/0/7, changed state to up
Apr  1 10:40:11: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet2/0/7, changed state to down

   Вообще время относится к базовым сетем и инфраструктурным сервисам, поэтому ему уделяется большое внимание. синхронизация времени в пределах инфраструктуры позволит легко коррелировать события между собой для расследования инцидентов. 

Комментариев нет:

Отправить комментарий