diff options
Diffstat (limited to 'src/vpp/stats/stats.api')
-rw-r--r-- | src/vpp/stats/stats.api | 521 |
1 files changed, 0 insertions, 521 deletions
diff --git a/src/vpp/stats/stats.api b/src/vpp/stats/stats.api deleted file mode 100644 index c94471ae93c..00000000000 --- a/src/vpp/stats/stats.api +++ /dev/null @@ -1,521 +0,0 @@ -/* - * Copyright (c) 2015-2016 Cisco and/or its affiliates. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at: - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** \file - - This file defines the stats API -*/ - -option version = "1.0.2"; - -import "vnet/interface.api"; -import "vnet/bier/bier.api"; - -service { - rpc want_stats - returns want_stats_reply; - rpc want_interface_simple_stats - returns want_interface_simple_stats_reply - events vnet_interface_simple_counters; - rpc want_per_interface_simple_stats - returns want_per_interface_simple_stats_reply - events vnet_per_interface_simple_counters; - rpc want_interface_combined_stats - returns want_interface_combined_stats_reply - events vnet_interface_combined_counters; - rpc want_per_interface_combined_stats - returns want_per_interface_combined_stats_reply - events vnet_per_interface_combined_counters; - rpc want_ip4_fib_stats - returns want_ip4_fib_stats_reply - events vnet_ip4_fib_counters; - rpc want_ip6_fib_stats - returns want_ip6_fib_stats_reply - events vnet_ip6_fib_counters; - rpc want_ip4_mfib_stats - returns want_ip4_mfib_stats_reply - events vnet_ip4_mfib_counters; - rpc want_ip6_mfib_stats - returns want_ip6_mfib_stats_reply - events vnet_ip6_mfib_counters; - rpc want_ip4_nbr_stats - returns want_ip4_nbr_stats_reply - events vnet_ip4_nbr_counters; - rpc want_ip6_nbr_stats - returns want_ip6_nbr_stats_reply - events vnet_ip6_nbr_counters; - rpc want_udp_encap_stats - returns want_udp_encap_stats_reply - events vnet_udp_encap_counters; - rpc want_bier_neighbor_stats - returns want_bier_neighbor_stats_reply - events vnet_bier_neighbor_counters; -}; - -/** \brief Want Stats, enable/disable ALL stats updates - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want Interface Simple Stats, register for detailed interface stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates - - Please consider using want_per_interface_simple_stats with sw_if_index=~0 -*/ -autoreply define want_interface_simple_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want Per Interface simple Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates - @param num - number of sw_if_indexes - @param sw_ifs - array of sw_if_index -*/ -autoreply define want_per_interface_simple_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; - u32 num; - u32 sw_ifs[num]; - -}; - -/** \brief Want Interface Combined Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates - - Please consider using want_per_interface_combined_stats with sw_if_index=~0 - -*/ -autoreply define want_interface_combined_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want Per Interface Combined Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates - @param num - number of sw_if_indexes - @param sw_ifs - array of sw_if_index -*/ -autoreply define want_per_interface_combined_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; - u32 num; - u32 sw_ifs[num]; - -}; - -/** \brief Want IP4 FIB Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_ip4_fib_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want IP6 FIB Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_ip6_fib_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want IP4 multicast FIB Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_ip4_mfib_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want IP6 multicast FIB Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_ip6_mfib_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want IP4 NBR Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_ip4_nbr_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -/** \brief Want IP6 NBR Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable_disable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_ip6_nbr_stats -{ - u32 client_index; - u32 context; - u32 enable_disable; - u32 pid; -}; - -typeonly manual_print manual_endian define ip4_fib_counter -{ - u32 address; - u8 address_length; - u64 packets; - u64 bytes; -}; - -manual_print manual_endian define vnet_ip4_fib_counters -{ - u32 vrf_id; - u32 count; - vl_api_ip4_fib_counter_t c[count]; -}; - -typeonly manual_print manual_endian define ip4_mfib_counter -{ - u8 source[4]; - u8 group[4]; - u8 group_length; - u64 packets; - u64 bytes; -}; - -manual_print manual_endian define vnet_ip4_mfib_counters -{ - u32 vrf_id; - u32 count; - vl_api_ip4_mfib_counter_t c[count]; -}; - -typeonly manual_print manual_endian define ip4_nbr_counter -{ - u32 address; - u8 link_type; - u64 packets; - u64 bytes; -}; - -/** - * @brief Per-neighbour (i.e. per-adjacency) counters - * @param count The size of the array of counters - * @param sw_if_index The interface the adjacency is on - * @param begin Flag to indicate this is the first set of stats for this - * interface. If this flag is not set the it is a continuation of - * stats for this interface - * @param c counters - */ -manual_print manual_endian define vnet_ip4_nbr_counters -{ - u32 count; - u32 sw_if_index; - u8 begin; - vl_api_ip4_nbr_counter_t c[count]; -}; - -typeonly manual_print manual_endian define ip6_fib_counter -{ - u64 address[2]; - u8 address_length; - u64 packets; - u64 bytes; -}; - -manual_print manual_endian define vnet_ip6_fib_counters -{ - u32 vrf_id; - u32 count; - vl_api_ip6_fib_counter_t c[count]; -}; - -typeonly manual_print manual_endian define ip6_mfib_counter -{ - u8 source[16]; - u8 group[16]; - u8 group_length; - u64 packets; - u64 bytes; -}; - -manual_print manual_endian define vnet_ip6_mfib_counters -{ - u32 vrf_id; - u32 count; - vl_api_ip6_mfib_counter_t c[count]; -}; - -typeonly manual_print manual_endian define ip6_nbr_counter -{ - u64 address[2]; - u8 link_type; - u64 packets; - u64 bytes; -}; - -manual_print manual_endian define vnet_ip6_nbr_counters -{ - u32 count; - u32 sw_if_index; - u8 begin; - vl_api_ip6_nbr_counter_t c[count]; -}; - -/** \brief Simple stats counters structure - @param vnet_counter_type- such as ip4, ip6, punts, etc - @param first_sw_if_index - first sw index in block of index, counts - @param count - number of counters, equal to the number of interfaces in - this stats block - @param data - contiguous block of u64 counters - - vnet_counter_type defined in enums - plural - in vnet/interface.h -*/ -manual_print manual_endian define vnet_interface_simple_counters -{ - u8 vnet_counter_type; - u32 first_sw_if_index; - u32 count; - u64 data[count]; -}; - -/** \brief Combined stats counters structure - @param vnet_counter_type- such as ip4, ip6, punts, etc - @param first_sw_if_index - first sw index in block of index, counts - @param count - number of counters, equal to the number of interfaces in - this stats block - @param data - contiguous block of vlib_counter_t structures - - vnet_counter_type defined in enums - plural - in vnet/interface.h -*/ -manual_print manual_endian define vnet_interface_combined_counters -{ - u8 vnet_counter_type; - u32 first_sw_if_index; - u32 count; - vl_api_vlib_counter_t data[count]; -}; - -/** \brief Simple per interface stats counters structure - @param count - number of elements in message - @param timestamp - u32 vlib timestamp for control plane - @param data[count] - vl_api_vnet_simple_counter_t - -*/ -manual_print manual_endian define vnet_per_interface_simple_counters -{ - u32 count; - u32 timestamp; - vl_api_vnet_simple_counter_t data[count]; -}; - -/** \brief Combined stats counters structure per interface - @param count - number of elements in message - @param timestamp - u32 vlib timestamp for control plane - @param data[count] - vl_api_vnet_combined_counter_t -*/ -manual_print manual_endian define vnet_per_interface_combined_counters -{ - u32 count; - u32 timestamp; - vl_api_vnet_combined_counter_t data[count]; -}; - -/** \brief Request for a single block of summary stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request -*/ -define vnet_get_summary_stats -{ - u32 client_index; - u32 context; -}; - -/** \brief Reply for vnet_get_summary_stats request - @param context - sender context, to match reply w/ request - @param retval - return code for request - @param total_pkts - length of the array must match the length of - the combined counter part of the enum in interface.h - @param total_bytes - length of the array must match the length of - the combined counter part of the enum in interface.h - @param vector_rate - -*/ -define vnet_get_summary_stats_reply -{ - u32 context; - i32 retval; - u64 total_pkts[8]; - u64 total_bytes[8]; - f64 vector_rate; -}; - -/** \brief Get delay between polling statistics - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request -*/ -define stats_get_poller_delay -{ - u32 client_index; - u32 context; -}; - -/** \brief Get delay between polling statistics reply - @param context - sender context, to match reply w/ request - @param retval - return code for request - @param delay - poller delay -*/ -define stats_get_poller_delay_reply -{ - u32 context; - i32 retval; - u32 delay; -}; - -/** \brief Want UDP encap Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_udp_encap_stats -{ - u32 client_index; - u32 context; - u32 enable; - u32 pid; -}; - -/** \brief Stat for one UDP encap object - @param id - The ID of the object, same as passed for the create - @param packets - number of packets sent - @param bytes - number of bytes sent -*/ -typeonly manual_print manual_endian define udp_encap_counter -{ - u32 id; - u64 packets; - u64 bytes; -}; - -manual_print manual_endian define vnet_udp_encap_counters -{ - u32 timestamp; - u32 count; - vl_api_udp_encap_counter_t c[count]; -}; - -/** \brief Want BIER neighbor Stats, register for continuous stats - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param enable - 1 = enable stats, 0 = disable - @param pid - pid of process requesting stats updates -*/ -autoreply define want_bier_neighbor_stats -{ - u32 client_index; - u32 context; - u32 enable; - u32 pid; -}; - -/** \brief Stat for one BIER neighbor object - @param tbl_id - The BIER Table ID the neighbour belongs to. - @param path - The path describing the neighbor (this is the data - given during a BIER route add) - @param packets - number of packets sent - @param bytes - number of bytes sent -*/ -typeonly manual_print manual_endian define bier_neighbor_counter -{ - vl_api_bier_table_id_t tbl_id; - vl_api_fib_path_t path; - u64 packets; - u64 bytes; -}; - -manual_print manual_endian define vnet_bier_neighbor_counters -{ - u32 timestamp; - u32 count; - vl_api_bier_neighbor_counter_t c[count]; -}; - -/* - * Local Variables: - * eval: (c-set-style "gnu") - * End: - */ |