目录

简介

Logflash功能

关于日志记录的常见错误

记帐日志

事件历史

简介

本文档介绍Nexus 7000上可用的日志记录功能。

Logflash功能

- Logflash是一个8 GB闪存卡(USB)，安装为“logflash：”文件系统，用于永久存储各种日志记录信息，如系统日志消息、调试输出、核心文件和嵌入式事件管理器(EEM)信息。
SUP1

SUP2

- 如果设备在写操作中重置，则文件系统结构可能会损坏。例如，如果用户重新加载或重新通电，或者由服务中软件升级(ISSU)重置、崩溃等。
N7K1# dir logflash:

compact flash is either not present or not formatted

- 如果logflash文件系统未装载，请尝试手动装载。
N7K1# mount logflash:

Failed to mount logflash

- 如果logflash文件系统仍未安装，请尝试弹出/重新插入。

- 运行文件系统检查。
N7K1# system health check logflash

Unmount successful...

Fix any file system errors ...done.

- 如果其他所有操作都失败，可以重新格式化日志闪存。
N7K1# format logflash:

This command is going to erase the contents of logflash:.

Do you want to continue? (yes/no)  [n] y

Notifying services to stop accessing the device...

Formatting logflash:

mke2fs 1.35 (28-Feb-2004)

Formatting completed

- NX-OS日志记录不仅稳健，而且另存为文件，因此在重新加载时是持续的。

- 文件会旋转（一旦达到10MB）。

- 非默认虚拟设备环境(VDC)和备用管理引擎日志可从默认VDC读取（或复制到远程位置）。
Nexus# show clock

21:19:03.878 UTC Fri Jan 25 2013

Nexus# show ver | in uptime

Kernel uptime is 16 day(s), 2 hour(s), 45 minute(s), 59 second(s)

Nexus# show file logflash://sup-active/log/messages

2008 Jan  1 14:05:54  %IDEHSD-2-MOUNT: logflash: online

2008 Jan  1 14:06:07  %MODULE-5-ACTIVE_SUP_OK: Supervisor 6 is active

(serial: JAF1545BTGH)

2008 Jan  1 14:06:07  %PLATFORM-5-MOD_STATUS: Module 6 current-stat

Nexus# dir logflash://sup-standby/vdc_3/log/messages

219040    Jul 16 20:51:25 2012  vdc_3/log/messages

- 由于波特率，只有1-2级消息会打印到控制台。（波特率的增加是打印1-2级以上消息的选项。）

- 命令show log nvram仅打印1-2级消息。

- 命令show log logfile可在保存于/var/log/external/的日志记录缓冲区中打印消息。

- 如果show log命令未显示当前日志或日志记录已停止，则检查/var/log目录，如下所示：
N7K1# show system internal flash

Mount-on                  1K-blocks      Used   Available   Use%  Filesystem

/                            409600     62432      347168     16   /dev/root

/proc                             0         0           0      0   proc

/sys                              0         0           0      0   none

/isan                       1048576    366864      681712     35   none

/var                          51200       544       50656      2   none

/etc                           5120      1620        3500     32   none

/nxos/tmp                     40960      1268       39692      4   none

/var/log                      51200     51200           0    100   none

/var/home                      5120        84        5036      2   none

/var/tmp                     307200      2972      304228      1   none

/var/sysmgr                 1572864        60     1572804      1   none

/var/sysmgr/ftp              512000    108476      403524     22   none

/var/sysmgr/srv_logs         102400         0      102400      0   none

/var/sysmgr/ftp/debug_logs    10240         0       10240      0   none

/dev/shm                    3145728    748672     2397056     24   none

/volatile                    512000         0      512000      0   none

/debug                         5120       108        5012      3   none

/dev/mqueue                       0         0           0      0   none

--------------------------------------SNIP---------------------------------

如上所示， /var/log已满。然后，检查/var/log的实际内容，查看哪个文件使用了目录。由于用户定义的调试或核心文件，目录可能已满，因此日志记录会停止。

N7K1# sh system internal dir /var/log/external/

./         420

../         380

glbp.debug          231

libfipf.24944            0

vdc_4/          80

libfipf.24115            0

vdc_3/          80

libfipf.23207            0

vdc_2/          80

libdt_helper.log     51523584

libfipf.5582            0

libfipf.4797            0

libfipf.4717            0

messages       651264

startupdebug            0

eobc_port_test_result            3

mgmt_port_test_result            3

bootup_test.log        18634

您还可以使用dir log:的子菜单。

在上例中，libdt_helper.log占用了大部分空间，因此，日志记录存在问题。请参阅Cisco Bug ID CSCue98451。

关于日志记录的常见错误

- “logging level <feature> <level>”不会导致该功能在该级别打印消息。如果日志功能的级别为“打印阈值”，它实际上会告知系统日志功能“仅”将该功能的打印消息打印到日志记录缓冲区/服务器。
以下示例显示一个系统日志，该系统日志为默认级别为5的以太网端口管理器(ETHPM)打印消息。由于以下消息为级别5，因此它符合日志记录级别“threshold”。

Nexus(config)# int e 3/1

Nexus(config-if)# shut

2013 Jan 25 21:42:07 Nexus %ETHPORT-5-IF_DOWN_ADMIN_DOWN:

Interface Ethernet3/1 is down (Administratively down)

如果将级别更改为3，则不再打印消息。这会严重妨碍故障排除能力。

Nexus(config-if)# logging level ethpm 3

Nexus(config)# int e 3/1

Nexus(config-if)# no shut

Nexus(config-if)# sh log last 1

2013 Jan 25 21:42:07 Nexus %ETHPORT-5-IF_DOWN_ADMIN_DOWN:

Interface Ethernet3/1 is down (Administratively down)

记帐日志

- 身份验证、授权和记帐(AAA)和本地的记帐日志允许我们查看来自任何用户的所有设备上运行的所有配置命令。

Nexus# show accounting log

Fri Mar 15 10:19:58 2013:type=update:id=console0:user=Ciscoadmin:

cmd=configure terminal ; interface Ethernet1/1 (SUCCESS)

Fri Mar 15 10:19:59 2013:type=update:id=console0:user=Ciscoadmin:

cmd=configure terminal ; interface Ethernet1/1 ; shutdown (REDIRECT)

Fri Mar 15 10:19:59 2013:type=update:id=console0:user=Ciscoadmin:

cmd=configure terminal ; interface Ethernet1/1 ; shutdown (SUCCESS)

Fri Mar 15 10:20:03 2013:type=update:id=console0:user=Ciscoadmin:

cmd=configure terminal ; interface Ethernet1/1 ; no shutdown (REDIRECT)

Fri Mar 15 10:20:03 2013:type=update:id=console0:user=Ciscoadmin:

cmd=configure terminal ; interface Ethernet1/1 ; no shutdown (SUCCESS)

- 在版本5.x及更高版本中(由于Cisco Bug ID CSCtf04410)，在配置“terminal log-all”时，可以启用对设备上运行的“all”命令（而不仅仅是配置命令）的日志记录。
N7K1(config)# terminal log-all

N7K1(config)# show accounting log all

Thu Mar 14 17:54:11 2013:type=update:id=console0:user=vbhutta:

cmd=show system internal feature-mgr event-history errors (SUCCESS)

Thu Mar 14 17:54:11 2013:type=stop:id=console0:user=Ciscoadmin:cmd=

Thu Mar 14 17:54:11 2013:type=start:id=console0:user=Ciscoadmin:cmd=

Thu Mar 14 17:54:11 2013:type=update:id=console0:user=Ciscoadmin:

cmd=show system internal feature-mgr event-history msgs (SUCCESS)

- 与系统日志一样，记帐日志也保存到文件中，因此在重新加载后是持久的。
N7K1# dir logflash://sup-active/vdc_1

130557    Jan 26 21:46:12 2013  accounting_log

250070    Jan 08 16:55:20 2013  accounting_log.1

- 如果有管理引擎故障切换，您也可以从备用管理引擎找到记帐日志。

事件历史

- 在NX-OS中，默认情况下（每个VDC和每个组件）在后台运行的事件历史记录/调试的“持续”日志记录。

- 对CPU没有实际影响。

- 可配置事件历史记录日志大小。
N7K1(config)# ip adjmgr internal event-history errors size ?

disabled  Disabled

*Default value is small

large     Large buffer

medium    Medium buffer

small     Small buffer

show run all | i event-history to see the configured size

- 可用于硬件和软件组件，如以下示例所示：
软件组件

N7K1#  show ip ospf internal event-history event

OSPF events for Process "ospf-1"

2013 Jan 23 17:45:06.518702 ospf 1 [6219]: [6250]:

Got a URIB route notification message, xid 4294901878, count 3

2013 Jan 23 16:58:28.192141 ospf 1 [6219]: [6250]:

Got a URIB route notification message, xid 4294901876, count 3

2013 Jan 23 16:35:47.630173 ospf 1 [6219]: [6250]:

Got a URIB route notification message, xid 4294901874, count 3

模块级硬件组件

module-3# show hardware internal mac event-history info

1) At 596873 usecs after Tue Jan 22 17:06:52 2013

r2d2_fill_port_reset_info-275: Total ports 32

inst_affected 8 total_reset_time 4000 ms

2) At 577801 usecs after Tue Jan 22 17:06:52 2013

r2d2_fill_port_reset_info-187: Reset req. for

Inband instance so choose all instances