1

我想使用 syslog 从远程应用程序进行日志记录。
不过我有一些问题:
例如 RFC 说:

If the originally formed message has a HOSTNAME field, then it
will contain the hostname as it knows itself.  If it does not
have a hostname, then it will contain its own IP address.

这是什么意思?从我的应用程序到日志客户端库的消息,如果它包含一些主机名,那么它将被替换?
你能给我举个例子吗?
例如,我尝试过:
From localhost some data
或者
From ahost@aa some data
这些字符串存储在系统日志服务器中,因为它们是由我的应用程序发送到系统日志客户端库的。
由于上述要求,它们不应该有所不同吗?
我正在将 log4j 用于 syslog 客户端。

谢谢

4

1 回答 1

2

您正在阅读旧的RFC 3164。那个已经过时了;替代品是RFC 5424,它更清楚地说明了该HOSTNAME领域的情况:

HOSTNAME 字段标识最初发送系统日志消息的机器。

HOSTNAME 字段应该包含主机名和发起者的域名,格式在 STD 13 [ RFC1034 ] 中指定。此格式在本文档中称为完全限定域名 (FQDN)。

实际上,并非所有 syslog 应用程序都能够提供 FQDN。因此,其他值也可能出现在 HOSTNAME 中。本文档规定在这种情况下使用其他值。系统日志应用程序应该首先提供最具体的可用值。HOSTNAME 字段内容的优先顺序如下:

  1. 全域名

  2. 静态 IP 地址

  3. 主机名

  4. 动态IP地址

  5. 零值

于 2011-02-03T20:15:00.767 回答