用于替换OpenTSDB中的netcat的Python套接字

She*_*eng 3 python sockets opentsdb

我试图使用python套接字而不是netcat将度量数据发送到OpenTSDB,但没有运气.有人可以告诉我是否可以这样做?

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("hostname", port))
s.send("put foo 123456789 12.9 host=dummy")
Run Code Online (Sandbox Code Playgroud)

s.send(...)返回非零值,所以我猜这个字符串确实被发送了,只是OpenTSDB无法识别它.我试图使用netcat发送相同的字符串,它的工作原理.

tsu*_*una 7

OpenTSDB逐行解析,所以是的,你需要\n在你发送的字符串的末尾.