问题标签 [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.
rsyslog - Rsyslog 搜索和替换输出
我一直在搜索 rsyslog 文档,寻找一种通过删除带引号的字符串来匿名化 mysql 日志数据的方法。我已经成功地使用 :contains 属性检测到带有敏感数据的字符串,但我似乎找不到替换的方法。
我查看了属性选项和正则表达式功能。我相信我可能会遗漏一些东西,因为这些都没有提供直接的查找和替换方法。
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。这可能是正常的,但我将其包括在内以供详细说明。
我真的希望我错过了一些明显的东西,比如我尚未安装的依赖包,但我还没有发现它。如果不是这样,有没有人知道我如何才能让它工作?
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 上的每个应用程序都已成功将其日志发送给它。但似乎我不知道如何为每个应用程序拆分一个文件。
提前致谢。
rsyslog - 在 logrotate 后 Rsyslog 写入旧文件
我的 rsyslog logrotate 配置文件是 -
该文件正在正确轮换,但日志将进入旧日志文件。当我手动重新启动 rsyslog 时,问题得到解决。
我在 CentOS 上运行它。
java - 使用 rsyslog 和 log4j 将日志传输到远程服务器
我正在尝试使用 log4j SyslogAppender 和 rsyslog 在中央日志服务器上写入日志
我的 rsyslog 版本是“4.6.2”
首先,我根据设施名称创建了模板,它可以工作。(您可以在 conf 文件 "local6 和 "local2" 中看到下面的示例)
但是 local0-local7 和用户设施名称还不够,我有很多日志文件(~30),所以我试图根据内容过滤消息,然后写入特定的日志“目录/文件”结构,但它失败
我使用了以下配置:
我在 log4j SyslogAppender 中的配置:
远程服务器上的配置
中央日志服务器上收到的消息如下所示:
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 似乎无法实现这一点。还是我错过了什么?有什么建议吗?
提前谢谢,对不起我的英语,我希望你能明白。
linux - rsyslog“if”语句不起作用
我在我的中有以下声明/etc/rsyslog.conf
:
这个想法是将本地和远程日志拆分为单独的目录和文件。
rsyslog 守护程序启动时没有任何错误,但未创建预期的日志。如果我用 simple 替换“if”语句,*.* ?DynFile
那么会填充日志,但当然它们不会被拆分。
rsyslog - 将日志发送到多个 rsyslog 服务器
当我尝试将数据发送到多个 rsyslog 服务器时,它只选择第一个转发规则并忽略其余部分。
我的 rsyslog 客户端 conf 文件。
如果我评论转发规则#1,它需要规则#2。
dns - Rsyslog 和解析(名称服务器)延迟
当在 etc/resolv.conf 中声明名称服务器时,rsyslog 在解析传入日志事件时显示显着延迟。
我想这是因为 DNS 解析发生在每个处理的事件上。
当 resolv.conf 中未声明名称服务器时,rsyslog 就像一个魅力。
困境来了。
我需要我的 Web 应用程序(托管在同一台服务器中)的 DNS 查询才能完全正常运行,但是当我在 resolv.conf 中声明名称服务器时,rsyslog 很难。
我应该怎么办?
谢谢,
阿波斯托洛斯
ubuntu-12.04 - 集中式 rsyslog:消息的最大大小
我在 Ubuntu 12.04 上配置了一个集中式系统日志。
我在两台服务器上设置了最大消息大小
我有 2 种不同的评论:
- 客户端:消息被完整记录
- 服务器:消息在 2k 处被截断
我可以找到任何其他缓冲区大小的配置。
是 rsyslog 的限制还是配置问题?
谢谢你的帮助。
弗雷德