#[non_exhaustive]pub struct Counters {Show 21 fields
pub address_length_drops: u64,
pub global_broadcast_dadr_drops: u64,
pub broadcast_pdu_type_drops: u64,
pub group_dadr_drops: u64,
pub malformed: u64,
pub bad_messages: u64,
pub unknown_port: u64,
pub hop_count_drops: u64,
pub denied: u64,
pub unroutable_rejects: u64,
pub rejects: u64,
pub solicitations: u64,
pub write_failures: u64,
pub egress_too_long: u64,
pub refused: u64,
pub undrained: u64,
pub busy_announced: u64,
pub available_announced: u64,
pub duplicate_drops: u64,
pub not_next_hop: u64,
pub originated: u64,
}Expand description
What the hosted router’s engine has counted since the router started:
what it dropped, sent and was refused. Each total saturates at
u64::MAX. They never change a decision, and name no peer.
It is #[non_exhaustive], so a new count isn’t a breaking change.
Outside this crate, build one from Counters::default() and set its
fields.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.address_length_drops: u64Frames refused because the link source, the DLEN or the SLEN was
past MAX_MAC_LEN (#1141,
#1198).
global_broadcast_dadr_drops: u64Frames dropped for a DADR beside DNET 0xFFFF (#1379).
broadcast_pdu_type_drops: u64Broadcasts dropped for carrying an APDU other than an Unconfirmed-Request (#1491).
group_dadr_drops: u64Frames dropped for a DADR that is a group address on its delivery port: an APDU other than an Unconfirmed-Request, a network message, or anything for a group the port refuses (#1504, #1677). An Unconfirmed-Request sent as the port’s broadcast instead isn’t counted.
malformed: u64Frames that didn’t parse as an NPDU for any other reason.
bad_messages: u64Network messages whose data or addressing the router refused.
unknown_port: u64Frames that came on a port the router doesn’t have, or whose route names one.
hop_count_drops: u64Relays not sent because the hop count had run out.
denied: u64Protected network messages the control policy refused.
unroutable_rejects: u64Received rejects that were neither for this router nor routable.
rejects: u64Rejects this router queued.
solicitations: u64Who-Is-Router searches for unknown networks queued.
write_failures: u64Outputs that couldn’t be written: longer than the scratch, or with a field no NPDU may carry, such as an SNET of 0.
egress_too_long: u64Sends left out because their egress port can’t carry them: by the router’s own check, or refused by the port’s transport as too long, at once or later.
refused: u64Sends a port reported refused, at once or later.
undrained: u64Actions dropped because a call came before they were polled.
busy_announced: u64Router-Busy announcements started for a clogged port, repeats
included (RouterOptions::congestion, #1697).
available_announced: u64Router-Available announcements started for a port that drained (#1697).
duplicate_drops: u64Global broadcasts dropped as repeats
(RouterOptions::duplicates, #1698).
not_next_hop: u64Networks a received reject or flow-control message named whose
learned route goes through another router, left unchanged
(RouterOptions::next_hop_rejects, #1698).
originated: u64Requests the router’s own application sent through the engine
(BACnetRouter::originate, #1699).