I've deployed the new metrics to the Torrust Demo tracker.
We are emitting metrics from the:
- UDP Tracker Cerver
- UDP Tracker Core
Some metrics should have the same value. For example, the number of announce requests received. However, they don't match:
UDP tracker Core
udp_tracker_core_connect_requests_received_total{server_binding_ip="0.0.0.0",server_binding_port="6868",server_binding_protocol="udp"} 1414
udp_tracker_core_announce_requests_received_total{server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 9855098
udp_tracker_core_connect_requests_received_total{server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 3085603
udp_tracker_core_scrape_requests_received_total{server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 377400
UDP Tracker Server
udp_tracker_server_requests_received_total{server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 66
udp_tracker_server_requests_banned_total{server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 1
udp_tracker_server_requests_accepted_total{kind="announce",server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 32
udp_tracker_server_requests_accepted_total{kind="connect",server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 19
udp_tracker_server_responses_sent_total{kind="",result="ok",server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 32
udp_tracker_server_responses_sent_total{kind="connect",result="ok",server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 19
udp_tracker_server_errors_total{server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 32
udp_tracker_server_performance_avg_connect_processing_time_ns{server_binding_ip="0.0.0.0",server_binding_port="6969",server_binding_protocol="udp"} 45029
Problems:
udp_tracker_server_requests_received_total is fixed and low compared with any of the "received" counters in the UDP tracker core.
- The UDP tracker server is not generating metrics for the second tracker in port 6868.
Notes:
- It's weird that the server does not track the request, but the requests reach the track core.
It could be related to a bug described here. However, that bug should only affect the counters for sent responses.
I haven't been able to reproduce it locally yet.
How to run a manual test in development
- Run the tracker
- Use the tracker client to make requests
For example:
cargo run -p torrust-tracker-client --bin http_tracker_client announce http://127.0.0.1:7070 443c7602b4fde83d1154d6d9da48808418b181b6 | jq
cargo run -p torrust-tracker-client --bin http_tracker_client scrape http://127.0.0.1:7070 443c7602b4fde83d1154d6d9da48808418b181b6 | jq
cargo run -p torrust-tracker-client --bin udp_tracker_client announce udp://127.0.0.1:6969 443c7602b4fde83d1154d6d9da48808418b181b6 | jq
cargo run -p torrust-tracker-client --bin udp_tracker_client scrape udp://127.0.0.1:6969 443c7602b4fde83d1154d6d9da48808418b181b6 | jq
- Load the metrics
JSON format:
curl "http://127.0.0.1:1212/api/v1/metrics?token=MyAccessToken&format=json" | jq
Prometheus format:
curl "http://127.0.0.1:1212/api/v1/metrics?token=MyAccessToken&format=prometheus" | sort
I've deployed the new metrics to the Torrust Demo tracker.
We are emitting metrics from the:
Some metrics should have the same value. For example, the number of announce requests received. However, they don't match:
UDP tracker Core
UDP Tracker Server
Problems:
udp_tracker_server_requests_received_totalis fixed and low compared with any of the "received" counters in the UDP tracker core.Notes:
It could be related to a bug described here. However, that bug should only affect the counters for sent responses.
I haven't been able to reproduce it locally yet.
How to run a manual test in development
For example:
JSON format:
Prometheus format: