On 21/11/2018 11:38, Ferruh Yigit wrote:
On 11/21/2018 7:48 AM, Hideyuki Yamashita wrote:
Hello,
I have some basic questions about telemetry API
which is planned to be relaesed in 18.11.
Note that I have read the follwoing document.
https://doc.dpdk.org/guides/howto/telemetry.html
Q1. In general dpdk application use polling when
receiving packets. So CPU usage is always looks 100%
when measured using e.g. vmstat even if there is no packet receiving.
(CPU is busy for polling packets)
Is that correct?
This is a general DPDK question and not specific to telemetry. The above
is correct,
it will always show as 100% busy.
Q2. Is it correct understanding that dpdk application
can send "any" value(or metric) to client if client
requested via "telemetry" framework?
Correct, assuming the metrics are being collected in the metrics library.
The telemetry library grabs everything in the metrics library and sends
it to the client. If an application exposes its metrics to the metrics
library,
then telemetry can pick this up.
Q3.Is it possible to query "real cpu usage" from dpdk
application using "telemetry" framework?
("real cpu usage" I mean if 0 pakcket incoming,
cpu usage indicates almost 0 %)
In short, no. The telemetry library only exposes what is available in the
metrics library. Getting the "real DPDK cpu usage" is very difficult in
general.
Q4. Is it possible to inform client about fault or some
trouble from dpdk application?
Telemetry can provide the metrics but doesn't have any monitoring
capabilities in terms of alerting the client of, let's say, an enormous
burst
of dropped packets. The telemetry library is purely a mechanism to
transport
metrics from DPDK to an external client. It is up to the client to
interpret
these metrics.
Background I ask above is that
- I am relative new to DPDK world and have almost no knowledge about
"telemetry"
- I am interested in how dpdk applications can "scales" on platform
like OpenStack. I think some mesurement mechanism required
and I thought it might be "telemetry" APIs.
Briefly I think yes, telemetry can be measurement mechanism and interface to
external application. Cc'ed Harry & Kevin for more detailed answers.
Thanks in advance.
BR,
Hideyuki Yamashita
NTT TechnoCross