From 5c6946dd5f74a8b8a8813809dd8a3b59fb5782e7 Mon Sep 17 00:00:00 2001 From: Michael Peter Christen Date: Tue, 9 Jul 2013 14:42:39 +0200 Subject: [PATCH] replaced usage of log4j by ConcurrentLog where possible --- source/net/yacy/cora/document/WordCache.java | 5 ++--- .../federate/solr/SchemaConfiguration.java | 4 ++-- .../solr/connector/EmbeddedSolrConnector.java | 2 +- .../solr/connector/SolrServerConnector.java | 3 +-- source/net/yacy/cora/federate/yacy/Peers.java | 5 ++--- .../net/yacy/cora/geo/GeonamesLocation.java | 5 ++--- .../language/synonyms/AutotaggingLibrary.java | 5 ++--- .../language/synonyms/SynonymLibrary.java | 5 ++--- source/net/yacy/cora/lod/JenaTripleStore.java | 5 ++--- source/net/yacy/cora/protocol/Domains.java | 5 ++--- .../yacy/cora/protocol/ResponseHeader.java | 7 +++---- .../yacy/cora/protocol/TimeoutRequest.java | 4 +++- .../crawler/retrieval/URLRewriterLibrary.java | 5 ++--- source/net/yacy/crawler/robots/RobotsTxt.java | 20 +++++++++---------- .../net/yacy/gui/framework/Switchboard.java | 6 ++---- .../kelondro/logging/SimpleLogFormatter.java | 2 -- 16 files changed, 37 insertions(+), 51 deletions(-) diff --git a/source/net/yacy/cora/document/WordCache.java b/source/net/yacy/cora/document/WordCache.java index 8b406bf20..1e069e0df 100644 --- a/source/net/yacy/cora/document/WordCache.java +++ b/source/net/yacy/cora/document/WordCache.java @@ -38,9 +38,8 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicInteger; import java.util.zip.GZIPInputStream; -import org.apache.log4j.Logger; - import net.yacy.cora.sorting.OrderedScoreMap; +import net.yacy.cora.util.ConcurrentLog; import net.yacy.cora.util.StringBuilderComparator; /** @@ -49,7 +48,7 @@ import net.yacy.cora.util.StringBuilderComparator; */ public class WordCache { - private final static Logger log = Logger.getLogger(WordCache.class); + private final static ConcurrentLog log = new ConcurrentLog(WordCache.class.getName()); // common word cache private static final int commonWordsMaxSize = 20000; // maximum size of common word cache diff --git a/source/net/yacy/cora/federate/solr/SchemaConfiguration.java b/source/net/yacy/cora/federate/solr/SchemaConfiguration.java index f6dccd598..aedfd80e1 100644 --- a/source/net/yacy/cora/federate/solr/SchemaConfiguration.java +++ b/source/net/yacy/cora/federate/solr/SchemaConfiguration.java @@ -29,13 +29,13 @@ import java.util.Iterator; import java.util.List; import java.util.Map; -import org.apache.log4j.Logger; import org.apache.solr.common.SolrDocument; import org.apache.solr.common.SolrInputDocument; import net.yacy.cora.document.ASCII; import net.yacy.cora.storage.Configuration; import net.yacy.cora.storage.HandleSet; +import net.yacy.cora.util.ConcurrentLog; import net.yacy.kelondro.data.meta.DigestURI; import net.yacy.search.index.Segment; import net.yacy.search.index.Segment.ReferenceReport; @@ -45,7 +45,7 @@ import net.yacy.search.schema.CollectionSchema; public class SchemaConfiguration extends Configuration implements Serializable { private final static long serialVersionUID=-5961730809008841258L; - private final static Logger log = Logger.getLogger(SchemaConfiguration.class); + private final static ConcurrentLog log = new ConcurrentLog(SchemaConfiguration.class.getName()); public SchemaConfiguration() { diff --git a/source/net/yacy/cora/federate/solr/connector/EmbeddedSolrConnector.java b/source/net/yacy/cora/federate/solr/connector/EmbeddedSolrConnector.java index c11dde6b3..99c7d9136 100644 --- a/source/net/yacy/cora/federate/solr/connector/EmbeddedSolrConnector.java +++ b/source/net/yacy/cora/federate/solr/connector/EmbeddedSolrConnector.java @@ -194,7 +194,7 @@ public class EmbeddedSolrConnector extends SolrServerConnector implements SolrCo try { rsp = this.server.query(params); if (q != null) Thread.currentThread().setName(threadname); - if (rsp != null) log.debug(rsp.getResults().getNumFound() + " results for q=" + q); + if (rsp != null) log.fine(rsp.getResults().getNumFound() + " results for q=" + q); return rsp; } catch (SolrServerException e) { throw new IOException(e); diff --git a/source/net/yacy/cora/federate/solr/connector/SolrServerConnector.java b/source/net/yacy/cora/federate/solr/connector/SolrServerConnector.java index 341d43437..54313fa44 100644 --- a/source/net/yacy/cora/federate/solr/connector/SolrServerConnector.java +++ b/source/net/yacy/cora/federate/solr/connector/SolrServerConnector.java @@ -29,7 +29,6 @@ import java.util.List; import net.yacy.cora.util.ConcurrentLog; import net.yacy.search.schema.CollectionSchema; -import org.apache.log4j.Logger; import org.apache.lucene.analysis.NumericTokenStream; import org.apache.solr.client.solrj.embedded.EmbeddedSolrServer; import org.apache.solr.client.solrj.SolrServer; @@ -42,7 +41,7 @@ import org.apache.solr.common.SolrInputDocument; public abstract class SolrServerConnector extends AbstractSolrConnector implements SolrConnector { - protected final static Logger log = Logger.getLogger(SolrServerConnector.class); + protected final static ConcurrentLog log = new ConcurrentLog(SolrServerConnector.class.getName()); public final static NumericTokenStream classLoaderSynchro = new NumericTokenStream(); // pre-instantiate this object to prevent sun.misc.Launcher$AppClassLoader deadlocks // this is a very nasty problem; solr instantiates objects dynamically which can cause deadlocks diff --git a/source/net/yacy/cora/federate/yacy/Peers.java b/source/net/yacy/cora/federate/yacy/Peers.java index 9befb97cd..07a338737 100644 --- a/source/net/yacy/cora/federate/yacy/Peers.java +++ b/source/net/yacy/cora/federate/yacy/Peers.java @@ -29,12 +29,11 @@ import java.util.Random; import java.util.Set; import java.util.TreeMap; -import org.apache.log4j.Logger; - import net.yacy.cora.document.ASCII; import net.yacy.cora.federate.yacy.api.Network; import net.yacy.cora.order.Base64Order; import net.yacy.cora.protocol.http.HTTPClient; +import net.yacy.cora.util.ConcurrentLog; public class Peers extends TreeMap implements Serializable { @@ -43,7 +42,7 @@ public class Peers extends TreeMap implements Serializable { "sokrates.homeunix.net:6070", "sokrates.homeunix.net:9090", "141.52.175.27:8080", "62.75.214.113:8080", "141.52.175.30:8080"}; - private final static Logger log = Logger.getLogger(Peers.class); + private final static ConcurrentLog log = new ConcurrentLog(Peers.class.getName()); private static final long serialVersionUID = -2939656606305545080L; private long lastBootstrap; diff --git a/source/net/yacy/cora/geo/GeonamesLocation.java b/source/net/yacy/cora/geo/GeonamesLocation.java index d77b7ee3e..cd13047c4 100644 --- a/source/net/yacy/cora/geo/GeonamesLocation.java +++ b/source/net/yacy/cora/geo/GeonamesLocation.java @@ -39,9 +39,8 @@ import java.util.TreeSet; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; -import org.apache.log4j.Logger; - import net.yacy.cora.document.WordCache; +import net.yacy.cora.util.ConcurrentLog; import net.yacy.cora.util.StringBuilderComparator; public class GeonamesLocation implements Locations { @@ -69,7 +68,7 @@ public class GeonamesLocation implements Locations { timezone : the timezone id (see file timeZone.txt) modification date : date of last modification in yyyy-MM-dd format */ - private final static Logger log = Logger.getLogger(GeonamesLocation.class); + private final static ConcurrentLog log = new ConcurrentLog(GeonamesLocation.class.getName()); private final Map id2loc; private final TreeMap> name2ids; diff --git a/source/net/yacy/cora/language/synonyms/AutotaggingLibrary.java b/source/net/yacy/cora/language/synonyms/AutotaggingLibrary.java index ad9670f20..5bcedf1a3 100644 --- a/source/net/yacy/cora/language/synonyms/AutotaggingLibrary.java +++ b/source/net/yacy/cora/language/synonyms/AutotaggingLibrary.java @@ -27,10 +27,9 @@ import java.util.Map; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; -import org.apache.log4j.Logger; - import net.yacy.cora.geo.Locations; import net.yacy.cora.lod.vocabulary.Tagging; +import net.yacy.cora.util.ConcurrentLog; /** * Autotagging provides a set of tag/print-name properties which can be used to @@ -39,7 +38,7 @@ import net.yacy.cora.lod.vocabulary.Tagging; */ public class AutotaggingLibrary { - private final static Logger log = Logger.getLogger(AutotaggingLibrary.class); + private final static ConcurrentLog log = new ConcurrentLog(AutotaggingLibrary.class.getName()); private final static Object PRESENT = new Object(); private final File autotaggingPath; diff --git a/source/net/yacy/cora/language/synonyms/SynonymLibrary.java b/source/net/yacy/cora/language/synonyms/SynonymLibrary.java index 79a12e22a..6acf995f9 100644 --- a/source/net/yacy/cora/language/synonyms/SynonymLibrary.java +++ b/source/net/yacy/cora/language/synonyms/SynonymLibrary.java @@ -29,10 +29,9 @@ import java.util.Map; import java.util.Set; import java.util.concurrent.BlockingQueue; -import org.apache.log4j.Logger; - import net.yacy.cora.storage.Files; import net.yacy.cora.util.CommonPattern; +import net.yacy.cora.util.ConcurrentLog; /** * Stemming library: reads stemming files and creates a mapping from words to synonyms @@ -43,7 +42,7 @@ import net.yacy.cora.util.CommonPattern; */ public class SynonymLibrary { - Logger log = Logger.getLogger(SynonymLibrary.class); + ConcurrentLog log = new ConcurrentLog(SynonymLibrary.class.getName()); private Map>> lib; public SynonymLibrary(final File path) { diff --git a/source/net/yacy/cora/lod/JenaTripleStore.java b/source/net/yacy/cora/lod/JenaTripleStore.java index 04cfdfb46..ef5ae67c9 100644 --- a/source/net/yacy/cora/lod/JenaTripleStore.java +++ b/source/net/yacy/cora/lod/JenaTripleStore.java @@ -20,10 +20,9 @@ import net.yacy.cora.lod.vocabulary.Geo; import net.yacy.cora.lod.vocabulary.HttpHeader; import net.yacy.cora.lod.vocabulary.Tagging; import net.yacy.cora.lod.vocabulary.YaCyMetadata; +import net.yacy.cora.util.ConcurrentLog; import net.yacy.search.Switchboard; -import org.apache.log4j.Logger; - import com.hp.hpl.jena.rdf.model.Model; import com.hp.hpl.jena.rdf.model.ModelFactory; import com.hp.hpl.jena.rdf.model.Property; @@ -38,7 +37,7 @@ import com.hp.hpl.jena.util.FileManager; public class JenaTripleStore { - private final static Logger log = Logger.getLogger(JenaTripleStore.class); + private final static ConcurrentLog log = new ConcurrentLog(JenaTripleStore.class.getName()); public static Model model = ModelFactory.createDefaultModel(); static { diff --git a/source/net/yacy/cora/protocol/Domains.java b/source/net/yacy/cora/protocol/Domains.java index 389fb71ca..095d791e5 100644 --- a/source/net/yacy/cora/protocol/Domains.java +++ b/source/net/yacy/cora/protocol/Domains.java @@ -50,13 +50,12 @@ import java.util.concurrent.TimeUnit; import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; -import org.apache.log4j.Logger; - import net.yacy.cora.plugin.ClassProvider; import net.yacy.cora.storage.ARC; import net.yacy.cora.storage.ConcurrentARC; import net.yacy.cora.storage.KeyList; import net.yacy.cora.util.CommonPattern; +import net.yacy.cora.util.ConcurrentLog; import com.google.common.net.InetAddresses; import com.google.common.util.concurrent.SimpleTimeLimiter; @@ -64,7 +63,7 @@ import com.google.common.util.concurrent.TimeLimiter; public class Domains { - private final static Logger log = Logger.getLogger(Domains.class); + private final static ConcurrentLog log = new ConcurrentLog(Domains.class.getName()); public static final String LOCALHOST = "127.0.0.1"; // replace with IPv6 0:0:0:0:0:0:0:1 ? private static String LOCALHOST_NAME = LOCALHOST; // this will be replaced with the actual name of the local host diff --git a/source/net/yacy/cora/protocol/ResponseHeader.java b/source/net/yacy/cora/protocol/ResponseHeader.java index ada7d2270..90cf95465 100644 --- a/source/net/yacy/cora/protocol/ResponseHeader.java +++ b/source/net/yacy/cora/protocol/ResponseHeader.java @@ -27,17 +27,16 @@ import java.util.Date; import java.util.HashMap; import java.util.Map; -import org.apache.http.Header; -import org.apache.log4j.Logger; - +import net.yacy.cora.util.ConcurrentLog; +import org.apache.http.Header; public class ResponseHeader extends HeaderFramework { // response header properties private static final long serialVersionUID = 0L; - private static Logger log = Logger.getLogger(ResponseHeader.class); + private static ConcurrentLog log = new ConcurrentLog(ResponseHeader.class.getName()); public ResponseHeader(final int statusCode) { super(); diff --git a/source/net/yacy/cora/protocol/TimeoutRequest.java b/source/net/yacy/cora/protocol/TimeoutRequest.java index 071759c19..f0e917c74 100644 --- a/source/net/yacy/cora/protocol/TimeoutRequest.java +++ b/source/net/yacy/cora/protocol/TimeoutRequest.java @@ -38,6 +38,8 @@ import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import net.yacy.cora.util.ConcurrentLog; + import jcifs.smb.SmbException; import jcifs.smb.SmbFile; @@ -91,7 +93,7 @@ public class TimeoutRequest { throw new ExecutionException(e); } } catch (final OutOfMemoryError e) { - org.apache.log4j.Logger.getLogger(TimeoutRequest.class).warn("OutOfMemoryError / retry follows", e); + ConcurrentLog.warn(TimeoutRequest.class.getName(), "OutOfMemoryError / retry follows", e); // in case that no memory is there to create a new native thread try { return this.call.call(); diff --git a/source/net/yacy/crawler/retrieval/URLRewriterLibrary.java b/source/net/yacy/crawler/retrieval/URLRewriterLibrary.java index 158161d3b..dd83cbc0e 100644 --- a/source/net/yacy/crawler/retrieval/URLRewriterLibrary.java +++ b/source/net/yacy/crawler/retrieval/URLRewriterLibrary.java @@ -29,13 +29,12 @@ import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; import net.yacy.cora.storage.Files; - -import org.apache.log4j.Logger; +import net.yacy.cora.util.ConcurrentLog; public class URLRewriterLibrary { - private final static Logger log = Logger.getLogger(URLRewriterLibrary.class); + private final static ConcurrentLog log = new ConcurrentLog(URLRewriterLibrary.class.getName()); private final File rewritingPath; private final Map rewriters; diff --git a/source/net/yacy/crawler/robots/RobotsTxt.java b/source/net/yacy/crawler/robots/RobotsTxt.java index 4cf4d5127..e8452996d 100644 --- a/source/net/yacy/crawler/robots/RobotsTxt.java +++ b/source/net/yacy/crawler/robots/RobotsTxt.java @@ -38,6 +38,7 @@ import java.util.regex.Pattern; import net.yacy.cora.document.MultiProtocolURI; import net.yacy.cora.federate.yacy.CacheStrategy; import net.yacy.cora.protocol.HeaderFramework; +import net.yacy.cora.util.ConcurrentLog; import net.yacy.cora.util.SpaceExceededException; import net.yacy.crawler.retrieval.Request; import net.yacy.crawler.retrieval.Response; @@ -46,12 +47,9 @@ import net.yacy.kelondro.blob.BEncodedHeap; import net.yacy.kelondro.data.meta.DigestURI; import net.yacy.repository.LoaderDispatcher; -import org.apache.log4j.Logger; - - public class RobotsTxt { - private static Logger log = Logger.getLogger(RobotsTxt.class); + private static ConcurrentLog log = new ConcurrentLog(RobotsTxt.class.getName()); protected static final String ROBOTS_DB_PATH_SEPARATOR = ";"; protected static final Pattern ROBOTS_DB_PATH_SEPARATOR_MATCHER = Pattern.compile(ROBOTS_DB_PATH_SEPARATOR); @@ -104,7 +102,7 @@ public class RobotsTxt { try { robotsTable = this.tables.getHeap(WorkTables.TABLE_ROBOTS_NAME); } catch (IOException e1) { - log.fatal("tables not available", e1); + log.severe("tables not available", e1); } try { record = robotsTable.get(robotsTable.encodedKey(urlHostPort)); @@ -156,13 +154,13 @@ public class RobotsTxt { try { robotsURL = new DigestURI((urlHostPort.endsWith(":443") ? "https://" : "http://") + urlHostPort + "/robots.txt"); } catch (final MalformedURLException e) { - log.fatal("Unable to generate robots.txt URL for host:port '" + urlHostPort + "'.", e); + log.severe("Unable to generate robots.txt URL for host:port '" + urlHostPort + "'.", e); robotsURL = null; } Response response = null; if (robotsURL != null) { - if (log.isDebugEnabled()) log.debug("Trying to download the robots.txt file from URL '" + robotsURL + "'."); + if (log.isFine()) log.fine("Trying to download the robots.txt file from URL '" + robotsURL + "'."); Request request = new Request(robotsURL, null); try { response = this.loader.load(request, CacheStrategy.NOCACHE, null, 0, 3000); @@ -191,7 +189,7 @@ public class RobotsTxt { try { robotsTable = this.tables.getHeap(WorkTables.TABLE_ROBOTS_NAME); } catch (IOException e1) { - log.fatal("tables not available", e1); + log.severe("tables not available", e1); return; } if (robotsTable == null || robotsTable.containsKey(robotsTable.encodedKey(urlHostPort))) return; @@ -212,13 +210,13 @@ public class RobotsTxt { try { robotsURL = new DigestURI((urlHostPort.endsWith(":443") ? "https://" : "http://") + urlHostPort + "/robots.txt"); } catch (final MalformedURLException e) { - log.fatal("Unable to generate robots.txt URL for host:port '" + urlHostPort + "'.", e); + log.severe("Unable to generate robots.txt URL for host:port '" + urlHostPort + "'.", e); robotsURL = null; } Response response = null; if (robotsURL != null) { - if (log.isDebugEnabled()) log.debug("Trying to download the robots.txt file from URL '" + robotsURL + "'."); + if (log.isFine()) log.fine("Trying to download the robots.txt file from URL '" + robotsURL + "'."); Request request = new Request(robotsURL, null); try { response = RobotsTxt.this.loader.load(request, CacheStrategy.NOCACHE, null, 0, 3000); @@ -260,7 +258,7 @@ public class RobotsTxt { final int sz = robotsTable.size(); addEntry(robotsTxt4Host); if (robotsTable.size() <= sz) { - log.fatal("new entry in robots.txt table failed, resetting database"); + log.severe("new entry in robots.txt table failed, resetting database"); try {clear();} catch (IOException e) {} addEntry(robotsTxt4Host); } diff --git a/source/net/yacy/gui/framework/Switchboard.java b/source/net/yacy/gui/framework/Switchboard.java index f67d4e943..cf1ee133f 100644 --- a/source/net/yacy/gui/framework/Switchboard.java +++ b/source/net/yacy/gui/framework/Switchboard.java @@ -33,9 +33,7 @@ import java.util.concurrent.Semaphore; import javax.swing.text.JTextComponent; -import org.apache.log4j.Logger; - - +import net.yacy.cora.util.ConcurrentLog; /** * a static class that holds application-wide parameters @@ -58,7 +56,7 @@ public class Switchboard { */ private static Properties properties = new Properties(); - public static Logger log = Logger.getLogger(Switchboard.class); + public static ConcurrentLog log = new ConcurrentLog(Switchboard.class.getName()); public static void startInfoUpdater() { diff --git a/source/net/yacy/kelondro/logging/SimpleLogFormatter.java b/source/net/yacy/kelondro/logging/SimpleLogFormatter.java index 4022ba147..ed147aece 100644 --- a/source/net/yacy/kelondro/logging/SimpleLogFormatter.java +++ b/source/net/yacy/kelondro/logging/SimpleLogFormatter.java @@ -37,8 +37,6 @@ import java.util.logging.Level; import java.util.logging.LogRecord; import java.util.logging.SimpleFormatter; -import net.yacy.cora.util.ConcurrentLog; - public final class SimpleLogFormatter extends SimpleFormatter {