单机箱系统上的系统日志记录
单机箱系统日志记录配置概述
Junos 系统日志记录实用程序类似于 UNIX 实用程序。syslogd
本节介绍如何为运行 Junos OS 的单机箱系统配置系统日志记录。
在通用标准环境中,Junos-FIPS 软件和瞻博网络设备的系统日志记录配置与 Junos OS 相同。有关更多信息,请参阅 通用标准和 Junos-FIPS 安全配置指南。
有关为由 TX Matrix 路由器和 T640 路由器组成的路由矩阵配置系统日志记录的信息,请参阅 为 TX Matrix 路由器配置系统日志记录。为 TX 矩阵路由器配置系统日志记录
每个系统日志消息都属于一个设施,该 设施将相关消息组合在一起。每条消息还预先分配了一个 严重性级别,该级别指示触发事件对路由器功能的严重程度。始终指定要包含在日志中的消息的设施和严重性。有关更多信息,请参阅 指定要包含在日志中的消息的设施和严重性。指定要包含在日志中的消息的设施和严重性
通过在层次结构级别包含相应的语句 ,可以将消息定向到一个或多个目标:[edit system syslog]
到本地文件系统中的命名文件,方法是包含 该语句。
file
请参阅 将系统日志消息定向到日志文件。将系统日志消息定向到日志文件当一个或多个特定用户(或所有用户)登录到路由器时,通过包含 语句到他们的终端会话。
user
请参阅 将系统日志消息定向到用户终端。将系统日志消息定向到用户终端到路由器控制台,方法是包含 语句。
console
请参阅 将系统日志消息定向到控制台。将系统日志消息定向到控制台-
到运行 该实用程序的远程计算机,方法是包含 该语句。syslogd
host
请参阅 将系统日志消息定向到远程计算机。No link title
默认情况下,消息以标准格式记录,该格式基于 UNIX 系统日志格式;有关邮件格式的详细信息,请参阅 系统日志资源管理器。https://apps.juniper.net/syslog-explorer/您可以通过以下方式更改记录消息的内容和格式:
您可以以结构化数据格式(而不是标准 Junos 格式)将消息记录到文件中。结构化数据格式提供了更多信息,而无需增加大量长度,并使自动化应用程序更容易从消息中提取信息。有关更多信息,请参见 以结构化数据格式记录消息。以结构化数据格式记录消息
消息的设施和严重性级别一起称为其 优先级。默认情况下,消息的标准 Junos 格式不包含优先级信息(默认情况下,结构化数据格式包含优先级代码)。要在定向到文件或远程目标的标准格式消息中包含优先级信息,请包含 语句。
explicit-priority
有关详细信息,请参阅 在系统日志消息中包含优先级信息。在系统日志消息中包含优先级信息默认情况下,消息的标准 Junos 格式指定记录消息时的月份、日期、小时、分钟和秒。您可以修改标准格式系统日志消息上的时间戳,以包括年份和/或毫秒。(默认情况下,结构化数据格式指定年份和毫秒。有关更多信息,请参阅 在时间戳中包含年份或毫秒。在时间戳中包含年份或毫秒
-
将邮件定向到远程计算机时,可以将邮件中报告的 IP 地址指定为其源。您还可以配置一些功能,以便更轻松地将 Junos OS 生成的消息或在特定设备上生成的消息分开。有关详细信息,请参阅 将系统日志消息定向到远程计算机。No link title
预定义的设施将相关消息组合在一起,但您也可以使用正则表达式更精确地指定将设施中的哪些消息记录到文件、用户终端或远程目标中。有关更多信息,请参见 使用字符串和正则表达式优化记录的消息集。使用字符串和正则表达式优化记录的消息集
在提交检查期间,控制台上不会显示有关配置的 警告(例如,跟踪文件大小或跟踪文件数不匹配)。traceoptions 但是,提交新配置时,系统会在系统日志消息中记录这些警告。
Junos OS 系统日志配置语句
要将交换机配置为记录系统消息,请在层次结构级别包含 语句 :syslog
[edit system]
[edit system] syslog { archive <files number> <size size> <world-readable | no-world-readable>; console { facility severity; } file filename { facility severity; archive <archive-sites (ftp-url <password password>)> <files number> <size size> <start-time "YYYY-MM-DD.hh:mm"> <transfer-interval minutes> <world-readable | no-world-readable>; explicit-priority; match "regular-expression"; structured-data { brief; } } host hostname { facility severity; explicit-priority; facility-override facility; log-prefix string match "regular-expression"; } source-address source-address; time-format (year | millisecond | year millisecond); user (username | *) { facility severity; match "regular-expression"; } }
Junos OS 最低系统日志记录配置
要记录或查看系统日志消息,必须在层次结构级别包含语句。syslog
[edit system]
至少为消息指定一个目标,如中所述 。表 1有关配置语句的详细信息,请参阅 单机箱系统日志记录配置概述。单机箱系统日志记录配置概述
目的地 |
最低配置语句 |
---|---|
文件 |
[edit system syslog] file filename { facility severity; } |
一个、多个或所有用户的终端会话 |
[edit system syslog] user (username | *) { facility severity; } |
路由器或交换机控制台 |
[edit system syslog] console { facility severity; } |
远程机器或路由器或交换机上的其他路由引擎 |
[edit system syslog] host (hostname | other-routing-engine) { facility severity; } |
示例:配置系统日志消息
QFabric 系统监控其组件设备上发生的事件,并将有关这些事件的系统日志消息分发到配置的所有外部系统日志消息服务器(主机)。组件设备可能包括节点设备、互连设备、Director 设备和虚拟机箱。消息存储在 QFabric 系统数据库中以供查看。要查看消息,请发出 命令。show log
此示例介绍如何在 QFabric 系统上配置系统日志消息。
要求
此示例使用以下硬件和软件组件:
Junos OS 12.2 版
QFabric 系统
可配置为系统日志消息主机的外部服务器
概述
生成系统日志消息事件的组件设备可能包括节点设备、互连设备、Director 设备和控制平面交换机。以下配置示例在 QFabric 系统中包括这些组件:
控制器组上运行的控制器软件
控制平面交换机
互连设备
多节点设备
配置
程序
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改与您的网络配置匹配所需的任何详细信息,然后将命令复制并粘贴到层次结构级别的 CLI 中。[edit]
set system syslog host 10.1.1.12 any error set system syslog file qflogs set system syslog file qflogs structured-data brief set system syslog file qflogs archive size 1g
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 Junos OS CLI 用户指南 中的在配置模式下使用 CLI 编辑器 。在配置模式下使用 CLI 编辑器
要配置来自 QFabric Director 设备的系统消息:
指定主机、任何设施和严重 性级别。
error
[edit system syslog] user@switch# set host 10.1.1.12 any error
注:您可以配置多个系统日志消息服务器(主机)。QFabric 系统将消息发送到配置的每个服务器。
(可选)指定要捕获日志消息的文件名。
注:在 QFabric 系统上,名为 的系统日志文件隐式配置了设施和严重性级别 为 100 MB。messages
any any
因此,您无法在配置中指定文件名,并且自动命令完成不适用于该文件名 。messages[edit system syslog] user@switch# set file qflogs structured-data brief user@switch# set file qflogs
(可选)配置系统日志消息存档文件的最大大小。此示例指定存档大小为 1 GB。
[edit system syslog] user@switch# set file qflogs archive size 1g
成果
在配置模式下,输入 show system
命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以便进行更正。
[edit] user@switch# show system syslog { file qflogs { } host 10.1.1.12 { any error; } }
如果完成设备配置,请从配置模式输入 commit
。
以结构化数据格式记录消息
您可以以结构化数据格式(而不是标准 Junos OS 格式)将消息记录到文件中。结构化数据格式提供了更多信息,而无需增加大量长度,并使自动化应用程序更容易从消息中提取信息。
结构化数据格式符合互联网标准 RFC 5424,即 系统日志协议,该协议位于 https://tools.ietf.org/html/rfc5424。RFC 建立标准消息格式,而不考虑记录消息的源或传输协议。
要将消息以结构化数据格式输出到文件,请在层次结构级别包含语句:structured-data
[edit system syslog file filename]
[edit system syslog file filename] facility severity; structured-data { brief; }
可选 语句禁止显示默认情况下显示在消息末尾的英语文本,用于描述错误或事件。brief
结构化格式用于记录到文件中由 Junos 进程或软件库生成的所有消息。
如果将 and 语句中的一个或两个都包含在语句中,则会忽略这些语句。explicit-priority
time-format
structured-data
这些语句适用于标准 Junos OS 系统日志格式,不适用于结构化数据格式。
指定日志文件大小、编号和存档属性
为防止日志文件过大,默认情况下,Junos OS 系统日志记录实用程序会将消息写入定义大小的一系列文件。序列中的文件称为 存档 文件,以将它们与当前正在写入消息 的活动文件区 分开来。默认最大大小取决于平台类型:
128 KB(适用于 EX 系列交换机)
1 兆字节 (MB),适用于 M 系列、MX 系列和 T 系列路由器
10 MB,用于 TX Matrix 或 TX Matrix Plus 路由器
1 MB 用于 QFX 系列
当调用 的活动日志文件达到最大大小时,日志记录实用程序将关闭该文件,对其进行压缩,并将压缩的归档文件 命名为 。logfilelogfile.0.gz 然后,日志记录实用程序将打开并写入名为 的新活动文件。logfile 此过程也称为文件轮换。当 new 达到配置的最大大小时,将重命名 ,并且关闭、压缩和重命名 新的 。logfilelogfile.0.gzlogfile.1.gzlogfilelogfile.0.gz 缺省情况下,日志记录实用程序以这种方式创建最多 10 个归档文件。当达到最大存档文件数且活动文件的大小达到配置的最大大小时,当前活动文件将覆盖最后一个存档文件的内容。默认情况下,日志记录实用程序还将可读取日志文件的用户限制为 具有 Junos OS 权限的用户和用户。root
maintenance
Junos OS 提供了一个配置语句 ,通过配置检查日志文件大小的时间间隔来配置系统日志文件轮换频率。log-rotate-frequency
频率可以设置为 1 分钟到 59 分钟的值。默认频率为 15 分钟。
要配置日志轮换频率,请在层次结构级别包含 语句 。log-rotate-frequency
[edit system syslog]
您可以包含语句来 更改每个文件的最大大小、创建的存档文件数以及谁可以读取日志文件。archive
要配置适用于所有日志文件的值,请在层次结构级别包含 语句 :archive
[edit system syslog]
archive <files number> <size size> <world-readable | no-world-readable>;
要配置适用于特定日志文件的值,请在层次结构级别包含 语句 :archive
[edit system syslog file filename]
archive <archive-sites (ftp-url <password password>)> <files number> <size size> <start-time "YYYY-MM-DD.hh:mm"> <transfer-interval minutes> <world-readable | no-world-readable> ;
archive-sites site-name
指定要用于存储文件的存档站点的列表。该 值是指向目标的任何有效 FTP URL。site-name
如果配置了多个站点名称,则会创建系统日志文件的存档站点列表。存档文件时,路由器或交换机会尝试将文件传输到列表中的第一个 URL,仅当传输不成功时才移动到下一个站点。日志文件以指定的日志文件名存储在存档站点上。有关如何指定有效 FTP URL 的信息,请参阅 在 Junos OS CLI 命令中指定文件名和 URL 的格式。https://www.juniper.net/documentation/en_US/junos15.1/topics/concept/junos-software-formats-filenames-urls.html
binary-data
将文件标记为包含二进制数据。这允许正确存档二进制文件,例如 WTMP 文件(基于 UNIX 的系统的登录记录)。若要恢复默认设置,请包含 语句。no-binary-data
files number
指定在覆盖最旧的文件之前要创建的文件数。该值可以是 1 到 1000。
size size
指定每个文件的最大大小。该值可以从 64 KB (64k) 到 1 千兆字节 (1g);若要表示兆字节,请在整数后使用字母 。m
数字与 、 或 单位字母之间没有空格。k
m
g
定义将活动日志文件一次性传输到语句指定的 站点列表中的第一个可访问站点的本地时区日期和时间。start-time "YYYY-MM-DD.hh:mm"
archive-sites
transfer-interval interval
定义当前日志文件在关闭并传输到存档站点之前保持打开状态(即使它未达到最大可能大小)并接收新统计信息的时间量。此间隔值可以是 5 到 2880 分钟。
world-readable
使所有用户都能读取日志文件。要恢复默认权限,请包含该 语句。no-world-readable
在系统日志消息中包含优先级信息
消息的设施和严重性级别统称为其 优先级。默认情况下,以标准 Junos OS 格式记录的消息不包含有关优先级的信息。要在定向到文件的标准格式消息中包含优先级信息,请在层次结构级别包含 语句 :explicit-priority
[edit system syslog file filename]
[edit system syslog file filename] facility severity; explicit-priority;
默认情况下,以结构化数据格式记录的消息包含优先级信息。如果在层次结构级别将语句与语句一起包括在内,则会忽略该语句,并以结构化数据格式记录消息。structured-data
[edit system syslog file filename]
explicit-priority
explicit-priority
有关该 语句的信息,请参阅 以结构化数据格式记录消息。structured-data
以结构化数据格式记录消息
要在定向到远程计算机或其他路由引擎的消息中包含优先级信息,请在层次结构级别包含 语句 :explicit-priority
[edit system syslog host (hostname | other-routing-engine)]
[edit system syslog host (hostname | other-routing-engine)] facility severity; explicit-priority;
该 选项不适用于 QFX 系列。other-routing-engine
消息中记录的优先级始终指示原始的本地设施名称。如果定向到远程目标的消息包含该 语句,则在将消息定向到远程目标时,Junos OS 系统日志记录实用程序仍会使用消息本身的备用设施名称。facility-override
有关更多信息,请参阅 更改定向到远程目标的系统日志消息的备用设施名称。更改定向到远程目标的系统日志消息的备用设施名称
包含语句时,Junos OS 日志记录实用程序会将设施名称和严重性级别的代码附加到消息标记名称(如果消息包含):explicit-priority
FACILITY-severity[-TAG]
(标记是分配给某些 Junos OS 系统日志消息的唯一标识符。)
在以下示例中,消息属于设施,并分配了严重性 (6):CHASSISD_PARSE_COMPLETE
daemon
info
Aug 21 12:36:30 router1 chassisd[522]: %DAEMON-6-CHASSISD_PARSE_COMPLETE: Using new configuration
如果未包含该 语句,则优先级不会出现在消息中:explicit-priority
Aug 21 12:36:30 router1 chassisd[522]: CHASSISD_PARSE_COMPLETE: Using new configuration
系统日志设施代码和优先级信息中报告的数字代码
表 2 列出可出现在系统日志消息中的设施代码,并将其映射到设施名称。
编码 |
Junos 设施名称 |
事件或错误的类型 |
---|---|---|
|
|
身份验证和授权尝试 |
|
|
只有超级用户才能查看的身份验证和授权尝试 |
|
|
对 Junos OS 配置的更改 |
|
|
路由器类型的指定配置无效 |
|
|
内核控制台输出 r 写入的消息/dev/console |
|
|
cron 进程执行的操作或遇到的错误 |
|
|
系统进程执行的操作或遇到的错误 |
|
|
动态流捕获过程执行的操作或遇到的错误 |
|
|
防火墙过滤器执行的数据包过滤操作 |
|
|
FTP 进程执行的操作或遇到的错误 |
|
|
在 Junos OS CLI 提示符下发出或由客户端应用程序(如 Junos XML 协议或 NETCONF 客户端)调用的命令 |
|
|
Junos 内核执行的操作或遇到的错误 |
|
|
网络时间协议 (NTP) 执行的操作或遇到的错误 |
|
|
数据包转发引擎执行的操作或遇到的错误 |
|
|
Junos 系统日志记录实用程序执行的操作或遇到的错误 |
|
|
用户空间进程执行的操作或遇到的错误 |
表 3 列出可能出现在系统日志消息中的数字严重性代码,并将其映射到严重性级别。
数字代码 |
严重性级别 |
Description |
---|---|---|
|
|
系统崩溃或导致路由器停止运行的其他情况 |
|
|
需要立即更正的情况,例如系统数据库损坏 |
|
|
关键情况,如硬错误 |
|
|
错误条件的后果通常不如紧急、警报和严重级别的错误严重 |
|
|
需要监控的条件 |
|
|
不是错误但可能需要特殊处理的情况 |
|
|
感兴趣的事件或非错误条件 |
|
|
软件调试消息(仅当技术支持代表指示您配置此严重性级别时,才会显示这些消息) |
在时间戳中包含年份或毫秒
默认情况下,标准格式系统日志消息中记录的时间戳指定记录消息时的月份、日期、小时、分钟和秒,如以下示例所示:
Aug 21 12:36:30
要在时间戳中包含年份和/或毫秒,请在 或 层次结构级别包含语句:time-format
[edit system syslog]
[edit security log]
[edit system syslog] time-format (year | millisecond | year millisecond);
但是,默认情况下,traceoption 消息的时间戳以毫秒为单位指定,并且与语句无关 。[edit system syslog time-format]
修改后的时间戳用于定向到层次结构级别上由 、 或语句配置的每个目标的消息,但不用于定向到语句配置的目标的消息。file
console
user
[edit system syslog]
host
缺省情况下, 在 FreeBSD 控制台中, 额外的时间信息在定向到由语句配置 的每个目标的系统日志消息中不可用。host
但是, 在使用 FreeBSD 控制台的 Junos OS 特定实现中, 额外的时间信息在定向到每个目标的系统日志消息中提供。
以下示例说明了同时包含毫秒 (401) 和年份 (2006) 的时间戳的格式:
Aug 21 12:36:30.401 2006
默认情况下,以结构化数据格式记录的消息包括年份和毫秒。如果在层次结构级别将 结构化数据语句与语句一起 包括在内,则会忽略该 语句,并以结构化数据格式记录消息。[edit system syslog file filename]
time-format
time-format
有关该 语句的信息,请参阅 以结构化数据格式记录消息。structured-data
以结构化数据格式记录消息
使用字符串和正则表达式优化记录的消息集
预定义的设施将相关消息组合在一起,但您也可以将消息与字符串和正则表达式进行匹配,以优化将设施中的哪些消息记录到文件、用户终端或远程目标中。
通过 and 配置语句,可以分别将系统日志消息与字符串或正则表达式进行匹配。match-strings
match
您可以在以下层次结构级别包含这些语句:
[edit system syslog file filename]
(对于文件)[edit system syslog user (username | *)]
(对于特定用户会话或终端上的所有用户会话)[edit system syslog host (hostname | other-routing-engine)]
(对于远程目标)
要根据正则表达式评估消息并仅将匹配的消息记录到给定目标,请包含 该语句并指定正则表达式:match
match
"regular-expression";
从 Junos OS 16.1 版开始,您可以使用简单的字符串比较来更有效地过滤消息,因为它比匹配复杂的正则表达式占用的 CPU 更少。要指定消息中必须显示的文本字符串,以便将消息记录到目标,请包含 该语句并指定匹配的字符串或字符串列表:match-strings
match-strings
string-name;
match-strings
[string1 string2];
和语句选择具有与给定字符串或正则表达式匹配的已配置设施和严重性的消息。match-strings
match
该 语句执行简单的字符串比较,因此,与使用该语句与 复杂的正则表达式匹配相比,它的 CPU 密集度更低。match-strings
match
如果为同一目标同时配置 and 语句,Junos OS 将 首先评估条件;如果消息包含任何已配置的子字符串,则会记录消息,但不 评估条件。match
match-strings
match-strings
match
如果不满足条件,则系统会根据配置语句中的正则表达式计算消息。match-strings
match
为 语句指定正则表达式时,请使用 POSIX 标准 1003.2 中定义的扩展(现代)UNIX 正则表达式的表示法。match
解释正则表达式语法超出了本文档的范围,但 POSIX 标准可从电气和电子工程师协会 (IEEE, http://www.ieee.org) 获得。http://www.ieee.org
表 4 指定哪些字符与可在 match 语句中使用的某些正则表达式运算符匹配。在说明中,术语是指单个字母数字字符或括在方括号、括号或大括号中的一组字符。
该 语句不区分大小写。match
操作人员 | 比赛 |
---|---|
.(句号) |
除空格外的任何字符的一个实例。 |
*(星号) |
前一个术语的零个或多个实例。 |
+(加号) |
前一个术语的一个或多个实例。 |
?(问号) |
前一个术语的零个或一个实例。 |
|(管道) |
显示在管道运算符两侧的术语之一。 |
!(感叹号) |
当感叹号出现在表达式开头时,表达式指定的字符串以外的任何字符串。感叹号的使用特定于 Junos OS。 |
^ (插入符号) |
当插入符号出现在方括号之外时,行的开头。 当插入符号是方括号内的第一个字符时,不在方括号内的任何字符的一个实例。 |
$(美元符号) |
行尾。 |
[ ] (成对方括号) |
括起来的字母数字字符之一的一个实例。要指示字符范围,请使用连字符 ( - ) 分隔范围的开头和结尾字符。例如,[a-z0-9] 匹配任何字母或数字。 |
( ) (成对括号) |
所含项的计算值的一个实例。括号用于指示正则表达式中的计算顺序。 |
使用字符串和正则表达式
过滤属于 该工具的消息,将包含字符串 的消息定向到 root 用户的终端:interactive-commands
configure
[edit system syslog] user root { interactive-commands any; match-strings configure; }
当用户发出命令以进入配置模式时,用户终端上会显示如下消息:root
configure
timestamp router-name mgd[PID]: UI_CMDLINE_READ_LINE: User 'user', command 'configure private'
过滤属于设施且 严重性为 或更高的消息,将它们定向到文件 。daemon
error
/var/log/process-errors 省略 SNMP 进程 (snmpd) 生成的消息,而是将它们定向到文件 :/var/log/snmpd-errors
[edit system syslog] file process-errors { daemon error; match "!(.*snmpd.*)"; } file snmpd-errors { daemon error; match-strings snmpd; }
匹配语句的 Junos 系统日志正则表达式运算符
操作人员 |
比赛 |
---|---|
|
除空格外的任何字符的一个实例。 |
|
前一个术语的零个或多个实例。 |
|
前一个术语的一个或多个实例。 |
|
前一个术语的零个或一个实例。 |
|
显示在管道运算符两侧的术语之一。 |
|
当感叹号出现在表达式开头时,表达式指定的字符串以外的任何字符串。感叹号的使用特定于 Junos OS。 |
|
当插入符号出现在方括号之外时,行的开头。 当插入符号是方括号内的第一个字符时,不在方括号内的任何字符的一个实例。 |
|
行尾。 |
|
括起来的字母数字字符之一的一个实例。要指示字符范围,请使用连字符 ( ) 分隔范围的开头和结尾字符。 |
|
所含项的计算值的一个实例。括号用于指示正则表达式中的计算顺序。 |
禁用设施的系统日志记录
要禁用属于特定设施的消息的日志记录,请在配置中包含该 语句。facility none
例如,当您要记录具有相同严重性级别且属于除少数设施之外的所有设施的消息时,此语句非常有用。您可以先包括该语句,然后再为 不想记录的每个设施包含一个语句,而不是为要记录的每个设施都包含语句 。any severity
facility none
例如,以下内容会将级别或更高级别的所有 消息记录到控制台,但来自 和 设施的消息除外。error
daemon
kernel
来自这些设施的消息将改为记录到文件中 :>/var/log/internals
[edit system syslog] console { any error; daemon none; kernel none; } file internals { daemon info; kernel info; }
示例:配置系统日志记录
以下示例说明如何配置有关用户在 CLI 提示符下输入或由客户端应用程序(如 Junos OS XML 协议或 NETCONF 客户端应用程序)调用的所有命令的所有命令的消息日志记录,以及所有身份验证或授权尝试 的消息记录,包括对已登录的任何用户的文件和终端:cli-commands
[edit system] syslog { file cli-commands { interactive-commands info; authorization info; } user * { interactive-commands info; authorization info; } }
以下示例显示如何配置将警报状态中的所有更改记录到文件中 :/var/log/alarms
[edit system] syslog { file alarms { kernel warning; } }
下面的示例演示如何配置各种类型的消息的处理,如注释中所述。信息被记录到两个文件, 用户 终端 , 远程计算机和控制台:alex
[edit system] syslog { /* write all security-related messages to file /var/log/security */ file security { authorization info; interactive-commands info; } /* write messages about potential problems to file /var/log/messages: */ /* messages from "authorization" facility at level "notice" and above, */ /* messages from all other facilities at level "warning" and above */ file messages { authorization notice; any warning; } /* write all messages at level "critical" and above to terminal of user "alex" if */ /* that user is logged in */ user alex { any critical; } /* write all messages from the "daemon" facility at level "info" and above, and */ /* messages from all other facilities at level "warning" and above, to the */ /* machine monitor.mycompany.com */ host monitor.mycompany.com { daemon info; any warning; } /* write all messages at level "error" and above to the system console */ console { any error; } }
以下示例显示如何配置用户发出 Junos OS CLI 命令时生成的消息的处理,方法是指定 具有以下严重性级别的功能:interactive-commands
info
— 当用户在 CLI 操作或配置模式提示符下发出任何命令时记录消息。该示例将消息写入文件 。/var/log/user-actions— 当用户发出配置模式命令 和 时记录一条消息。
notice
rollback
commit
该示例将消息写入用户 的终端。philip
warning
- 当用户发出重新启动软件进程的命令时记录一条消息。该示例将消息写入控制台。[edit system] syslog { file user-actions { interactive-commands info; } user philip { interactive-commands notice; } console { interactive-commands warning; } }
示例:分配替代设施
将在本地路由平台上生成的错误级别或更高级别的所有消息记录到远程计算机上名为 的设施中:local0
monitor.mycompany.com
[edit system syslog] host monitor.mycompany.com { any error; facility-override local0; }
配置位于加利福尼亚州的路由平台和位于纽约的路由平台,以将消息发送到名为 的 单个远程计算机。central-logger.mycompany.com
来自加利福尼亚的消息被分配到替代设施 点,来自纽约的消息被分配到替代设施 点。local0
local2
配置加利福尼亚路由平台以聚合设施中的 消息:
local0
[edit system syslog] host central-logger.mycompany.com { change-log info; facility-override local0; }
配置纽约路由平台以聚合设施中的 消息:
local2
[edit system syslog] host central-logger.mycompany.com { change-log info; facility-override local2; }
然后,可以将系统日志记录实用程序配置为将消息从设施写入文件,并将消息从设施写入文件 。central-logger
local0
california-config
local2
new-york-config