Preserve client port in transaction logs#13379
Open
bneradt wants to merge 1 commit into
Open
Conversation
Client source ports could be logged as zero when the live inbound connection was cleared before transaction log marshalling. This obscured the effective client endpoint in access logs. This reads the port from the effective client endpoint retained by HttpSM, keeping it available after connection cleanup.
Contributor
There was a problem hiding this comment.
Pull request overview
This PR fixes a logging correctness issue where the client source port could be recorded as 0 if the live inbound connection was cleared before log marshalling. It does this by sourcing the port from the HttpSM-retained effective client endpoint (t_state.effective_client_addr), which is already used for client address logging.
Changes:
- Update
TransactionLogData::get_client_port()to returnHttpSM::t_state.effective_client_addr.host_order_port()instead of querying the UA transaction’s live connection. - Keep the non-
HttpSMlogging path unchanged (still usesm_non_http_sm_data->m_client_port).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Fixes behavior introduced via #13123
Client source ports could be logged as zero when the live inbound
connection was cleared before transaction log marshalling. This
obscured the effective client endpoint in access logs.
This reads the port from the effective client endpoint retained by
HttpSM, keeping it available after connection cleanup.