From: Thomas Monjalon <thomas@monjalon.net>
To: Ciara Power <ciara.power@intel.com>
Cc: kevin.laatz@intel.com, stable@dpdk.org, dev@dpdk.org,
robin.jarry@6wind.com
Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH] usertools: add telemetry python3 compatibility
Date: Sun, 19 Jan 2020 22:48:14 +0100 [thread overview]
Message-ID: <2200875.3c9HiEOlIg@xps> (raw)
In-Reply-To: <20200116172425.19246-1-ciara.power@intel.com>
+Cc Robin, known Python expert :)
16/01/2020 18:24, Ciara Power:
> The client script for use with the telemetry library did not support
> python3, as the data being sent over the socket was in string format.
> Python3 requires the data be explicitly converted to bytes before being
> sent. Similarily, the received bytes need to be decoded into string
> format.
>
> Cc: stable@dpdk.org
>
> Signed-off-by: Ciara Power <ciara.power@intel.com>
> ---
> usertools/dpdk-telemetry-client.py | 17 +++++++++--------
> 1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/usertools/dpdk-telemetry-client.py b/usertools/dpdk-telemetry-client.py
> index 290345dcc..71a8a8852 100755
> --- a/usertools/dpdk-telemetry-client.py
> +++ b/usertools/dpdk-telemetry-client.py
> @@ -65,18 +65,19 @@ def register(self): # Connects a client to DPDK-instance
> self.socket.recv_fd.settimeout(2)
> self.socket.send_fd.connect("/var/run/dpdk/rte/telemetry")
> JSON = (API_REG + self.file_path + "\"}}")
> - self.socket.send_fd.sendall(JSON)
> + self.socket.send_fd.sendall(JSON.encode())
> +
> self.socket.recv_fd.listen(1)
> self.socket.client_fd = self.socket.recv_fd.accept()[0]
>
> def unregister(self): # Unregister a given client
> - self.socket.client_fd.send(API_UNREG + self.file_path + "\"}}")
> + self.socket.client_fd.send((API_UNREG + self.file_path + "\"}}").encode())
> self.socket.client_fd.close()
>
> def requestMetrics(self): # Requests metrics for given client
> - self.socket.client_fd.send(METRICS_REQ)
> - data = self.socket.client_fd.recv(BUFFER_SIZE)
> - print("\nResponse: \n", str(data))
> + self.socket.client_fd.send(METRICS_REQ.encode())
> + data = self.socket.client_fd.recv(BUFFER_SIZE).decode()
> + print("\nResponse: \n", data)
>
> def repeatedlyRequestMetrics(self, sleep_time): # Recursively requests metrics for given client
> print("\nPlease enter the number of times you'd like to continuously request Metrics:")
> @@ -88,9 +89,9 @@ def repeatedlyRequestMetrics(self, sleep_time): # Recursively requests metrics f
> time.sleep(sleep_time)
>
> def requestGlobalMetrics(self): #Requests global metrics for given client
> - self.socket.client_fd.send(GLOBAL_METRICS_REQ)
> - data = self.socket.client_fd.recv(BUFFER_SIZE)
> - print("\nResponse: \n", str(data))
> + self.socket.client_fd.send(GLOBAL_METRICS_REQ.encode())
> + data = self.socket.client_fd.recv(BUFFER_SIZE).decode()
> + print("\nResponse: \n", data)
>
> def interactiveMenu(self, sleep_time): # Creates Interactive menu within the script
> while self.choice != 4:
>
next prev parent reply other threads:[~2020-01-19 21:48 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-16 17:24 [dpdk-dev] " Ciara Power
2020-01-19 21:48 ` Thomas Monjalon [this message]
2020-01-20 8:47 ` [dpdk-dev] [dpdk-stable] " Robin Jarry
2020-01-21 17:03 ` [dpdk-dev] [PATCH v2] usertools: fix " Ciara Power
2020-01-24 10:11 ` Laatz, Kevin
2020-02-16 21:25 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2200875.3c9HiEOlIg@xps \
--to=thomas@monjalon.net \
--cc=ciara.power@intel.com \
--cc=dev@dpdk.org \
--cc=kevin.laatz@intel.com \
--cc=robin.jarry@6wind.com \
--cc=stable@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).