Metriky pro zprostředkovatele MQTT
Zprostředkovatel MQTT poskytuje sadu metrik pozorovatelnosti, které můžete použít k monitorování a analýze stavu vašeho řešení. Tento článek popisuje dostupné metriky pro zprostředkovatele MQTT.
Informace o konfiguraci možností pro tyto metriky najdete v tématu Konfigurace nastavení diagnostiky zprostředkovatele MQTT.
Vlastnost uživatele MQTT Connect metriccategory
Když se klient připojí ke zprostředkovateli, může obsahovat vlastnost uživatele volanou metriccategory
v paketu pro připojení. Zprostředkovatel pak označí všechny metriky řízené relacemi (například publikování a přihlášení k odběru) tímto způsobem metriccategory
category
.
Pokud se například sonda samokontroly připojí metriccategory=broker_selftest
k , zprostředkovatele označí všechny metriky z těchto relací pomocí category=broker_selftest
.
Tato funkce pomáhá řídicím panelům zobrazovat zdroje provozu bez problémů s vysokou kardinalitou při označování metrik témat.
Relace bez značky metriccategory
category=uncategorized
.
Metriky zasílání zpráv
Všechny metriky zahrnují hostname
značku, která identifikuje pod, který metriky vygeneroval. Značky uvedené v popisech jednotlivých metrik se přidají k této značce.
Metrický | Popis | Značky |
---|---|---|
aio_broker_publishes_received | Na front-endu tato metrika představuje, kolik příchozích paketů publikování se přijímá od klientů. U back-endu tato metrika představuje, kolik interních zpráv se odesílá z front-endových uzlů. | category |
aio_broker_publishes_sent | Na front-endu tato metrika představuje, kolik odchozích paketů publikování se odesílá klientům. Pokud se ke stejnému tématu přihlašuje více klientů, počítá tato metrika každou odeslanou zprávu, i když mají stejnou datovou část. Tento počet nepočítá pakety ack. U back-endu tato metrika představuje, kolik interních zpráv se odesílá do front-endových uzlů. | category |
aio_broker_payload_bytes_received | Součet datových částí všech přijatých publikování. Tento součet nezahrnuje velikost vlastností ani samotné publikování paketů. | category |
aio_broker_payload_bytes_sent | Součetdatovýchchchchch Tento součet nezahrnuje velikost vlastností ani samotné publikování paketů. | category |
aio_broker_authentication_successes | Tato metrika spočítá počet úspěšných žádostí o ověření. | category |
aio_broker_authentication_failures | Tato metrika počítá počet neúspěšných žádostí o ověření. Pro bez chybový ověřovací server aio_broker_authentication_successes + aio_broker_authentication_failures = aio_broker_publishes_received = publishes_sent |
category |
aio_broker_authentication_deny | Tato metrika počítá počet zamítnutých žádostí o ověření. | category |
aio_broker_authorization_allow | Tato metrika počítá žádosti o úspěšnou autorizaci. Tato metrika by měla být vždy menší než nebo rovna aio_broker_authentication_successes . |
category |
aio_broker_authorization_deny | Tato metrika počítá odepřené žádosti o autorizaci. Tato metrika by měla být vždy menší než nebo rovna aio_broker_authentication_successes . |
category |
aio_broker_qos0_messages_dropped | Tato metrika počítá počet vyřazených zpráv QoS0 z jakéhokoli důvodu. direction Kategorie je buď incoming nebo outgoing . |
category , direction |
aio_broker_backpressure_packets_rejected | Tato metrika počítá počet odmítnutých paketů kvůli zpětnému tlaku. Paket se odmítne, pokud je systém v kapacitě 97 %. | |
aio_broker_store_retained_messages | Tato metrika počítá, kolik uchovávaných zpráv je uloženo ve zprostředkovateli. | |
aio_broker_store_retained_bytes | Tato metrika počítá, kolik bajtů se ukládá prostřednictvím uchovávaných zpráv ve zprostředkovateli. | |
aio_broker_store_will_messages | Tato metrika počítá, kolik zpráv bude uloženo ve zprostředkovateli. | |
aio_broker_store_will_bytes | Tato metrika počítá, kolik bajtů se ukládá prostřednictvím zpráv zprostředkovatele. | |
aio_broker_number_of_routes | Spočítá počet tras. | |
aio_broker_connect_route_replication_correctness | Popisuje, jestli se požadavek na připojení z klienta samoobslužného testování správně replikuje na konkrétní trase. | |
aio_broker_connect_latency_route_ms | Popisuje časový interval mezi klientem samoobslužného testování, který odesílá paket CONNECT a přijímá paket CONNACK. Tato metrika se generuje pro každou trasu. Metrika se vygeneruje pouze v případě, že je připojení úspěšné. | |
aio_broker_connect_latency_last_value_ms | Odhadovaný počet p99 z connect_latency_route_ms . |
|
aio_broker_connect_latency_mu_ms | Střední hodnota connect_latency_route_ms . |
|
aio_broker_connect_latency_sigma_ms | Směrodatná odchylka connect_latency_route_ms . |
|
aio_broker_subscribe_route_replication_correctness | Popisuje, jestli se žádost o přihlášení k odběru z klienta samoobslužného testování správně replikuje na konkrétní trase. | |
aio_broker_subscribe_latency_route_ms | Popisuje časový interval mezi klientem samoobslužného testování, který odesílá paket SUBSCRIBE a přijímá paket SUBACK. Tato metrika se generuje pro každou trasu. Metrika se vygeneruje jenom v případě, že je přihlášení k odběru úspěšné. | |
aio_broker_subscribe_latency_last_value_ms | Odhadovaný počet p99 z subscribe_latency_route_ms . |
|
aio_broker_subscribe_latency_mu_ms | Střední hodnota subscribe_latency_route_ms . |
|
aio_broker_subscribe_latency_sigma_ms | Směrodatná odchylka subscribe_latency_route_ms . |
|
aio_broker_unsubscribe_route_replication_correctness | Popisuje, jestli se po konkrétní trase správně replikuje žádost o odhlášení odběru od odběru klienta samoobslužného testování. | |
aio_broker_unsubscribe_latency_route_ms | Popisuje časový interval mezi samotestovacím klientem, který odesílá paket UNSUBSCRIBE a přijímá paket UNSUBACK. Tato metrika se generuje pro každou trasu. Metrika se vygeneruje jenom v případě, že odběr odběru proběhl úspěšně. | |
aio_broker_unsubscribe_latency_last_value_ms | Odhadovaný počet p99 z unsubscribe_latency_route_ms . |
|
aio_broker_unsubscribe_latency_mu_ms | Střední hodnota unsubscribe_latency_route_ms . |
|
aio_broker_unsubscribe_latency_sigma_ms | Směrodatná odchylka subscribe_latency_route_ms . |
|
aio_broker_publish_route_replication_correctness | Popisuje, jestli se po konkrétní trase správně replikuje žádost o odhlášení odběru od odběru klienta samoobslužného testování. | |
aio_broker_publish_latency_route_ms | Popisuje časový interval mezi klientem samoobslužného testování, který odesílá paket PUBLISH a přijímá paket PUBACK. Tato metrika se generuje pro každou trasu. Metrika se vygeneruje jenom v případě, že publikování proběhlo úspěšně. | |
aio_broker_publish_latency_last_value_ms | Odhadovaný počet p99 z publish_latency_route_ms . |
|
aio_broker_publish_latency_mu_ms | Střední hodnota publish_latency_route_ms . |
|
aio_broker_publish_latency_sigma_ms | Směrodatná odchylka publish_latency_route_ms . |
|
aio_broker_payload_check_latency_last_value_ms | Odhadovaná kontrola latence poslední hodnoty p99 | |
aio_broker_payload_check_latency_mu_ms | Střední hodnota kontroly latence. | |
aio_broker_payload_check_latency_sigma_ms | Směrodatná odchylka latence datové části. | |
aio_broker_payload_check_total_messages_lost | Počet ztracených zpráv datové části | |
aio_broker_payload_check_total_messages_received | Počet přijatých zpráv. | |
aio_broker_payload_check_total_messages_sent | Počet odeslaných zpráv. | |
aio_broker_ping_correctness | Popisuje, jestli příkaz ping z klienta samoobslužného testování funguje správně. | |
aio_broker_ping_latency_last_value_ms | Odhadovaná operace ping s poslední hodnotou p99. | |
aio_broker_ping_latency_mu_ms | Střední hodnota kontroly ping. | |
aio_broker_ping_latency_route_ms | Latence příkazu ping v milisekundách pro konkrétní trasu. | |
aio_broker_ping_latency_sigma_ms | Směrodatná odchylka latence operace ping. | |
aio_broker_publishes_processed_count | Popisuje zpracovaný počet publikovaných zpráv. | |
aio_broker_publishes_received_per_second | Spočítá počet přijatých publikovaných zpráv za sekundu. | |
aio_broker_publishes_sent_per_second | Spočítá počet přijatých zpráv za sekundu. |
Metriky stavu operátora zprostředkovatele
Tato sada metrik sleduje stav kardinality zprostředkovatele. Každá požadovaná metrika se spáruje s hlášenou metrikou, aby se zobrazil aktuální stav. Tyto metriky označují počet podů, které jsou v pořádku, z pohledu zprostředkovatele, které se můžou lišit od sestav Kubernetes.
Pokud se například back-endový uzel restartuje, ale znovu se nepřipojí ke svému řetězu, může dojít k nesrovnalostem v sestavách stavu. Kubernetes může pod hlásit jako v pořádku, zatímco zprostředkovatel ho hlásí jako nefunkční, protože nefunguje správně.
Požadovaná metrika | Hlášená metrika |
---|---|
aio_broker_backend_replicas | aio_broker_backend_replicas_current |
aio_broker_backend_vertical_chain | aio_broker_backend_vertical_chain_current |
aio_broker_frontend_replicas | aio_broker_frontend_replicas_current |
Poznámka:
backend_vertical_chain_current
hlásí počet uzlů, které jsou v pořádku, v nejméně zdravém řetězci. Pokud je například očekávaná délka řetězce 4 a tři řetězy mají 4 uzly v pořádku, zatímco jeden řetězec má pouze 2 uzly v pořádku, backend_vertical_chain_current
hlásí 2.
Metriky připojení a předplatného
Tyto metriky poskytují pozorovatelnost připojení a předplatných na zprostředkovateli.
Metrický | Popis | Značky |
---|---|---|
aio_broker_total_sessions | Na front-endu a zprostředkovateli s jedním uzlem tato metrika představuje, kolik relací klientů existuje. Tento počet nezahrnuje odpojené trvalé relace, protože se klient může znovu připojit k jinému front-endovému uzlu. U back-endu tato metrika představuje jeho připojení k ostatním uzlům ve svém řetězu. U operátoru tato metrika představuje, kolik front-endových a back-endových uzlů je připojených. Pro ověřovací server představuje tato metrika, kolik front-endových pracovních procesů je připojených (1 na front-end na vlákno). | mqtt_version : [v3/v5] Značky pouze back-endového uzlu: is_tail : [true/false] chain_id : [n] |
aio_broker_store_total_sessions | Tato metrika představuje, kolik relací je v back-endovém řetězci. Back-endové uzly ve stejném řetězci by měly hlásit stejný počet relací a součet každého řetězce by měl odpovídat součtu total_sessions front-endu. | is_persistent : [true/false] is_tail : [true/false] chain_id : [n] |
aio_broker_connected_sessions | Stejné jako aio_broker_total_sessions relace s výjimkou pouze relací, které mají aktivní připojení. |
|
aio_broker_store_connected_sessions | Stejné jako aio_broker_store_total_sessions relace s výjimkou pouze relací, které mají aktivní připojení. Pokud is_persistent je false, měl by se tento počet shodovat s celkovými relacemi. |
|
aio_broker_total_subscriptions | Na front-endu tato metrika představuje, kolik předplatných aktuálně připojených relací má. Tento počet nezahrnuje odpojené trvalé relace, protože se klient může znovu připojit k jinému front-endovému uzlu. V operátoru tato metrika představuje front-endové a back-endové uzly. Pro ověřovací server představuje tato metrika, kolik front-endových pracovních procesů je připojených (1 na front-end na vlákno). | |
aio_broker_store_total_subscriptions | Tato metrika představuje, kolik předplatných je v back-endovém řetězci. Back-endové uzly ve stejném řetězci by měly hlásit stejný počet odběrů. Tento počet nemusí nutně odpovídat front-endu total_subscriptions , protože tato metrika sleduje také odpojené trvalé relace. |
Metriky úložiště stavů
Tato sada metrik sleduje celkový stav úložiště stavů.
Metrický | Popis | Značky |
---|---|---|
aio_broker_state_store_deletions | Tato metrika spočítá počet přijatých žádostí o klíč odstranění, včetně úspěšných odstranění i chyb. | |
aio_broker_state_store_insertions | Tato metrika spočítá počet přijatých žádostí o vložení nového klíče, včetně úspěšných vložení i chyb. | |
aio_broker_state_store_keynotify_requests | Tato metrika počítá počet žádostí o monitorování přijatých změn klíčů (KEYNOTIFY), včetně úspěšných úprav i chyb. | |
aio_broker_state_store_modifications | Tato metrika spočítá počet přijatých změn požadavků na klíč, včetně úspěšných úprav i chyb. | |
aio_broker_state_store_notifications_sent | Tato metrika spočítá počet oznámení zpráv, které úložiště stavů odešle, když se změní hodnota klíče a klient je registrován prostřednictvím keyNOTIFY. | |
aio_broker_state_store_retrievals | Tato metrika spočítá počet přijatých požadavků na načtení hodnoty klíče, včetně úspěšných načtení i chyb. |
Metriky vyrovnávací paměti zpráv založené na disku
Tyto metriky poskytují pozorovatelnost vyrovnávací paměti zpráv založené na disku.
Metrický | Popis | Značky |
---|---|---|
aio_broker_buffer_pool_used_percent | Hlásí procento použité vyrovnávací paměti pro jeden front-endový nebo back-endový fond vyrovnávací paměti. | name |
aio_broker_disk_transfers_completed | Zaznamenává počet přenosů disků dokončených na daném back-endovém podu. Sleduje celkový počet publikování přenesených z fondu vyrovnávací paměti na disk. | |
aio_broker_disk_transfers_failed | Hlásí počet přenosů disků, které selhaly na daném back-endovém podu. |
Poznámka:
Pouze některé fondy back-endových vyrovnávacích pamětí, konkrétně dynamické fondy s názvem čtenář, používají funkci vyrovnávací paměti zpráv založené na disku. Tyto fondy ukládají fronty zpráv odběratele a přenesou prvky na disk, pokud využití překročí 75 %.
Metriky obnovení selhání
Metrický | Popis |
---|---|
aio_broker_store_transfer_batch_receiver_message_count | Tato metrika hlásí počet zpráv přijatých příjemcem přenosu úložiště. Tento počet by se měl rovnat počtu zpráv odeslaných odesílatelem přenosu z obchodu. |
aio_broker_store_transfer_batch_sender_transfer_bytes | Tato metrika hlásí počet bajtů odeslaných odesílatelem přenosu úložiště. |
aio_broker_store_transfer_batch_sender_message_count | Tato metrika hlásí počet zpráv odeslaných odesílatelem přenosu z obchodu. |
aio_broker_store_transfer_ack_event_receiver_message_count | Tato metrika hlásí počet zpráv událostí ack přijatých příjemcem přenosu úložiště. Tento počet by se měl rovnat počtu zpráv událostí ack odesílaných odesílatelem přenosu úložiště. |
aio_broker_store_transfer_ack_event_sender_message_count | Tato metrika hlásí počet zpráv událostí ack odesílaných odesílatelem přenosu úložiště. |
aio_broker_store_transfer_ack_event_sender_transfer_bytes | Tato metrika hlásí počet bajtů odeslaných odesílatelem přenosu úložiště pro události ack. |
aio_broker_store_transfer_patch_tracker_receiver_message_count | Tato metrika hlásí počet zpráv sledování oprav přijatých příjemcem přenosu úložiště. Tento počet by se měl rovnat počtu zpráv sledování oprav odeslaných odesílatelem přenosu úložiště. |
aio_broker_store_transfer_patch_tracker_sender_message_count | Tato metrika hlásí počet zpráv sledování oprav odeslaných odesílatelem přenosu úložiště. |
Metriky pro vývojáře
Tyto metriky jsou užitečné pro ladění vývojářů.
Metrický | Popis |
---|---|
aio_broker_patch_tracker_held_patches | Tato metrika hlásí, kolik oprav se aktuálně nachází v uzlu v řetězu. |
aio_broker_ack_handler_pending_transactions | Tato metrika hlásí, kolik transakcí aktuálně čeká v obslužné rutině ack. |
aio_broker_client_connected | Tato metrika hlásí, kolik klientů je připojených. |
aio_broker_client_disconnected | Tato metrika hlásí, kolik klientů je odpojeno. |
aio_broker_client_removed | Tato metrika hlásí, kolik klientů se odebere. |
Související obsah
- Nakonfigurujte nastavení diagnostiky zprostředkovatele MQTT.
- Konfigurace pozorovatelnosti