【问题标题】:Why we use logstash_formatter package in Python?为什么我们在 Python 中使用 logstash_formatter 包?
【发布时间】:2014-03-18 17:28:05
【问题描述】:

我正在使用logstash_formatter python 模块将格式化的日志发送到logstash。 logstash_formatter 正在将我传递的字典转换为 JSON 字符串。然后,我的应用程序将此 JSON 消息写入audit_log 文件。 logstash agent 正在读取此日志文件并将 JSON 数据发送到 RabbitMQ。

在从 https://pypi.python.org/pypi/logstash_formatter 安装 logstash_formatter 包之前,我预计由于此格式化程序将 JSON 消息传递给 RabbitMQ 索引器,因此我不必为我在我的上运行的 logstash 代理添加过滤器到我的 shipper.conf 文件机器。所有 JSON 字段将自动作为标签或字段添加到 logstash,并在 Kibana 中显示为过滤器。

但没有发生类似的事情,我仍然需要将过滤器添加到我的 shipper.conf 文件中。实际上,日志消息是作为 logstash 回复中的消息字段/标签出现的。

现在觉得没必要用这个包了。我会自己创建一个 dict 并使用 json 模块将其转换为 JSON。

如果我遗漏了什么或者我对这个格式化程序的理解完全错误,请指导我。

【问题讨论】:

    标签: python json rabbitmq logstash


    【解决方案1】:

    您是对的——您可以编写自己的脚本来获取记录并将它们转储为 JSON。

    但是,这就是模块的重点——它使您不必自己编写和维护它。

    logstash_formatter package 将所有内容强制转换为字符串,进行一些日期处理,并在源主机为空的情况下捕获错误。该模块强制并转换您的日志文件,而 logstash 代理则负责传送它。您可以告诉您的托运人过滤掉一些标签或只发送一些事件。

    通过从 Package Index 下载模块来查看模块本身——在撰写本文时,它有 154 行并且注释很好。

    【讨论】:

    • 我一定会看看的!
    • 你看了吗?还需要帮助吗?
    猜你喜欢
    • 2012-01-26
    • 2012-08-31
    • 2020-03-25
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    • 2018-12-04
    • 2014-06-20
    • 2017-05-03
    相关资源
    最近更新 更多