python graypy 根本不发送
python graypy simply not sending
import logging
import graypy
my_logger = logging.getLogger('test_logger')
my_logger.setLevel(logging.DEBUG)
handler = graypy.GELFHandler('my_graylog_server', 12201)
my_logger.addHandler(handler)
my_adapter = logging.LoggerAdapter(logging.getLogger('test_logger'),
{ 'username': 'John' })
my_adapter.debug('Hello Graylog2 from John.')
不工作
我认为问题是应该发送给 /gelf
的 url
因为当我从终端 curl 到我的 graylog 服务器时,它工作
curl -XPOST http://my_graylog_server:12201/gelf -p0 -d '{"short_message":"Hello there", "host":"example1111.org", "facility":"test", "_foo":"bar"}'
我认为您已经为 Gelf TCP 而不是 UDP 设置了输入流。我设置了一个 TCP 流,它收到了 curl 消息。但是我的 python 应用程序不会发送到流。然后我创建了一个 Gelf UDP 流,瞧!我 运行 刚才在配置我的 Graylog EC2 Appliance 时遇到了同样的问题。
还要确保 firewall/security 组也没有在端口 12201 上阻止 UDP 协议。
祝你好运,我希望这是你的问题!
打开您的 Graylog Web 应用程序,单击 'System'。您将在右侧看到一个链接列表。其中一个是'Input',点击这个。
现在您对所有 运行 输入有一个概览,监听不同的端口。在页面顶部,您可以创建一个新页面。应该有一个下拉框,其中包含输入侦听器的某些模式(我认为 'GELF AMQP' 是标准的)。将此更改为 GELF UDP,然后在下一个对话框中单击 'Launch new input',您可以为该服务指定一个端口。
您还必须设置一个必须存储消息的节点。此节点与(或应该具有)与整个 graylog2 系统相同的 IP。
现在您应该可以接收消息了
import logging
import graypy
my_logger = logging.getLogger('test_logger')
my_logger.setLevel(logging.DEBUG)
handler = graypy.GELFHandler('my_graylog_server', 12201)
my_logger.addHandler(handler)
my_adapter = logging.LoggerAdapter(logging.getLogger('test_logger'),
{ 'username': 'John' })
my_adapter.debug('Hello Graylog2 from John.')
不工作
我认为问题是应该发送给 /gelf
的 url
因为当我从终端 curl 到我的 graylog 服务器时,它工作
curl -XPOST http://my_graylog_server:12201/gelf -p0 -d '{"short_message":"Hello there", "host":"example1111.org", "facility":"test", "_foo":"bar"}'
我认为您已经为 Gelf TCP 而不是 UDP 设置了输入流。我设置了一个 TCP 流,它收到了 curl 消息。但是我的 python 应用程序不会发送到流。然后我创建了一个 Gelf UDP 流,瞧!我 运行 刚才在配置我的 Graylog EC2 Appliance 时遇到了同样的问题。
还要确保 firewall/security 组也没有在端口 12201 上阻止 UDP 协议。
祝你好运,我希望这是你的问题!
打开您的 Graylog Web 应用程序,单击 'System'。您将在右侧看到一个链接列表。其中一个是'Input',点击这个。 现在您对所有 运行 输入有一个概览,监听不同的端口。在页面顶部,您可以创建一个新页面。应该有一个下拉框,其中包含输入侦听器的某些模式(我认为 'GELF AMQP' 是标准的)。将此更改为 GELF UDP,然后在下一个对话框中单击 'Launch new input',您可以为该服务指定一个端口。 您还必须设置一个必须存储消息的节点。此节点与(或应该具有)与整个 graylog2 系统相同的 IP。
现在您应该可以接收消息了