|
FastMM C++ API 0.6.0
Public headers, tier 1 and tier 2
|
Snapshot for the stats line; every field is a plain counter so it can be copied out from the control thread (the venue publishes it through a Seqlocked). More...
#include <fastmm/venues/venue.hpp>
Public Attributes | |
| ChannelState | md = ChannelState::Down |
| ChannelState | user = ChannelState::Down |
| ChannelState | order = ChannelState::Down |
| std::uint32_t | books_synced = 0 |
| std::uint32_t | books_total = 0 |
| std::uint64_t | md_messages = 0 |
| std::uint64_t | md_malformed = 0 |
| std::uint64_t | md_dropped = 0 |
| ring overflow | |
| std::uint64_t | resyncs = 0 |
| std::uint64_t | orders_sent = 0 |
| std::uint64_t | cancels_sent = 0 |
| std::uint64_t | replaces_sent = 0 |
| std::uint64_t | order_events = 0 |
| std::uint64_t | order_send_failures = 0 |
| std::uint64_t | shadows = 0 |
| order shadows held: orders working, in flight, or not yet swept | |
| std::uint64_t | shadows_swept |
| order shadows a reconciliation proved dead (lost terminal events) | |
| std::uint64_t | shadows_refused = 0 |
| orders not sent: no room for a shadow (OrderTableFull) | |
| std::uint64_t | rest_requests = 0 |
| std::uint64_t | rest_errors = 0 |
| std::uint64_t | rate_limit_cooldowns = 0 |
| std::uint64_t | refused_weight = 0 |
| Orders and replaces the connector's rate limiter refused (VenueRateLimit, never sent), by the limit that refused them (RateLimiter::check): the IP's request weight, the order-count windows of up to 10 s, up to a minute and longer (the day), and a pause (429, 418). | |
| std::uint64_t | refused_orders_10s = 0 |
| std::uint64_t | refused_orders_1m = 0 |
| std::uint64_t | refused_orders_1d = 0 |
| std::uint64_t | refused_paused = 0 |
| std::int64_t | clock_offset_ms = 0 |
| venue - local | |
| std::uint64_t | reconnects = 0 |
| std::uint64_t | executions_fetched = 0 |
| trade-history rows replayed into the order sink | |
| std::uint64_t | execution_queries = 0 |
| std::uint64_t | execution_query_errors = 0 |
| a reconciliation that could not be made exact | |
| std::uint64_t | funding_fetched = 0 |
| funding payments replayed from the venue | |
| std::int64_t | last_md_rx_ns = 0 |
| reactor clock | |
| WireLatencyStats | wire_tick_to_trade |
| Network-thread order latency (wire_latency.hpp), cumulative for the session. | |
| WireLatencyStats | order_encode |
| JSON encoding + signing. | |
| WireLatencyStats | order_send |
| WebSocket write / REST request call. | |
| WireLatencyWindow | wire_1m |
| the same three over the last minute (60-70 s) | |
| WireLatencyWindow | wire_1h |
| and over the last hour (60-70 min) | |
| VenueFeedStatus | feed |
| multicast venues only | |
Snapshot for the stats line; every field is a plain counter so it can be copied out from the control thread (the venue publishes it through a Seqlocked).
| ChannelState fastmm::venues::VenueStatus::md = ChannelState::Down |
| ChannelState fastmm::venues::VenueStatus::user = ChannelState::Down |
| ChannelState fastmm::venues::VenueStatus::order = ChannelState::Down |
| std::uint32_t fastmm::venues::VenueStatus::books_synced = 0 |
| std::uint32_t fastmm::venues::VenueStatus::books_total = 0 |
| std::uint64_t fastmm::venues::VenueStatus::md_messages = 0 |
| std::uint64_t fastmm::venues::VenueStatus::md_malformed = 0 |
| std::uint64_t fastmm::venues::VenueStatus::md_dropped = 0 |
ring overflow
| std::uint64_t fastmm::venues::VenueStatus::resyncs = 0 |
| std::uint64_t fastmm::venues::VenueStatus::orders_sent = 0 |
| std::uint64_t fastmm::venues::VenueStatus::cancels_sent = 0 |
| std::uint64_t fastmm::venues::VenueStatus::replaces_sent = 0 |
| std::uint64_t fastmm::venues::VenueStatus::order_events = 0 |
| std::uint64_t fastmm::venues::VenueStatus::order_send_failures = 0 |
| std::uint64_t fastmm::venues::VenueStatus::shadows = 0 |
order shadows held: orders working, in flight, or not yet swept
| std::uint64_t fastmm::venues::VenueStatus::shadows_swept |
order shadows a reconciliation proved dead (lost terminal events)
| std::uint64_t fastmm::venues::VenueStatus::shadows_refused = 0 |
orders not sent: no room for a shadow (OrderTableFull)
| std::uint64_t fastmm::venues::VenueStatus::rest_requests = 0 |
| std::uint64_t fastmm::venues::VenueStatus::rest_errors = 0 |
| std::uint64_t fastmm::venues::VenueStatus::rate_limit_cooldowns = 0 |
| std::uint64_t fastmm::venues::VenueStatus::refused_weight = 0 |
Orders and replaces the connector's rate limiter refused (VenueRateLimit, never sent), by the limit that refused them (RateLimiter::check): the IP's request weight, the order-count windows of up to 10 s, up to a minute and longer (the day), and a pause (429, 418).
| std::uint64_t fastmm::venues::VenueStatus::refused_orders_10s = 0 |
| std::uint64_t fastmm::venues::VenueStatus::refused_orders_1m = 0 |
| std::uint64_t fastmm::venues::VenueStatus::refused_orders_1d = 0 |
| std::uint64_t fastmm::venues::VenueStatus::refused_paused = 0 |
| std::int64_t fastmm::venues::VenueStatus::clock_offset_ms = 0 |
venue - local
| std::uint64_t fastmm::venues::VenueStatus::reconnects = 0 |
| std::uint64_t fastmm::venues::VenueStatus::executions_fetched = 0 |
trade-history rows replayed into the order sink
| std::uint64_t fastmm::venues::VenueStatus::execution_queries = 0 |
| std::uint64_t fastmm::venues::VenueStatus::execution_query_errors = 0 |
a reconciliation that could not be made exact
| std::uint64_t fastmm::venues::VenueStatus::funding_fetched = 0 |
funding payments replayed from the venue
| std::int64_t fastmm::venues::VenueStatus::last_md_rx_ns = 0 |
reactor clock
| WireLatencyStats fastmm::venues::VenueStatus::wire_tick_to_trade |
Network-thread order latency (wire_latency.hpp), cumulative for the session.
The ns percentiles need a calibration source (Venue::set_tsc_calibration_source); counts do not. inbound receive (t0_cycles) -> send call returned
| WireLatencyStats fastmm::venues::VenueStatus::order_encode |
JSON encoding + signing.
| WireLatencyStats fastmm::venues::VenueStatus::order_send |
WebSocket write / REST request call.
| WireLatencyWindow fastmm::venues::VenueStatus::wire_1m |
the same three over the last minute (60-70 s)
| WireLatencyWindow fastmm::venues::VenueStatus::wire_1h |
and over the last hour (60-70 min)
| VenueFeedStatus fastmm::venues::VenueStatus::feed |
multicast venues only