我正在尝试使用以下代码将纯文本数据发送到 Graphite 服务器:
try (
Socket socket = new Socket("companyHost", 2003);
Writer writer = new OutputStreamWriter(socket.getOutputStream());) {
Long timestamp = System.currentTimeMillis() / 1000;
System.out.println(timestamp);
String sentMessage = "graphite.carbon.local.test.showone 1 " + timestamp;
System.out.println(sentMessage);
writer.write(sentMessage);
writer.flush();
} catch (IOException e) {
e.printStackTrace();
}
但是当我在 web 浏览器中检查 companyHost:port 下的 carbon 服务器时,我的数据不存在,graphite.carbon.local 下什么也没有。我错过了什么吗?
我在控制台中的输出似乎没问题(没有错误/异常):
1409233165
graphite.carbon.local.test.showone 1 1409233165
如果需要,我会尝试提供更多信息。
最佳答案
是的,我确实在八月份解决了它。
如果我没记错的话,我所要做的就是在消息末尾添加一个新行字符“\n”。
Graphite文档中规定,消息格式如下:
metric_path value timestamp\n
关于java - Graphite 服务器不显示从 Java 发送的新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25550815/