python graypy 根本不发送

标签 python udp udpclient graylog2

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"}'

最佳答案

打开您的 Graylog Web 应用程序,单击“系统”。您将在右侧看到一个链接列表。其中一个是“输入”,点击这个。 现在您对所有正在运行的输入有一个概览,监听不同的端口。在页面顶部,您可以创建一个新页面。应该有一个下拉框,其中包含输入监听器的某些模式(我认为“GELF AMQP”是标准的)。将此更改为 GELF UDP 并在下一个对话框中单击“启动新输入”,您可以为该服务指定一个端口。 您还必须设置一个必须存储消息的节点。该节点与您的整个 graylog2 系统具有(或应该具有)相同的 IP。

现在你应该可以接收消息了

关于python graypy 根本不发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28925447/

相关文章:

c++ - 为 UDP 打印出的奇怪字符

c# - 需要在 NamedPipe 或 UDP 之间进行选择

python - 使用列表理解修改字典列表

python - 在 python ctypes 中控制内存对齐

Java 如何确定进入UDP服务器的数据类型? XML 二进制

c# - 压力测试——连接饱和

c - 如何从客户端(用 C 编写)接收 int 数组到服务器(用 python 编写)

python - 当我尝试执行sql查询时出现错误

python - 根据转换为整数后的值对字典键进行排序

c++ - Qt udp socket,什么会触发socket的readyRead信号?