journald

独立日志命名空间的 systemd-journald 在 30 秒后退出
journald

独立日志命名空间的 systemd-journald 在 30 秒后退出

我正在尝试systemd-journald首次配置额外的 /log 命名空间(在 Debian bookworm 上)(因为这似乎是为不同的服务配置不同日志存储量的唯一可能性)。 我已经创建并添加了设置。/etc/systemd/[email protected]/etc/systemd/system/[email protected]LogNamespace=postfix 当我启动 Postfix 实例时,一开始一切都按预期运行:实例systemd-journald已启动并在 下创建其目录和文件/var/log/journal。但 3...

Admin

如何将 systemd 输出记录到容器日志
journald

如何将 systemd 输出记录到容器日志

我使用 podman 运行无根容器系统容器,即 systemd 作为入口点在容器内运行。 但是,我不明白如何获取容器的日志,即 systemd 本身的输出和日志进入 podman 的容器日志(它podman logs <containername>给你什么)。 据我了解,podman 将入口点的 stdout/stderr 连接到容器日志 fd。但 systemd 不使用它,而是写入/dev/console。 因此,如果我使用 运行容器,-t我会在终端上看到 systemd 输出(因为 vt 被映射到容器中/dev/console)。但无论有-t...

Admin

如何将日志从 syslog-ng 转发到 journald?
journald

如何将日志从 syslog-ng 转发到 journald?

除了监听 UDP 端口外,journald 可以完成我需要的所有工作。我想使用 syslog-ng 作为从 UDP 端口到 journald 的转发器。有一个名为“udp514-journal”的简单程序可以处理这个问题。但是,syslog-ng 似乎更可靠,功能更强大(具有 TLS 加密和过滤器)。有很多关于如何将日志从 journald 转发到 syslog-ng 的示例,但我试图实现相反的目标。这可能吗? ...

Admin

在最小 Ubuntu 服务器 22.04 上使用 fail2ban 时出现 sshd 日志文件问题
journald

在最小 Ubuntu 服务器 22.04 上使用 fail2ban 时出现 sshd 日志文件问题

我正在尝试在带有 Ionos 的 VPS 上设置并启用 fail2ban 以进行 sshd 操作。我使用的是最低限度的 Ubuntu 22.04 服务器安装。fail2ban 安装正常,但运行起来似乎有点复杂。 这是我不断遇到的情况: ~$ sudo fail2ban-client -x 启动 2023-12-05 19:48:56,976 fail2ban [4934]:错误配置过程中失败:未找到 sshd jail 的任何日志文件 我搜索过 /var/log/auth.log,但它不存在。一些快速的网络搜索表明这是因为 systemd/systemc...

Admin

如何监控 journald 在某种条件下调用程序?
journald

如何监控 journald 在某种条件下调用程序?

在我重新发明轮子并开始编写脚本之前,是否有一种简单的方法(或现有工具)可以监视 systemd 日志并在检测到某些日志条目或条件时采取行动? 示例:如果在过去二十分钟内记录了错误,则发送电子邮件,或者在 MySQL 数据库中记录失败的登录尝试的 IP 地址。 就像是: IF: `journalctl -p err --since "20 min ago"` IS NOT EMPTY THEN: `journalctl -p err --since "20 min ago" | sed '1!b;s/^/To: [email prote...

Admin

Postfix:如何仅记录到系统日志?
journald

Postfix:如何仅记录到系统日志?

我在 Ubuntu 23.10 上安装了 Postfix 3.8.1。如何配置 Postfix 以仅记录到 syslog?我的 syslog 守护程序是 journald。 根据我的理解,如果maillog_file没有设置,Postfix 应该记录到 syslog。postconf返回 root@h12345678:~ # postconf | egrep maillog_file maillog_file = maillog_file_compressor = gzip maillog_file_prefixes = /var, /dev/stdout ...

Admin

systemd-journal-remote 奇怪的行为
journald

systemd-journal-remote 奇怪的行为

我systemd在 Fedora 38 上运行了 v253。我的journal-remote.conf文件是: [Remote] Seal=True SplitMode=host # .... MaxUse=5G KeepFree=10G MaxFiles=500 我的完整内容journald.conf是: [Journal] Storage=persistent Compress=yes Seal=yes SplitMode=none SyncIntervalSec=5m RateLimitIntervalSec=0 #RateLimitInterval...

Admin

我登录时如何禁用 systemd 日志记录
journald

我登录时如何禁用 systemd 日志记录

我的 journald 日志包含许多此类消息: Jun 03 11:38:37 test1 systemd[225427]: pam_unix(systemd-user:session): session opened for user user(uid=1000) by (uid=0) Jun 03 11:38:37 test1 systemd[225427]: Queued start job for default target Main User Target. Jun 03 11:38:37 test1 systemd[225427]: Reach...

Admin

Systemd 服务未记录
journald

Systemd 服务未记录

我有一个 systemd 服务。尽管我尽了最大努力,但还是没有出现任何日志。这是服务文件: [Unit] Description=Load Balancer [Service] WorkingDirectory=/home/lb ExecStart=/usr/lib/jvm/jdk-20/bin/java --enable-preview -jar /home/lb/app.jar User=lb Type=simple Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.targ...

Admin

当注销 journald 时,何时会使用库,何时会使用 systemd 配置选项将 StdOut/StdErr 传送到 journald
journald

当注销 journald 时,何时会使用库,何时会使用 systemd 配置选项将 StdOut/StdErr 传送到 journald

我发现允许注销到 journald 的库,这表明,是的,您应该尽可能使用库并从应用程序内部登录到 journald。 但是还有一些工具,例如systemd-cat或 systemd 配置选项(来自这): [Service] StandardError=journal StandardOutput=journal StandardInput=null 这意味着我可以将服务的 stdout/stderr 的输出通过管道传输到 journald,而不必担心执行特定于 journald 的操作,所以现在我不确定。 有人能明确说明何时适合使用一种方法而不是另一种方法...

Admin

为什么 python-journald-rsyslog 似乎批量/延迟日志写入?
journald

为什么 python-journald-rsyslog 似乎批量/延迟日志写入?

我打算记录一个 Python 脚本输出。它看起来像这样: arm@stackoverflow > cat test.py #!/usr/bin/python from time import sleep while True: print("Hello") sleep(1) 我尝试使用标准 syslog 方式来处理日志,因此我尝试配置 JournalD 和 SystemD 以如下方式发送所有内容Syslog: arm@stackoverflow > cat /etc/systemd/journald.conf |...

Admin

轮换 systemd-journal-remote 的日志
journald

轮换 systemd-journal-remote 的日志

我正在运行 Ubuntu 22.02systemd-journal-remote版本249.11-0ubuntu3.6.,由于未设置日志轮换,硬盘已满。为了管理日志的文件大小,我使用/etc/systemd/journal-remote.conf.d/01-central-log.conf两个属性MaxFiles和更新了配置MaxUse。不幸的是,这些属性没有被尊重,当我重新启动 systemd-journal-remote 服务时会抛出以下错误: Jan 27 10:20:11 log-server systemd-journal-remote[94902...

Admin

为 systemd-journald 定义自定义字段
journald

为 systemd-journald 定义自定义字段

这文档状态,可能可以通过应用程序定义新的字段。 这是什么意思?可以定义任意字段吗?还是只有那些可能列在文档用户日志字段? 如果任意字段都是可能的,那么如何定义它们? ...

Admin

systemd 服务标准输出未完全被 systemd 日志捕获
journald

systemd 服务标准输出未完全被 systemd 日志捕获

我有一个简单的 systemd 服务(称为“testpath”),它只是打印一些要由日志捕获的输出。日志会间歇性地、不可预测地丢失部分输出。这种行为似乎非常不稳定,测试用例又如此微不足道,很难看出这可能是任何一种预期行为。 有人能解释一下 systemd 的预期行为吗?如果做不到,有人能建议一个策略来尝试将其作为一个错误隔离吗? 该服务只需运行此脚本: % cat ~/tmp/testpath.bin #!/bin/bash sleep 0.1 ps -p $$ echo Echo statement. 预期的行为是每次系统调用时,ps和echo输出都...

Admin

将所有正在运行的服务的 systemd 服务日志重定向到 /dev/kmsg
journald

将所有正在运行的服务的 systemd 服务日志重定向到 /dev/kmsg

目前,systemd 服务文件默认将日志重定向到日志缓冲区。但我需要将所有用户空间服务日志作为 /dev/kmsg 缓冲区的一部分。 我能够将 StandardOutput=file:/dev/kmsg 添加到服务文件中,并且它只对该服务有效。 但是当我在 /etc/systemd/system.conf 中添加 DefaultStandardOutput=file:/dev/kmsg (取消注释)时,它并没有反映在每个服务文件中(与 systemctl show 进行交叉检查)。 任何关于如何从每个服务文件的集中位置进行这项工作的指示都会很有帮助。影响每个...

Admin