[ https://issues.apache.org/jira/browse/SOLR-14566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17153830#comment-17153830 ]
Jason Gerlowski commented on SOLR-14566: ---------------------------------------- There was a good bit of feedback on the PR in the links section above from David, Shalin, Jan, and others. We settled on using a "rid" field with a default value of {{<coordinatorNodeHostname>-<requestCounter>}}. An non-default value can be used by explicitly including the "rid" parameter in your request. The "rid" behavior can be disabled by sending requests with a {{disableRequestId=true}} query param. David brought up that really we should be taking this request-id and recording it using MDC, so that it's recorded on _all_ log messages for a given request. I agreed with him, but deferred on making that change here on grounds of "scope". The MDC approach is more powerful, but also a much larger, more complex change. That's why SOLR-8274 has been stalled out as long as it has, honestly. Rather than let the perfect get in the way of the good, I committed the simpler "rid" approach as-is so that it's available to users while the much cooler MDC approach comes together. > Record "request-id" on coordinator log messages > ----------------------------------------------- > > Key: SOLR-14566 > URL: https://issues.apache.org/jira/browse/SOLR-14566 > Project: Solr > Issue Type: Improvement > Security Level: Public(Default Security Level. Issues are Public) > Reporter: Jason Gerlowski > Assignee: Jason Gerlowski > Priority: Minor > Time Spent: 6h 10m > Remaining Estimate: 0h > > Currently, in SolrCore.java we log each search request that comes through > each core as it is finishing. This includes the path, query-params, QTime, > and status. In the case of a distributed search both the "coordinator" node > and each of the per-shard requests produce a log message. > When Solr is fielding many identical queries, such as those created by a > healthcheck or dashboard, it can be hard when examining logs to link the > per-shard requests with the "cooordinator" request that came in upstream. > One thing that would make this easier is if the {{NOW}} param added to > per-shard requests is also included in the log message from the > "coordinator". While {{NOW}} isn't unique strictly speaking, it often is in > practice, and along with the query-params would allow debuggers to associate > shard requests with coordinator requests a large majority of the time. > An alternative approach would be to create a {{qid}} or {{query-uuid}} when > the coordinator starts its work that can be logged everywhere. This provides > a stronger expectation around uniqueness, but would require UUID generation > on the coordinator, which may be non-negligible work at high QPS (maybe? I > have no idea). It also loses the neatness of reusing data already present on > the shard requests. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org