gpt4 book ai didi

logging - rsyslog 操作中的动态键名

转载 作者:可可西里 更新时间:2023-11-01 10:57:34 24 4
gpt4 key购买 nike

我正在尝试将我系统上的所有日志发送到 redis 数据库。为此我在文件“/etc/rsyslog.d/redis.conf”中有以下配置。
我按照 here 中的说明进行操作使用队列模式。正在关注
是我的配置:

module(load="omhiredis")

action(
name="push_redis"
type="omhiredis"
mode="queue"
key="testqueue"
)

问题:
上面的配置将日志写入redis数据库,但是
的“key”对于所有日志保持不变,即“testqueue”。

Expected Output :   

我想,当一个程序登录时,应该在redis中创建一个新的 key ,它与
程序的名称。然后我就可以检查
的日志每个程序单独。

Attempts :

我尝试使用如下过滤器:

if $programname == 'logger' then {
action(
name="push_redis"
type="omhiredis"
mode="queue"
key="logger"
)
}

但是我将不得不为每个程序编写一个过滤器,这是可能的
但不是可接受的解决方案。

Is there any way to create a key dynamically when a program logs into redis ?

感谢您花时间阅读问题。

最佳答案

这已在 8.23 上使用 dynakey 参数解决 https://github.com/rsyslog/rsyslog/pull/1218 .

理论上也可以使用 mode="template",但是当消息包含空格时它不能正常工作。

关于logging - rsyslog 操作中的动态键名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39190262/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com