In 6.5.1, the intra-cluster requests are POST, which makes them easy to distinguish in the request logs. Also, the intra-cluster requests go to a specific core instead of to the collection. So we use the request logs and grep out the GET lines.
We are considering fronting every Solr process with a local nginx server. That will allow us to limit concurrent connections. It will also give us a log of just the client requests. wunder Walter Underwood wun...@wunderwood.org http://observer.wunderwood.org/ (my blog) > On Dec 5, 2017, at 4:25 AM, Matzdorf, Stefan, Springer SBM DE > <stefan.matzd...@springer.com> wrote: > > To be more precisely and provide some more details, i tried to simplify the > problem by using the Solr-examples that were delivered with the solr.... > So i started bin/solr -e cloud, using 2 nodes, 2 shards and replication of 2. > > To understand the following, it might be important to know, which ports are > used: > node 1: 8983 (leader for shard1 and shard2) > node 2: 7574 (no leader at all) > > > In this example i searched for 3 terms in the following order: first on node > 1 (8983 - leader) and then on node 2 (7574). > > Sample1 (q=test): > http://localhost:8983/solr/gettingstarted/select?indent=on&q=test&wt=json > > produced logs: > 1) [gettingstarted_shard1_replica_n1] webapp=/solr path=/select > params={df=_text_&distrib=false&fl=id&fl=score&shards.purpose=4&start=0&fsv=true&shard.url=http://127.0.1.1:7574/solr/gettingstarted_shard1_replica_n1/|http://127.0.1.1:8983/solr/gettingstarted_shard1_replica_n2/&rows=10&version=2&q=test&NOW=1512474523045&isShard=true&wt=javabin} > hits=0 status=0 QTime=1 > 2) [gettingstarted_shard2_replica_n4] webapp=/solr path=/select > params={df=_text_&distrib=false&fl=id&fl=score&shards.purpose=4&start=0&fsv=true&shard.url=http://127.0.1.1:7574/solr/gettingstarted_shard2_replica_n4/|http://127.0.1.1:8983/solr/gettingstarted_shard2_replica_n6/&rows=10&version=2&q=test&NOW=1512474523045&isShard=true&wt=javabin} > hits=0 status=0 QTime=1 > > > > http://localhost:7574/solr/gettingstarted/select?indent=on&q=test&wt=json > > produced logs: > 1) [gettingstarted_shard1_replica_n1] webapp=/solr path=/select > params={q=test&indent=on&wt=json} hits=0 status=0 QTime=17 > > ############################################################################################################################## > ############################################################################################################################## > > Sample2 (q=foo): > http://localhost:8983/solr/gettingstarted/select?indent=on&q=foo&wt=json > > produced logs: > 1) [gettingstarted_shard1_replica_n1] webapp=/solr path=/select > params={df=_text_&distrib=false&fl=id&fl=score&shards.purpose=4&start=0&fsv=true&shard.url=http://127.0.1.1:7574/solr/gettingstarted_shard1_replica_n1/|http://127.0.1.1:8983/solr/gettingstarted_shard1_replica_n2/&rows=10&version=2&q=foo&NOW=1512474569299&isShard=true&wt=javabin} > hits=0 status=0 QTime=0 > > > > http://localhost:7574/solr/gettingstarted/select?indent=on&q=foo&wt=json > > produced logs: > 1) [gettingstarted_shard2_replica_n4] webapp=/solr path=/select > params={q=foo&indent=on&wt=json} hits=0 status=0 QTime=13 > > ############################################################################################################################## > ############################################################################################################################## > > Sample3 (q=test) NOTE- its the same query as in sample1: > http://localhost:8983/solr/gettingstarted/select?indent=on&q=test&wt=json > > produced logs: > 1) [gettingstarted_shard2_replica_n4] webapp=/solr path=/select > params={df=_text_&distrib=false&fl=id&fl=score&shards.purpose=4&start=0&fsv=true&shard.url=http://127.0.1.1:7574/solr/gettingstarted_shard2_replica_n4/|http://127.0.1.1:8983/solr/gettingstarted_shard2_replica_n6/&rows=10&version=2&q=test&NOW=1512474643732&isShard=true&wt=javabin} > hits=0 status=0 QTime=0 > > > http://localhost:7574/solr/gettingstarted/select?indent=on&q=test&wt=json > > produced logs: > 1) [gettingstarted_shard2_replica_n4] webapp=/solr path=/select > params={df=_text_&distrib=false&fl=id&fl=score&shards.purpose=4&start=0&fsv=true&shard.url=http://127.0.1.1:7574/solr/gettingstarted_shard2_replica_n4/|http://127.0.1.1:8983/solr/gettingstarted_shard2_replica_n6/&rows=10&version=2&q=test&NOW=1512474627254&isShard=true&wt=javabin} > hits=0 status=0 QTime=0 > 2) [gettingstarted_shard1_replica_n1] webapp=/solr path=/select > params={q=test&indent=on&wt=json} hits=0 status=0 QTime=13 > > ############################################################################################################################## > ############################################################################################################################## > > Sample4 (q=baa): > http://localhost:8983/solr/gettingstarted/select?indent=on&q=baa&wt=json > > produced logs: > 1) [gettingstarted_shard2_replica_n4] webapp=/solr path=/select > params={df=_text_&distrib=false&fl=id&fl=score&shards.purpose=4&start=0&fsv=true&shard.url=http://127.0.1.1:7574/solr/gettingstarted_shard2_replica_n4/|http://127.0.1.1:8983/solr/gettingstarted_shard2_replica_n6/&rows=10&version=2&q=baa&NOW=1512474709460&isShard=true&wt=javabin} > hits=0 status=0 QTime=0 > > > http://localhost:7574/solr/gettingstarted/select?indent=on&q=baa&wt=json > > produced logs: > 1) [gettingstarted_shard1_replica_n1] webapp=/solr path=/select > params={q=baa&indent=on&wt=json} hits=0 status=0 QTime=12 > > > > > Sorry for this messy logs. > I'll try to sumarize.... > > For queries against the node 1, the leading node, i never got those "short > logs". just containing what i was querying. Instead i recieve logs containing > all these sharding information. Sometimes 2 equivalent ones (see sample 1) > and sometimes just one log (sample 2-4). Mentioned that i got different logs > for the same query/request (sample1 vs sample3). > > For queries against the node 2, not leading anything, i got those "short > logs" everytime. In addition to that, i also recievie sometimes an additional > log, containing these sharding information (sample 3). > > > My assumptions: > afaik, the queried shard is choosen randomly, that would explain why i got > different amount of logs for same queries/request. But what i everytime the > same, is that the "non-leading node" is the only one that returns the logs i > want. I tried some other example (that i do not write down here), and i saw > the same result. different amount of logs, that look spreaded randomly, but i > never got those "short-logs" from the leading node, just from the > "non-leading node". > > > So the idea of trying to find the difference between logs is not that > suitable, because sometimes they aren't present (facing the leading node). > > So the question still reminds: how could i log the incoming request in a > proper way? > > > I hope that my problem was clearly described, and someone got an idea whats > going on here.