如何手动将消息添加到 Linux 系统日志文件

日志文件是包含一组记录(或事件列表)的文件,这些记录已由系统本身记录。 使用日志文件,系统管理员可以跟踪特定日期或时间发生的事情。 管理员大多使用日志文件进行故障排除。 日志文件会自动生成并保存在一个公共目录下 – /var/日志/. 我们还可以手动将消息添加到 Linux 系统日志文件中。 例如,之后 设置日志服务器,您可能想检查日志服务器是否正常运行。 为此,我们可以手动在日志文件中添加一些条目来测试日志服务器。 这是哪里 记录器 命令派上用场。

内容

  1. 使用 Logger 命令将消息添加到 Linux 系统日志文件
    1. 将记录器 PID 添加到系统日志
    2. 给消息添加标签
    3. 将文件中的消息添加到日志文件
    4. 优先记录消息
    5. 从 ‘stdin’ 和消息中获取输入到系统日志
    6. 向远程日志服务器发送消息
    7. 限制消息的大小
    8. 帮助我们帮助您:

使用 Logger 命令将消息添加到 Linux 系统日志文件

logger 命令是 实用程序-linux 包,所以不要费心安装它。 让我给你看一些例子。

手动向系统日志文件添加条目非常简单! logger 命令的典型用法是:

logger <message-to-add>

例子:

$ logger Welcome to OSTechNix

上述命令会将条目“Welcome to OSTechNix”添加到系统日志文件中。

让我们验证消息是否已添加或未使用 ‘尾巴’ 命令:

$ tail -l /var/log/syslog

样本输出:

Jan 31 07:19:23 ubuntuserver systemd[1705]: Listening on REST API socket for snapd user session agent. Jan 31 07:19:23 ubuntuserver systemd[1705]: Listening on GnuPG network certificate management daemon. Jan 31 07:19:23 ubuntuserver systemd[1705]: Listening on GnuPG cryptographic agent and passphrase cache. Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Sockets. Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Timers. Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Basic System. Jan 31 07:19:23 ubuntuserver systemd[1]: Started User Manager for UID 1000. Jan 31 07:19:23 ubuntuserver systemd[1705]: Reached target Default. Jan 31 07:19:23 ubuntuserver systemd[1705]: Startup finished in 298ms. Jan 31 07:33:14 ubuntuserver sk: Welcome to OSTechNix

正如您在输出中看到的,给定的消息已添加到 syslog 文件中。

笔记:

不同的 Linux 操作系统将日志消息存储在不同的文件中。 我建议你调查一下 /var/日志/ 目录以了解日志存储在哪些文件中。 在 CentOS 等基于 RPM 的系统中,一般日志消息将存储在 /var/日志/消息 文件而不是 /var/log/syslog 文件。

您还可以通过将消息括在单引号或双引号中来添加消息。

$ logger "Welcome to OSTechNix blog"

或者,

$ logger 'Howdy, Welcome to OSTechNix blog'

使用 tail 命令检查条目是否已添加到 syslog 文件中:

$ tail -l /var/log/syslog  [...] Jan 31 07:40:02 ubuntuserver sk: Welcome to OSTechNix blog Jan 31 07:40:31 ubuntuserver sk: Howdy, Welcome to OSTechNix blog

将记录器 PID 添加到系统日志

我们甚至可以记录 记录器进程的PID 每行使用 -一世 像下面这样的标志。

$ logger -i 'Howdy, Welcome to OSTechNix blog'

使用 tail 命令验证日志消息:

$ tail -l /var/log/syslog  [...] Jan 31 07:49:22 ubuntuserver sk[1879]: Howdy, Welcome to OSTechNix blog

这里, 1879 是记录器的进程ID。

给消息添加标签

正如您在上面的输出中可能注意到的那样,新添加的条目被标记为当前登录的用户名,即 sk. 默认标签是在终端上登录的用户名。 但是,我们可以使用特定标签标记要记录的每一行 -t 旗帜。

$ logger -i -t ostechnix 'Howdy, Welcome to OSTechNix blog'

检查日志条目:

$ tail -l /var/log/syslog  [...] Jan 31 07:54:02 ubuntuserver ostechnix[1881]: Howdy, Welcome to OSTechNix blog

看? 最后一个条目被标记为 ostechnix 它的进程ID是 1881.

将文件中的消息添加到日志文件

也可以将文件中的条目添加到我们的系统日志文件中。

让我们创建一个示例文本文件。

$ echo "This is test file" > file.txt
$ cat file.txt  This is test file

现在使用命令将 file.txt 的内容添加到系统日志文件中:

$ logger -f file.txt

检查日志文件:

$ tail -l /var/log/syslog  [...] Jan 31 08:43:06 ubuntuserver sk: This is test file

如果输入文件有任何空行,您可以使用将它们从添加到日志文件中排除 -e 像下面这样的标志。

$ logger -e -f file.txt

优先记录消息

可以记录具有给定优先级的消息。

$ logger "Welcome To OSTechNix" --priority user.warning

默认优先级是 ‘user.notice’. 请参阅记录器手册页以了解所有可用的优先级选项。

从 ‘stdin’ 和消息中获取输入到系统日志

我们可以通过管道输入来自stand input,并使用命令将它们推送到系统日志:

$ echo "Welcome to OSTechNix" | logger

向远程日志服务器发送消息

要将消息发送到在特定端口上运行的远程系统日志服务器,请运行:

$ logger "Welcome to OSTechNix" --server <hostname-or-ip> --port <port-no>

或者,

$ logger "Welcome to OSTechNix" -n <hostname-or-ip> -p <port-no>

默认端口号是 514.

限制消息的大小

我们可以使用设置最大允许的消息大小 – 尺寸 旗帜。

$ logger --size 5 abcdefghijklmnopqrswxyz

检查日志消息大小:

$ tail -l /var/log/syslog  [...] Jan 31 09:09:02 ubuntuserver sk: abcde

默认是 1KiB 人物。

有关更多详细信息,请查看手册页。

$ man logger

建议阅读:

  • 如何在 Linux 中使用 Logrotate 管理日志文件

感谢您的光临!

帮助我们帮助您:

  • 订阅我们的电子邮件通讯: 立即注册
  • 支持 OSTechNix: 通过贝宝捐款
  • 下载免费的电子书和视频: TradePub 上的 OSTechNix
  • 联系我们: 红迪网 | Facebook | 推特 | 领英 | RSS订阅

祝你有美好的一天!!

CLILinuxLinux 命令loggerSyslog系统日志