【发布时间】:2013-07-02 07:15:38
【问题描述】:
我在使用 etsy 的 statsD 时遇到了一些问题,并且看到我对 javascript 并没有真正的经验,我想我应该问一个问题,也许有人以前遇到过这个错误,因为很遗憾这次谷歌不是那样的有帮助。
几天前,当我决定重新启动保持 statsD 正常运行的节点进程时,麻烦就开始了,但重新启动后它就无法启动。它给了我以下输出:
2 Jul 03:02:08 - reading config file: /opt/statsd/statsd/psrkConfig.js
2 Jul 03:02:08 - server is up
2 Jul 03:02:08 - Loading backend: ./backends/graphite
events.js:72
throw er; // Unhandled 'error' event
^
Error: bind Unknown system errno 92
at errnoException (dgram.js:440:11)
at dgram.js:207:28
at dns.js:72:18
at process._tickCallback (node.js:415:13)
首先,我认为我应该描述一下我的环境。我正在使用 gentoo 作为操作系统,我在系统上安装了 net-libs/nodejs-0.10.10(实际上是 0.10.8,但我在搜索问题解决方案时升级了)并且我已经克隆了最新的 etsy/statsD来自 git 的回购。我也尝试过使用 npm 版本的 statsD,但得到了相同的行为。
我尝试使用 strace 跟踪程序并遇到错误,但我不知道如何继续。我猜测失败的系统调用如下:
setsockopt(11, SOL_SOCKET, 0xf /* SO_??? */, [1], 4) = -1 ENOPROTOOPT (Protocol not available) <0.000009>
但它必须从 statsD 内部的某个地方调用(使其更容易调试),但我找不到它。
我将不胜感激任何形式的小帮助或指示,因为我猜测错误来自 node.js 库,而我对它们一无所知。谢谢你。
【问题讨论】:
-
我放弃了这个并使用了statite,在对石墨水槽进行一些更改后,它就像一个魅力。
标签: javascript node.js statsd