gpt4 book ai didi

python - 使用 syslog-ng python 目标设置变量路径

转载 作者:行者123 更新时间:2023-12-01 08:10:13 26 4
gpt4 key购买 nike

这可能吗?据我所知,将选项添加到 python 类中的唯一方法是将它们硬编码到 python 目标的选项中。我需要基于像 $HOST 这样的宏设置一个变量路径,但 python 目标选项似乎没有被插入。我需要一种方法将 $HOST 等宏值传递给 init() 方法。

最佳答案

$HOST 的值对于每条消息都会发生变化,因此您实际上需要在 send() 中使用它,而不是在 init() 中。您可能真正想要的是这样的:

class MyDestination(object):

# ...

def send(self, msg):
host = msg["HOST"]
# ...
return True

或者您可以使用从 v3.18 开始的模板:

import syslogng

class MyDestination(object):
def init(self, options):
self.log_template = syslogng.LogTemplate("$HOST")
# ...
return True

def send(self, msg):
formatted_string = self.log_template.format(msg, self.template_options)
# ...
return True

关于python - 使用 syslog-ng python 目标设置变量路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55300457/

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