Red Hat Training

A Red Hat training course is available for RHEL 8

第 42 章 网络管理器调试介绍

增加所有域或某些域的日志级别有助于记录操作 NetworkManager 执行的详情。管理员可以使用这些信息排除问题。NetworkManager 提供不同的级别和域来生成日志信息。/etc/NetworkManager/NetworkManager.conf 文件是 NetworkManager 的主要配置文件。日志存储在日志中。

本节提供有关为 NetworkManager 启用调试日志以及使用不同日志级别和域配置日志量的信息。

42.1. 调试级别和域

您可以使用 levelsdomains 参数来管理 NetworkManager 的调试。这个级别定义了详细程度,而域定义了记录给定的严重性日志的消息类别(level)。

日志级别描述

OFF

不记录任何有关 NetworkManager 的信息

ERR

仅记录严重错误

WARN

记录可以反映操作的警告信息

INFO

记录各种有助于跟踪状态和操作的信息

DEBUG

为调试启用详细日志记录

TRACE

启用比 DEBUG 级更详细的日志

请注意,后续的级别记录来自以前级别的所有信息。例如,将日志级别设置为 INFO 也会记录 ERRWARN 日志级别中包含的信息。

其它资源

  • 有关 domains 的详情,请参考 NetworkManager.conf(5) man page。

42.2. 设置 NetworkManager 日志级别

默认情况下,所有日志域都被设置为记录 INFO 日志级别。在收集调试日志前禁用速率限制。使用速率限制时,如果短时间内有太多信息,systemd-journald 会丢弃信息。这会在日志级别为 TRACE 时发生。

此流程禁用速率限制,并为所有(ALL)域启用记录调试日志。

流程

  1. 要禁用速率限制,请编辑 /etc/systemd/journald.conf 文件,取消 [Journal] 部分中的 RateLimitBurst 参数的注释,并将它的值设置为 0:

    RateLimitBurst=0
  2. 重启 systemd-journald 服务。

    # systemctl restart systemd-journald
  3. 使用以下内容创建 /etc/NetworkManager/conf.d/95-nm-debug.conf 文件:

    [logging]
    domains=ALL:DEBUG

    domains 参数可以包含多个用逗号分开的 domain:level 对。

  4. 重启 NetworkManager 服务。

    # systemctl restart NetworkManager

42.3. 在运行时使用 nmcli 临时设置日志级别

您可以使用 nmcli在运行时更改日志级别。但是,红帽建议使用配置文件启用调试并重启 NetworkManager。使用 .conf 文件更新调试 levelsdomains 可帮助调试引导问题,并捕获来自初始状态的所有日志。

流程

  1. 可选:显示当前的日志设置:

    # nmcli general logging
      LEVEL  DOMAINS
      INFO   PLATFORM,RFKILL,ETHER,WIFI,BT,MB,DHCP4,DHCP6,PPP,WIFI_SCAN,IP4,IP6,A
    UTOIP4,DNS,VPN,SHARING,SUPPLICANT,AGENTS,SETTINGS,SUSPEND,CORE,DEVICE,OLPC,
    WIMAX,INFINIBAND,FIREWALL,ADSL,BOND,VLAN,BRIDGE,DBUS_PROPS,TEAM,CONCHECK,DC
    B,DISPATCH
  2. 要修改日志级别和域,请使用以下选项:

    • 要将所有域的日志级别设置为相同的 LEVEL,请输入:

      # nmcli general logging level LEVEL domains ALL
    • 要更改特定域的级别,请输入:

      # nmcli general logging level LEVEL domains DOMAINS

      请注意,使用这个命令更新日志级别会禁用所有其他域的日志功能。

    • 要更改特定域的级别并保持其它域的级别,请输入:

      # nmcli general logging level KEEP domains DOMAIN:LEVEL,DOMAIN:LEVEL

42.4. 查看 NetworkManager 日志

您可以查看 NetworkManager 日志进行故障排除。

流程

  • 要查看日志,请输入:

    # journalctl -u NetworkManager -b

其它资源

  • NetworkManager.conf(5) man page。
  • journalctl man page。