2016-07-06 84 views
0

看看Graphite的最新文檔,我發現我可以通過明文將數據提供給Graphite。但我似乎無法在Python 3中通過服務器IP地址和端口2003發送純文本。我所能做的就是通過sock.sendall(message.encode())發送字節,並且Graphite似乎沒有讀取該字節。有沒有辦法讓Python 3向Graphite提供數據?如何通過Python 3套接字庫發送純文本?

+1

發送明文很容易,你只需要知道使用什麼編碼。雖然可能是UTF-8;就我而言,這是'encode'和'decode'的默認值。因此,如果Graphite沒有讀取它,它可能是你a)在你的代碼中有一個bug,所以沒有發送,b)Graphite有一個錯誤,c)Graphite使用的不是UTF-8,d)客戶端和服務器彼此之間沒有任何聯繫。但是我不知道Graphite是什麼,或者它是如何工作的,所以... – CodenameLambda

+1

您是否必須使用純文本? pickle格式非常容易與Python一起使用(它在標準庫中),並且效率也更高。 – Joakim

+0

隨着我的工作,我只有端口2003打開。所以即使我願意,我也不能使用泡菜。 – Flair

回答

0

我的代碼實際上工作。出於某種原因,圖形本身沒有更新。因此sock.sendall(message.encode())實際上對明文協議起作用。