so far only search requests at the remote search interface had been counted.
This was done to protect the privacy of searchers, because counting was not done and published at the own search interface.
This caused that no search requests of robinson peers had been counted, becuase they cannot be counted at remote peer.
This change introduces a distinction of locally done search requests at the local search interface from search requests that are on the local interface but had been submitted from a remote IP without authentication.
Now 3 counters are maintained:
- partial count of remote searches
- total count of local searches on robinson peers from non-authenticated clients
- total count of local searches on robinson peers from localhost or authenticated clients
In the global statistic of search requests now the first two counters of the three cases are added
Because we habe a large number of robinson peers with a large number of remote non-authenticated requests the statistic should show at least three times of the number of search requests.
git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@6696 6c8d7289-2bf4-0310-a012-ef5d649a1542
@ -208,8 +208,9 @@ public final class Switchboard extends serverSwitch {
publicArrayList<QueryParams>remoteSearches;// array of search result properties as HashMaps
publicConcurrentHashMap<String,TreeSet<Long>>localSearchTracker,remoteSearchTracker;// mappings from requesting host to a TreeSet of Long(access time)
publiclongindexedPages=0;
publicdoublerequestedQueries=0d;
publicdoubletotalQPM=0d;
publicintsearchQueriesRobinsonFromLocal=0;// absolute counter of all local queries submitted on this peer from a local or autheticated used
publicintsearchQueriesRobinsonFromRemote=0;// absolute counter of all local queries submitted on this peer from a remote IP without authentication
publicdoublesearchQueriesGlobal=0d;// partial counter of remote queries (1/number-of-requested-peers)
publicTreeMap<byte[],String>clusterhashes;// map of peerhash(String)/alternative-local-address as ip:port or only ip (String) or null if address in seed should be used
peers.mySeed().put(yacySeed.UPTIME,Long.toString(uptime/60));// the number of minutes that the peer is up in minutes/day (moving average MA30)
peers.mySeed().put(yacySeed.LCOUNT,Long.toString(indexSegments.URLCount()));// the number of links that the peer has stored (LURL's)
peers.mySeed().put(yacySeed.NCOUNT,Integer.toString(crawlQueues.noticeURL.size()));// the number of links that the peer has noticed, but not loaded (NURL's)