标签: logger

`logger` 在 Arch Linux 中将其消息记录到哪里?

logger命令通过 syslog 记录一个条目,它通常将该行放入某个文件中,例如/var/log/messages.

如果我正确理解Arch Linux 中的文档,所有日志记录都是通过 systemd 完成的,但是我找不到logger使用journalctl.

  • logger在 Arch Linux 中给出的消息究竟会发生什么?
  • 日志条目存储在哪里?(快速 grep 建议/var/log/journal/*/system.journal。)
  • 如何访问此日志?(我需要任何特殊选项journalctl吗?)

arch-linux systemd logger systemd-journald

19
推荐指数
1
解决办法
3万
查看次数

远程系统日志命令行客户端

logger经常使用,但是是否有用于通过网络远程提交系统日志消息的 FOSS 命令行工具?

现在,我必须配置一个设施/优先级对以提交到rsyslogd侧面的远程服务器。我想去掉中间人,而不必修改我的本地 syslog 守护进程的配置。

有这样的工具吗?

syslog logger

10
推荐指数
1
解决办法
3万
查看次数

使用记录器在终端和 /var/log/messages 上打印消息

我在脚本中使用以下选项在终端以及 /var/log/messages 上打印

echo "System Load is OK : $Current_loadadv"
echo "System Load is OK : $Current_loadadv" | logger
Run Code Online (Sandbox Code Playgroud)

但我怎么能在单行中做到这一点?

bash logger

7
推荐指数
2
解决办法
2万
查看次数

你在记录器中使用 -t "tag" 选项做什么?

当使用“logger”命令将消息从脚本写入系统日志时,我使用-t“标签”将脚本名称与写入日志的消息一起存储。

我这样做是为了使查找条目更容易进行故障排除。

  • 是否有使用此标签消息的任何特别标准?
  • 如果你使用它,你在那里放什么?

shell-script syslog logger

6
推荐指数
1
解决办法
394
查看次数

如何使用 tee 和 logger -t "some tag:"?

我在另一篇文章中看到过,它展示了如何使用 tee 和 logger,如下所示。

tee >(logger) <<< "System Load is OK : $Current_loadadv"
Run Code Online (Sandbox Code Playgroud)

>(logger)是 bash 语法,用于创建将进入 FIFO 的文件描述符,然后将其馈送到 logger 的标准输入(这是 bash 中称为“进程替换”的一种形式)。然后它将该文件描述符的路径作为参数传递回 tee,并且由于 tee 写入其非选项参数,因此写入 FD,并且 logger 接收您的字符串。

如何修改以下命令以使用上面的标记和记录器?

curl -Sks  http://x.x.x.x/scripts/somescript.sh | /bin/bash | logger -t "sometag"
Run Code Online (Sandbox Code Playgroud)

shell pipe tee logger

4
推荐指数
1
解决办法
6546
查看次数

Logger 命令 - 如何在给定文件中存储日志?

请解释以下命令的作用。

logger_cmd="logger -p local0.info ${program-name}[$$]:"

$logger_cmd "There is some files missing in ${dest-dir}"
Run Code Online (Sandbox Code Playgroud)

如何在日志文件中写入任何消息?

我写了一个命令,但它没有在 llog.txt 中显示任何消息。帮我。

 logger -s "any message" -t "WARNING" -f ~/llog.txt
Run Code Online (Sandbox Code Playgroud)

bash syslog logger

3
推荐指数
1
解决办法
7661
查看次数

使用 systemd 将日志重定向到文件不起作用

我正在尝试使用 systemd 将日志重定向到文件。我尝试将以下语句添加到服务中。

StandardOutput=file:/tmp/test1.txt
StandardError=file:/tmp/test2.txt
Run Code Online (Sandbox Code Playgroud)

但这些文件没有生成。我在这里缺少什么吗?是否需要为此启用任何内核标志?

我在我的设备中使用 systemd 版本 216。

linux logs systemd logger systemd-journald

2
推荐指数
1
解决办法
2634
查看次数

为什么将标准输出定向到文件不一致且延迟?

我尝试了两种方法将程序调用的输出定向printf到文件。在这两种情况下,有时文件会立即更新,有时需要几分钟,有时根本不更新文件。

我的程序从/etc/network/if-up.d/upstart执行的 bash 脚本运行。我已经为我的 bash 脚本尝试过这个:

    #!/bin/bash
    sleep 2

    if ! pgrep "demo" > /dev/null
    then
        sudo /home/pi/code/demo_device/demo >> /home/pi/code/demo_device/auto_log.txt 2>&1 &
    fi
Run Code Online (Sandbox Code Playgroud)

和这个:

    #!/bin/bash
    exec 1> >(logger -s -t $(basename $0)) 2>&1
    sleep 2

    if ! pgrep "demo" > /dev/null
    then
        sudo /home/pi/code/demo_device/demo &
    fi
Run Code Online (Sandbox Code Playgroud)

第一种情况下的 auto_log.txt 文件和第二种情况下的/var/log/user.log 文件都存在我上面描述的问题。我还让 bash 脚本运行演示可执行文件,start-stop-daemon并得到了相同的结果。当启动时将程序作为后台进程运行时,如何才能立即一致地更新日志文件?

注意:我不知道这是否相关,但该程序被设计为连续运行并且永不退出。

bash c logs io-redirection logger

0
推荐指数
1
解决办法
1489
查看次数