DPDK 22.11.1
Loading...
Searching...
No Matches
rte_telemetry.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2018 Intel Corporation
3 */
4
5#include <stdint.h>
6
7
8#ifndef _RTE_TELEMETRY_H_
9#define _RTE_TELEMETRY_H_
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
16#define RTE_TEL_MAX_STRING_LEN 128
18#define RTE_TEL_MAX_SINGLE_STRING_LEN 8192
20#define RTE_TEL_MAX_DICT_ENTRIES 256
22#define RTE_TEL_MAX_ARRAY_ENTRIES 512
23
35struct rte_tel_data;
36
44 RTE_TEL_STRING_VAL,
48};
49
60int
61rte_tel_data_start_array(struct rte_tel_data *d, enum rte_tel_value_type type);
62
75int
76rte_tel_data_start_dict(struct rte_tel_data *d);
77
88int
89rte_tel_data_string(struct rte_tel_data *d, const char *str);
90
103int
104rte_tel_data_add_array_string(struct rte_tel_data *d, const char *str);
105
118int
119rte_tel_data_add_array_int(struct rte_tel_data *d, int x);
120
133int
134rte_tel_data_add_array_u64(struct rte_tel_data *d, uint64_t x);
135
153int
154rte_tel_data_add_array_container(struct rte_tel_data *d,
155 struct rte_tel_data *val, int keep);
156
172int
173rte_tel_data_add_dict_string(struct rte_tel_data *d, const char *name,
174 const char *val);
175
190int
191rte_tel_data_add_dict_int(struct rte_tel_data *d, const char *name, int val);
192
207int
208rte_tel_data_add_dict_u64(struct rte_tel_data *d,
209 const char *name, uint64_t val);
210
231int
232rte_tel_data_add_dict_container(struct rte_tel_data *d, const char *name,
233 struct rte_tel_data *val, int keep);
234
252typedef int (*telemetry_cb)(const char *cmd, const char *params,
253 struct rte_tel_data *info);
254
264typedef void * (*handler)(void *sock_id);
265
283int
284rte_telemetry_register_cmd(const char *cmd, telemetry_cb fn, const char *help);
285
286
294struct rte_tel_data *
296
305void
306rte_tel_data_free(struct rte_tel_data *data);
307
308#ifdef __cplusplus
309}
310#endif
311
312#endif
struct rte_tel_data * rte_tel_data_alloc(void)
int rte_tel_data_add_dict_string(struct rte_tel_data *d, const char *name, const char *val)
int rte_tel_data_add_dict_u64(struct rte_tel_data *d, const char *name, uint64_t val)
int rte_tel_data_start_array(struct rte_tel_data *d, enum rte_tel_value_type type)
int rte_tel_data_string(struct rte_tel_data *d, const char *str)
int rte_telemetry_register_cmd(const char *cmd, telemetry_cb fn, const char *help)
int(* telemetry_cb)(const char *cmd, const char *params, struct rte_tel_data *info)
int rte_tel_data_add_dict_container(struct rte_tel_data *d, const char *name, struct rte_tel_data *val, int keep)
int rte_tel_data_add_array_int(struct rte_tel_data *d, int x)
int rte_tel_data_add_array_container(struct rte_tel_data *d, struct rte_tel_data *val, int keep)
int rte_tel_data_start_dict(struct rte_tel_data *d)
int rte_tel_data_add_array_u64(struct rte_tel_data *d, uint64_t x)
int rte_tel_data_add_array_string(struct rte_tel_data *d, const char *str)
int rte_tel_data_add_dict_int(struct rte_tel_data *d, const char *name, int val)
rte_tel_value_type
@ RTE_TEL_INT_VAL
@ RTE_TEL_U64_VAL
@ RTE_TEL_CONTAINER