问题标签 [rsyslog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1809 浏览

rsyslog - Rsyslog 搜索和替换输出

我一直在搜索 rsyslog 文档,寻找一种通过删除带引号的字符串来匿名化 mysql 日志数据的方法。我已经成功地使用 :contains 属性检测到带有敏感数据的字符串,但我似乎找不到替换的方法。

我查看了属性选项和正则表达式功能。我相信我可能会遗漏一些东西,因为这些都没有提供直接的查找和替换方法。

0 投票
1 回答
3985 浏览

ubuntu-12.04 - Ubuntu 12.04 记录器不会写入远程系统日志

我已经将这个问题发布到 Server Fault 并且作为一个受人尊敬的问题被两次投票,但不幸的是,就答案而言,它一直是蟋蟀,所以我正在尝试在这里发布它,因为这个论坛似乎非常活跃。如果对有人可以帮助我的网站有任何其他建议,我也将不胜感激。

我正在尝试使用记录器将事件发送到远程系统日志服务器。系统日志服务器是运行默认 rsyslogd 的 Ubuntu 12.04。“客户端”服务器都是 Ubuntu 12.04 和 SLES11SP1。在 SLES11 上,我可以成功地将事件发送到 syslog 服务器。Tcpdump 显示它们是从 SLES 客户端成功发送的:

在 Ubuntu syslog 服务器上,tcpdump 还显示它们正在被接收,并且它们显示在 /var/log/messages 中。但是,即使该操作系统上的 logger 具有用于指定远程服务器的特殊开关,我也无法让 logger 从 Ubuntu 12.04 客户端发送任何内容。我尝试了许多命令行变体:

tcpdump 甚至没有将这些努力显示为离开客户端服务器。它们似乎根本就没有发生过。

我正在从 sudo su shell 运行记录器。有趣的是,当我简单地使用 logger 向本地 syslog 发送消息时,它似乎将其记录为来自我的帐户,但当我发送远程时,它会将其记录为来自 logger。这可能是正常的,但我将其包括在内以供详细说明。

我真的希望我错过了一些明显的东西,比如我尚未安装的依赖包,但我还没有发现它。如果不是这样,有没有人知道我如何才能让它工作?

0 投票
2 回答
1298 浏览

heroku - 如何从每个 Heroku 应用程序的 rsyslog 中拆分日志文件?

我按照这里描述的指南https://devcenter.heroku.com/articles/logging#creating-your-own-syslog-drain创建我自己的 rsyslog 排水管。

我使用以下行配置了我的 rsyslog:

这仅在我将 rsyslog 从 5.x 更新到 7.x 后才有效。一个错误阻止 rsyslog 使用端口 514。但更新后它运行良好。

但现在我想将日志拆分为每个应用程序一个文件。我发现了另一个关于我应该使用的说法的问题:

其中“d.123...”是 Heroku 提供的实际流失 ID。但这没有用。我按照rsyslog 站点上的文档尝试了几种变体。没有工作。

同样,使用一个文件有效。我配置为使用该排水管的 Heroku 上的每个应用程序都已成功将其日志发送给它。但似乎我不知道如何为每个应用程序拆分一个文件。

提前致谢。

0 投票
3 回答
4868 浏览

rsyslog - 在 logrotate 后 Rsyslog 写入旧文件

我的 rsyslog logrotate 配置文件是 -

该文件正在正确轮换,但日志将进入旧日志文件。当我手动重新启动 rsyslog 时,问题得到解决。

我在 CentOS 上运行它。

0 投票
0 回答
5004 浏览

java - 使用 rsyslog 和 log4j 将日志传输到远程服务器

我正在尝试使用 log4j SyslogAppender 和 rsyslog 在中央日志服务器上写入日志

我的 rsyslog 版本是“4.6.2”

首先,我根据设施名称创建了模板,它可以工作。(您可以在 conf 文件 "local6 和 "local2" 中看到下面的示例)

但是 local0-local7 和用户设施名称还不够,我有很多日志文件(~30),所以我试图根据内容过滤消息,然后写入特定的日志“目录/文件”结构,但它失败

我使用了以下配置:

我在 log4j SyslogAppender 中的配置:

远程服务器上的配置

中央日志服务器上收到的消息如下所示:

0 投票
1 回答
181 浏览

mysql - 如何监控特定文件夹并将该文件夹中每个日志文件的内容保存到mysql数据库

我们正在为我们的 QA 人员开发一项服务。

主要目标是我们的 Web 界面中的测试人员能够从 github 分支中选择此特定机器的转储并单击“部署”按钮,然后用于测试的 rails 应用程序将部署到 Digital Ocean。

我现在正在开发的功能是收集部署日志并通过我们的 Web 界面显示它们。

在 DO droplet 上有一个“logs”文件夹,其中包含在部署期间填充的不同日志文件:

migrations_result_#{machine_id}.log,bundle_result_#{machine_id}.log等。

我们服务上部署的机器的 id在哪里#{machine_id}(它不是 droplet id)。

在remote_syslog gem的帮助下,我们监控每个 droplet 上的“日志”文件夹,并通过 udp 将它们发送到我们的主服务服务器,在rsyslog的帮助下,我们将它们存储在一个特定的文件夹中,比如说/var/log/deplogs/

所以/var/log/deplogs/我们有:

migrations_result_1.log、bundle_result_1.log、

migrations_result_2.log, bundle_result_2.log,
...

migrations_result_n.log,bundle_result_n.log

我如何需要监控这个文件夹并将每个日志文件的内容保存到 mysql 数据库?

我需要实现以下内容(Ruby 代码):

Rsyslog 似乎无法实现这一点。还是我错过了什么?有什么建议吗?

提前谢谢,对不起我的英语,我希望你能明白。

0 投票
1 回答
2191 浏览

linux - rsyslog“if”语句不起作用

我在我的中有以下声明/etc/rsyslog.conf

这个想法是将本地和远程日志拆分为单独的目录和文件。

rsyslog 守护程序启动时没有任何错误,但未创建预期的日志。如果我用 simple 替换“if”语句,*.* ?DynFile那么会填充日志,但当然它们不会被拆分。

0 投票
1 回答
9237 浏览

rsyslog - 将日志发送到多个 rsyslog 服务器

当我尝试将数据发送到多个 rsyslog 服务器时,它只选择第一个转发规则并忽略其余部分。

我的 rsyslog 客户端 conf 文件。

如果我评论转发规则#1,它需要规则#2。

0 投票
1 回答
6204 浏览

dns - Rsyslog 和解析(名称服务器)延迟

当在 etc/resolv.conf 中声明名称服务器时,rsyslog 在解析传入日志事件时显示显着延迟。

我想这是因为 DNS 解析发生在每个处理的事件上。

当 resolv.conf 中未声明名称服务器时,rsyslog 就像一个魅力。

困境来了。

我需要我的 Web 应用程序(托管在同一台服务器中)的 DNS 查询才能完全正常运行,但是当我在 resolv.conf 中声明名称服务器时,rsyslog 很难。

我应该怎么办?

谢谢,

阿波斯托洛斯

0 投票
1 回答
13459 浏览

ubuntu-12.04 - 集中式 rsyslog:消息的最大大小

我在 Ubuntu 12.04 上配置了一个集中式系统日志。

我在两台服务器上设置了最大消息大小

我有 2 种不同的评论:

  • 客户端:消息被完整记录
  • 服务器:消息在 2k 处被截断

我可以找到任何其他缓冲区大小的配置。

是 rsyslog 的限制还是配置问题?

谢谢你的帮助。

弗雷德