Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add New Metrics for Call Outcomes and ACK Timeouts
Overview
This PR introduces several new metric counters to improve observability around SIP call processing. The added metrics track:
drachtio_calls_failed
drachtio_calls_successful
drachtio_ack_timeout
These metrics help us monitor and diagnose issues with SIP transactions, including cases where the final ACK is not received after a 200 OK response.
Changes
1. New Metric Definitions in
src/drachtio.h
STATS_COUNTER_FAILED_CALLS
– tracks the number of calls that failed.STATS_COUNTER_SUCCESSFUL_CALLS
– tracks the number of successfully completed calls.STATS_COUNTER_ACK_TIMEOUT
– tracks instances of ACK timeouts.These constants are used with our stats macros (like
STATS_COUNTER_INCREMENT
, etc.) throughout the codebase.2. Metrics Increment for ACK Timeouts in
src/sip-dialog-controller.cpp
STATS_COUNTER_ACK_TIMEOUT
metric is incremented.3. Monitoring and Diagnostics Enhancements
Testing and Verification
By merging this PR, we gain improved visibility into SIP call performance and can quickly pinpoint issues related to ACK timeouts and call failures, thereby enhancing overall system reliability.