This commit is contained in:
luccioman 2017-02-20 10:48:44 +01:00
commit 3475d8c1a9
4 changed files with 25 additions and 16 deletions

View File

@ -75,9 +75,9 @@ public final class timeline_p {
// get a time period
Date fromDate = new Date(0);
Date toDate = new Date();
try {fromDate = GenericFormatter.SHORT_SECOND_FORMATTER.parse(post.get("from", "20031215182700"), 0).getTime();} catch (ParseException e) {}
try {toDate = GenericFormatter.SHORT_SECOND_FORMATTER.parse(post.get("to", GenericFormatter.SHORT_SECOND_FORMATTER.format(new Date())), 0).getTime();} catch (ParseException e) {}
try {fromDate = GenericFormatter.SHORT_SECOND_FORMATTER.parse(post.get("from", GenericFormatter.SHORT_SECOND_FORMATTER.format(fromDate)), 0).getTime();} catch (ParseException e) {}
try {toDate = GenericFormatter.SHORT_SECOND_FORMATTER.parse(post.get("to", GenericFormatter.SHORT_SECOND_FORMATTER.format(toDate)), 0).getTime();} catch (ParseException e) {}
// get latest dump;
AccessTracker.dumpLog();

View File

@ -261,7 +261,7 @@ public class GSAsearchServlet extends HttpServlet {
} else if (rv != null && rv instanceof SolrDocumentList) {
matches = (int) ((SolrDocumentList) rv).getNumFound();
}
AccessTracker.addToDump(originalQuery, Integer.toString(matches));
AccessTracker.addToDump(originalQuery, matches);
ConcurrentLog.info("GSA Query", "results: " + matches + ", for query:" + post.toString());
}

View File

@ -39,7 +39,6 @@ import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.yacy.cora.federate.FederateSearchManager;
import net.yacy.cora.federate.solr.Ranking;
import net.yacy.cora.federate.solr.connector.EmbeddedSolrConnector;
import net.yacy.cora.federate.solr.connector.SolrConnector;
@ -162,16 +161,16 @@ public class SolrSelectServlet extends HttpServlet {
String q = mmsp.get(CommonParams.Q, "");
if (querystring.length() == 0) querystring = q;
if (!mmsp.getMap().containsKey(CommonParams.START)) {
int startRecord = mmsp.getFieldInt("startRecord", null, 0);
int startRecord = mmsp.getFieldInt("startRecord", null, CommonParams.START_DEFAULT);
mmsp.getMap().remove("startRecord");
mmsp.getMap().put(CommonParams.START, new String[]{Integer.toString(startRecord)}); // sru patch
}
if (!mmsp.getMap().containsKey(CommonParams.ROWS)) {
int maximumRecords = mmsp.getFieldInt("maximumRecords", null, 10);
int maximumRecords = mmsp.getFieldInt("maximumRecords", null, CommonParams.ROWS_DEFAULT);
mmsp.getMap().remove("maximumRecords");
mmsp.getMap().put(CommonParams.ROWS, new String[]{Integer.toString(maximumRecords)}); // sru patch
}
mmsp.getMap().put(CommonParams.ROWS, new String[]{Integer.toString(Math.min(mmsp.getInt(CommonParams.ROWS, 10), (authenticated) ? 100000000 : 100))});
mmsp.getMap().put(CommonParams.ROWS, new String[]{Integer.toString(Math.min(mmsp.getInt(CommonParams.ROWS, CommonParams.ROWS_DEFAULT), (authenticated) ? 100000000 : 100))});
// set ranking according to profile number if ranking attributes are not given in the request
Ranking ranking = sb.index.fulltext().getDefaultConfiguration().getRanking(profileNr);
@ -207,9 +206,9 @@ public class SolrSelectServlet extends HttpServlet {
if (!mmsp.getMap().containsKey("hl.simple.pre")) mmsp.getMap().put("hl.simple.pre", new String[]{"<b>"});
if (!mmsp.getMap().containsKey("hl.simple.post")) mmsp.getMap().put("hl.simple.post", new String[]{"</b>"});
if (!mmsp.getMap().containsKey("hl.fragsize")) mmsp.getMap().put("hl.fragsize", new String[]{Integer.toString(SearchEvent.SNIPPET_MAX_LENGTH)});
if (!mmsp.getMap().containsKey("fl")) mmsp.getMap().put("fl", new String[]{
if (!mmsp.getMap().containsKey(CommonParams.FL)) mmsp.getMap().put(CommonParams.FL, new String[]{
CollectionSchema.sku.getSolrFieldName() + "," +
CollectionSchema.title + "," +
CollectionSchema.title.getSolrFieldName() + "," +
CollectionSchema.description_txt.getSolrFieldName() + "," +
CollectionSchema.id.getSolrFieldName() + "," +
CollectionSchema.url_paths_sxt.getSolrFieldName() + "," +
@ -254,7 +253,7 @@ public class SolrSelectServlet extends HttpServlet {
// check error
if (rsp.getException() != null) {
AccessTracker.addToDump(querystring, "0", new Date());
AccessTracker.addToDump(querystring, 0, new Date(), "sq");
sendError(hresponse, rsp.getException());
return;
}
@ -263,7 +262,7 @@ public class SolrSelectServlet extends HttpServlet {
NamedList<?> values = rsp.getValues();
DocList r = ((ResultContext) values.get("response")).docs;
int numFound = r.matches();
AccessTracker.addToDump(querystring, Integer.toString(numFound), new Date());
AccessTracker.addToDump(querystring, numFound, new Date(), "sq");
// write response header
final String contentType = responseWriter.getContentType(req, rsp);

View File

@ -154,14 +154,22 @@ public class AccessTracker {
private static void addToDump(final QueryParams query, int resultCount) {
String queryString = query.getQueryGoal().getQueryString(false);
if (queryString == null || queryString.isEmpty()) return;
addToDump(queryString, Integer.toString(resultCount), new Date(query.starttime));
addToDump(queryString, resultCount, new Date(query.starttime), "qs");
}
public static void addToDump(String querystring, String resultcount) {
addToDump(querystring, resultcount, new Date());
public static void addToDump(String querystring, int resultCount) {
addToDump(querystring, resultCount, new Date(), "qs");
}
public static void addToDump(String querystring, String resultcount, Date d) {
/**
* Add a line to the queries log
*
* @param querystring the original query
* @param resultcount found results
* @param d start time
* @param querySyntax used syntax (qs=normal querstring, sq=solr querystring,
*/
public static void addToDump(String querystring, int resultcount, Date d, String querySyntax) {
//if (query.resultcount == 0) return;
if (querystring == null || querystring.isEmpty()) return;
final StringBuilder sb = new StringBuilder(40);
@ -169,6 +177,8 @@ public class AccessTracker {
sb.append(' ');
sb.append(resultcount);
sb.append(' ');
sb.append(querySyntax);
sb.append(' ');
sb.append(querystring);
synchronized (log) {
log.add(sb.toString());