Monitoring
Faucet can be monitored in a number of ways. Both the faucet and gauge services
export instrumentation data via a built-in Prometheus exporter which can be
consumed by Prometheus. By default the Prometheus
exporter is available on port 9302, this can be changed with
Environment variables (FAUCET_PROMETHEUS_PORT
and FAUCET_PROMETHEUS_ADDR
).
Gauge also collects conventional switch statistics (port counters, port state, etc) and can export these to a number of different databases (including Prometheus). For information on configuring gauge see the Gauge configuration section.
Prometheus metrics
Below is a list of the metrics exported by faucet and gauge.
Exported by faucet
Metric |
Type |
Description |
---|---|---|
faucet_pbr_version |
gauge |
Faucet PBR version |
ryu_config |
gauge |
ryu configuration option |
faucet_stack_root_dpid |
gauge |
set to current stack root DPID |
faucet_config_reload_requests_total |
counter |
number of config reload requests |
faucet_config_load_error |
gauge |
1 if last attempt to re/load config failed |
faucet_config_hash |
info |
file hashes for last successful config |
faucet_config_hash_func |
gauge |
algorithm used to compute config hashes |
faucet_config_applied |
gauge |
fraction of DPs that we have tried to apply config to |
faucet_event_id |
gauge |
highest/most recent event ID to be sent |
faucet_config_reload_warm_total |
counter |
number of warm, differences only config reloads executed |
faucet_config_reload_cold_total |
counter |
number of cold, complete reprovision config reloads executed |
of_ignored_packet_ins_total |
counter |
number of OF packet_ins received but ignored from DP (due to rate limiting) |
of_unexpected_packet_ins_total |
counter |
number of OF packet_ins received that are unexpected from DP (e.g. for unknown VLAN) |
of_packet_ins_total |
counter |
number of OF packet_ins received from DP |
of_non_vlan_packet_ins_total |
counter |
number of OF packet_ins received from DP, not associated with a FAUCET VLAN |
of_vlan_packet_ins_total |
counter |
number of OF packet_ins received from DP, associated with a FAUCET VLAN |
of_flowmsgs_sent_total |
counter |
number of OF flow messages (and packet outs) sent to DP |
of_errors_total |
counter |
number of OF errors received from DP |
of_dp_connections_total |
counter |
number of OF connections from a DP |
of_dp_disconnections_total |
counter |
number of OF connections from a DP |
vlan_hosts_learned |
gauge |
number of hosts learned on a VLAN |
port_vlan_hosts_learned |
gauge |
number of hosts learned on a port and VLAN |
vlan_neighbors |
gauge |
number of L3 neighbors on a VLAN (whether resolved to L2 addresses, or not) |
vlan_learn_bans |
gauge |
number of times learning was banned on a VLAN |
faucet_config_table_names |
gauge |
number to names map of FAUCET pipeline tables |
faucet_packet_in_secs |
histogram |
FAUCET packet in processing time |
faucet_valve_service_secs |
histogram |
FAUCET valve service processing time |
bgp_neighbor_uptime |
gauge |
BGP neighbor uptime in seconds |
bgp_neighbor_routes |
gauge |
BGP neighbor route count |
learned_macs |
gauge |
MAC address stored as 64bit number to DP ID, port, VLAN, and n (discrete index) |
port_status |
gauge |
status of switch ports |
port_stack_state |
gauge |
state of stacking on a port |
port_learn_bans |
gauge |
number of times learning was banned on a port |
learned_l2_port |
gauge |
learned port of l2 entries |
port_lacp_role |
gauge |
LACP role of a port |
port_lacp_state |
gauge |
state of LACP on a port |
dp_status |
gauge |
status of datapaths |
dp_root_hop_port |
gauge |
port that leads to stack root DP |
of_dp_desc_stats |
gauge |
DP description (OFPDescStatsReply) |
stack_cabling_errors_total |
counter |
number of cabling errors detected in all FAUCET stacks |
stack_probes_received_total |
counter |
number of stacking messages received |
is_dp_stack_root |
gauge |
bool indicating if dp is stack root |
dp_dot1x_success_total |
counter |
number of successful authentications on dp |
dp_dot1x_failure_total |
counter |
number of authentications attempts failed on dp |
dp_dot1x_logoff_total |
counter |
number of eap-logoff events on dp |
port_dot1x_success_total |
counter |
number of successful authentications on port |
port_dot1x_failure_total |
counter |
number of authentications attempts failed on port |
port_dot1x_logoff_total |
counter |
number of eap-logoff events on port |
lacp_port_id |
gauge |
lacp port ID for for port |
port_stack_state_change_count_total |
counter |
number of changes in port stack state |
port_lacp_state_change_count_total |
counter |
number of changes in port lacp state |
stack_root_change_count_total |
counter |
number of changes in stack root |
Exported by gauge
Metric |
Type |
Description |
---|---|---|
faucet_pbr_version |
gauge |
Faucet PBR version |
dp_status |
gauge |
status of datapaths |
of_port_tx_packets |
gauge |
|
of_port_rx_packets |
gauge |
|
of_port_tx_bytes |
gauge |
|
of_port_rx_bytes |
gauge |
|
of_port_tx_dropped |
gauge |
|
of_port_rx_dropped |
gauge |
|
of_port_tx_errors |
gauge |
|
of_port_rx_errors |
gauge |
|
of_port_reason |
gauge |
|
of_port_state |
gauge |
|
of_port_curr_speed |
gauge |
|
of_port_max_speed |
gauge |
|
of_meter_flow_count |
gauge |
|
of_meter_byte_in_count |
gauge |
|
of_meter_packet_in_count |
gauge |
|
of_meter_byte_band_count |
gauge |
|
of_meter_packet_band_count |
gauge |