标签: syslog

(L)ubuntu 12.04 syslog 到自定义文件(不是 /var/log/syslog 而是 /var/log/mylog) - ubuntu 12.04

我在 ubuntu 12.04 上成功测试了以下系统日志“hello world”示例:

// gcc giuspexample.c -o giuspexample

#include <syslog.h>

int  main(int argc, char *argv[])
{
    setlogmask(LOG_UPTO (LOG_NOTICE));

    openlog("atm", LOG_CONS | LOG_PID | LOG_NDELAY, LOG_LOCAL0);

    syslog(LOG_NOTICE, "Program started by User %d", getuid ());
    syslog(LOG_INFO, "A tree falls in a forest");

    closelog();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我可以阅读 /var/log/syslog 中的条目。我按照http://www.codealias.info/technotes/syslog_simple_example上的说明操作,了解如何更改目标文件路径

echo "local0.*  /var/log/mylog" >> /etc/syslog.conf
Run Code Online (Sandbox Code Playgroud)

但试图运行

sudo /etc/init.d/syslog restart
Run Code Online (Sandbox Code Playgroud)

不起作用(找不到命令)并且无论如何重新启动电脑都不会开始在 /var/log/mylog 上写入但仍在 /var/log/syslog 上。有人知道出了什么问题吗?谢谢。

ubuntu syslog

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

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

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

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

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

shell-script syslog logger

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

来自 syslogd 的消息,它们是什么意思,我该怎么做?

最近,当我通过 PuTTY 连接到有问题的 OpenSUSE 系统时,这些消息开始直接出现在我的提示中:

Message from syslogd@host at Aug  5 11:04:03 ...
 kernel:[ 6177.851012] EIP: [<75c0234e>] 0x75c0234e SS:ESP 0068:f324dde1

Message from syslogd@host at Aug  5 11:15:01 ...
 kernel:[ 6836.654020] Process sh (pid: 6245, ti=f2bee000 task=f32fd2b0 task.ti=f2bee000)

Message from syslogd@host at Aug  5 11:15:01 ...
 kernel:[ 6836.654020] Stack:

Message from syslogd@host at Aug  5 11:15:01 ...
 kernel:[ 6836.654020] Call Trace:

Message from syslogd@host at Aug  5 11:15:01 ...
 kernel:[ 6836.654020] Inexact backtrace:

Message from syslogd@host at Aug  5 11:15:01 ... …
Run Code Online (Sandbox Code Playgroud)

opensuse kernel syslog

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

rsyslog - 动作 AND 动作

我想创建规则来从数据发送facility到文件MySQL的数据库。

它如何实现?只需添加第二行,如:

syslog.*                         /var/log/syslog.log
syslog.*                         :ommysql:localhost,database,user,password
Run Code Online (Sandbox Code Playgroud)

或者有更正确的方法吗?

rsyslog syslog

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

为什么 rsyslogd 不遵守 rsyslog.d 中的以下几行

这与我在此之前的问题有些相关。

我有三个文件,/etc/rsyslog.d其中包括/etc/rsyslog.conf

  • 00-iptables.conf
  • 50-default.conf
  • postfix.conf

第一个是我创建的。我的假设是/曾经,由于命名,它将包含在 之前50-default.conf,但我也尝试将过滤器行直接放入50-default.conf并删除我的自定义文件 ( 00-iptables.conf)。

:msg, startswith, "ipt:" /var/log/iptables.log
& stop
Run Code Online (Sandbox Code Playgroud)

替换~stopas running rsyslogdwith-N1如手册页中所述,并在故障排除步骤中给出警告,说~is deprecated inavor or stop,这意味着可用的(官方!)文档似乎已过时/落后。

现在的想法是,任何以 为前缀的消息ipt:都将进入命名的日志文件,并且没有其他日志文件会收到这些行(我也尝试过contains而不是startswith)。这尤其syslogkern.log中提到50-default.conf不应该再收到这些消息:

auth,authpriv.*            /var/log/auth.log
*.*;auth,authpriv.none     -/var/log/syslog
kern.*                     -/var/log/kern.log
Run Code Online (Sandbox Code Playgroud)

我阅读了 rsyslog 文档,但是基于属性的过滤器的文档(也在这里)并不是最有启发性的。文档中给出的示例(也可以在其他地方找到)及其 Wiki 给出了一个类似的示例

# From documentation
*.* /var/log/allmsgs-including-informational.log
:msg, …
Run Code Online (Sandbox Code Playgroud)

configuration rsyslog syslog

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

系统日志中的 NUL 条目?

我的服务器在 30 号宕机了。今天刚上线。一开始我以为是路由器,因为服务器连接的路由器有点奇怪,但是当我检查系统日志时,我有NUL停机时间的条目。日志显示 30 日一切正常,然后NUL在今天的条目之前突然输入了大约 2 行,显示正常启动。无论如何我可以进一步诊断问题吗?当我说我有NUL条目时,我的意思是我有 ascii 代码 0NUL字符。

linux syslog crash

6
推荐指数
0
解决办法
1181
查看次数

我可以在不禁用 IPv6 的情况下停止填充系统日志的 IPv6“路由器广告”吗?

我的系统日志如下所示:

Apr  1 19:05:25 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:07:35 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:10:26 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:13:10 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:15:13 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:17:01 raspberrypi CRON[8809]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Apr  1 19:18:05 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:20:41 raspberrypi dhcpcd[699]: …
Run Code Online (Sandbox Code Playgroud)

dhcp syslog raspbian

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

Centos 机器中 Syslogs 的文件位置

我在我的 centos 机器上运行 syslog 服务器(rsyslog 8)。我想映射网络中的其他设备以将日志发送到此 syslog 服务器。如果映射正确完成,系统日志将在 centos 机器中存储的确切位置。/var/log/messages文件夹 ?

linux centos rsyslog syslog

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

Linux 的 rsyslog 支持 RFC 5424 吗?

由于某种原因,rsyslogd似乎无法正确解释有效RFC 5424消息。即使 RFC 给出的例子也不起作用:

$ echo "<165>1 2003-08-24T05:14:15.000003-07:00 192.0.2.1 myproc 8710 - - %% It's time to make the do-nuts." | nc -w1 -Uu /dev/log
Run Code Online (Sandbox Code Playgroud)

日志行结果:

Dec  1 16:39:08 host 1 2003-08-24T05:14:15.000003-07:00 192.0.2.1 myproc 8710 - - %% It's time to make the do-nuts.
Run Code Online (Sandbox Code Playgroud)

这表明消息无法正确解释为RFC 5424消息,而是整个字符串被视为消息有效负载。

另一方面,旧RFC 3164格式被接受没有问题:

$ echo "<165>Dec  1 05:14:15 myproc[8710]: %% It's time to make the do-nuts."| nc -w1 -Uu /dev/log
Run Code Online (Sandbox Code Playgroud)

结果是正确的日志行:

Dec  1 16:44:31 host myproc[8710]: %% …
Run Code Online (Sandbox Code Playgroud)

linux rsyslog syslog

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

syslog() 写入 /dev/log 时使用什么格式?

我最初想将其发布到 StackOverflow,因为我的兴趣主要来自于编程焦点,但在阅读了历史标签(以及它链接到的问题)后,我将其发布到 softwareengineering.se以深入了解实际/当前-日《软件工程》方面。然而,我的问题的根本历史性质是不可避免的,所以现在就到这里了。

\n
\n

我目前正在了解 Linux 上的日志记录如何工作,并且对RFC 5424RFC 3164似乎未涵盖的实现细节有点困惑:用于将数据写入/dev/log.

\n

TL;DR:我正在尝试确定 a)“/dev/log格式”的名称,以及 b)其语义的正式指定位置。我无法识别任何 RFC 或其他可引用的参考文献 - 仅代码实现特定规则,没有押韵或理由。

\n

syslog()虽然我最初对这个主题感兴趣,同时评估与其他日志记录策略(写入 stdout/stderr 和/或文件;发送到其他类型的日志服务器等)的优缺点,但有一次我意识到我完全无法确定“/dev/log格式”如何/在何处适应更大的情况。关于 syslog 格式或协议的每个问题都讨论了 RFC,并且完全忽略了控制数据如何离开syslog()并发送到 syslog 服务器的规则。

\n

几乎就像 UNIX 的这个特定角落已经完全消失在木制品中一样,就像不再存在一样……而每天都有数万亿条日志消息使用这种“格式”(?)写入。

\n

因此,这个问题是试图消除这个特定细节的歧义,只是为了这样做,描述格式,并确定可引用的参考文献。

\n
\n

日志行似乎需要以非常特定的方式进行格式化才能被接受(在我的例子中是 systemd-journald - 首先是优先级/设施信息(包含在 中<>),然后是一个非常特定格式的时间戳,这似乎是通常提到的to 作为标签,然后是消息:

\n
\n# logger -s hi\n<13>3 月 5 日 14:04:11 i336: hi\n\n#journalctl -qn1 -o Short-iso-precise\n2021-03-05T14:04:11.430504+1100 h0nk …

logs history syslog historical-unix systemd-journald

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