Influxdb没有监听udp端口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Influxdb没有监听udp端口相关的知识,希望对你有一定的参考价值。

正如标题所述,我无法让Influxdb监听配置中定义的udp端口。

udp的配置如下所示:

[[udp]]
  enabled = true
  bind-address = ":8089"
  database = "testdb"
  retention-policy = ""
  batch-size = 5000
  batch-pending = 10
  read-buffer = 0
  batch-timeout = "1s"
  precision = ""

Http / tcp连接工作正常,但不是udp。我用netstat -aun检查了端口,结果如下:

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
udp        0      0 0.0.0.0:54601           0.0.0.0:*
udp        0      0 0.0.0.0:68              0.0.0.0:*
udp6       0      0 :::38131                :::*

未列出已定义的udp端口。

我用sudo service influxdb restart重新启动了Influxdb,但它没有帮助。

我错过了什么?

更新7.11.2016 21:59

我运行命令:influxd -config influxdb.generated.conf来查看这样的输出:

 8888888           .d888 888                   8888888b.  888888b.
   888            d88P"  888                   888  "Y88b 888  "88b
   888            888    888                   888    888 888  .88P
   888   88888b.  888888 888 888  888 888  888 888    888 8888888K.
   888   888 "88b 888    888 888  888  Y8bd8P' 888    888 888  "Y88b
   888   888  888 888    888 888  888   X88K   888    888 888    888
   888   888  888 888    888 Y88b 888 .d8""8b. 888  .d88P 888   d88P
 8888888 888  888 888    888  "Y88888 888  888 8888888P"  8888888P"

[run] 2016/11/07 19:54:57 InfluxDB starting, version 1.0.2, branch master, commit ff307047057b7797418998a4ed709b0c0f346324
[run] 2016/11/07 19:54:57 Go version go1.6.2, GOMAXPROCS set to 2
[run] 2016/11/07 19:54:57 Using configuration at: influxdb.generated.conf
run: open server: listen: listen tcp :8088: bind: address already in use

它没有说udp端口。

答案

我有同样的问题,我认为根本原因可能是一样的。我将InfluxDB作为没有参数的Windows服务运行。因此它使用了与我期望的不同的.conf文件,因此当我启用UDP侦听器时它没有生效。

为了解决这个问题,我更改了服务配置(通过nssm)以包含参数:

-config path	omyconfig.conf

确保它通过我期望的配置运行。

以上是关于Influxdb没有监听udp端口的主要内容,如果未能解决你的问题,请参考以下文章

多个UDP监听同一个端口

使用 mozilla firefox 监听 UDP 端口的方法

在特定端口监听 UDP 消息

TCP和UDP可以同时监听相同的端口吗

让两个 UDP 服务器监听同一个端口?

java中如何检测本机指定的UDP服务端口是不是被占用?并且自动分配一个可用udp端口;