From 3781928693d9f52157a873d1f48bedc0034ceedd Mon Sep 17 00:00:00 2001
From: zzz <zzz@mail.i2p>
Date: Mon, 10 Sep 2012 17:22:51 +0000
Subject: [PATCH] logging cleanups

---
 .../net/i2p/client/streaming/MessageOutputStream.java |  3 ++-
 core/java/src/net/i2p/util/SimpleScheduler.java       | 10 +++++++---
 core/java/src/net/i2p/util/SimpleTimer2.java          | 11 ++++++++---
 .../networkdb/kademlia/PersistentDataStore.java       | 11 +++++++----
 4 files changed, 24 insertions(+), 11 deletions(-)

diff --git a/apps/streaming/java/src/net/i2p/client/streaming/MessageOutputStream.java b/apps/streaming/java/src/net/i2p/client/streaming/MessageOutputStream.java
index 1470bd5025..4f7682dc91 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/MessageOutputStream.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/MessageOutputStream.java
@@ -389,7 +389,8 @@ class MessageOutputStream extends OutputStream {
         // should we? To be researched further.
         // false -> wait for completion, not just accept.
         flush(false);
-        _log.debug("Output stream closed after writing " + _written);
+        if (_log.shouldLog(Log.DEBUG))
+            _log.debug("Output stream closed after writing " + _written);
         ByteArray ba = null;
         synchronized (_dataLock) {
             if (_buf != null) {
diff --git a/core/java/src/net/i2p/util/SimpleScheduler.java b/core/java/src/net/i2p/util/SimpleScheduler.java
index e1d78b6dbf..f0cade14c0 100644
--- a/core/java/src/net/i2p/util/SimpleScheduler.java
+++ b/core/java/src/net/i2p/util/SimpleScheduler.java
@@ -174,9 +174,13 @@ public class SimpleScheduler {
             long time = System.currentTimeMillis() - before;
             if (time > 1000 && _log.shouldLog(Log.WARN))
                 _log.warn(_name + " wtf, event execution took " + time + ": " + _timedEvent);
-            long completed = _executor.getCompletedTaskCount();
-            if (_log.shouldLog(Log.INFO) && completed % 250  == 0)
-                _log.info(debug());
+            if (_log.shouldLog(Log.INFO)) {
+                 // this call is slow - iterates through a HashMap -
+                 // would be better to have a local AtomicLong if we care
+                 long completed = _executor.getCompletedTaskCount();
+                 if (completed % 250 == 0)
+                     _log.info(debug());
+            }
         }
     }
 
diff --git a/core/java/src/net/i2p/util/SimpleTimer2.java b/core/java/src/net/i2p/util/SimpleTimer2.java
index c36d603245..ab8cf05269 100644
--- a/core/java/src/net/i2p/util/SimpleTimer2.java
+++ b/core/java/src/net/i2p/util/SimpleTimer2.java
@@ -368,9 +368,13 @@ public class SimpleTimer2 {
             long time = System.currentTimeMillis() - before;
             if (time > 500 && _log.shouldLog(Log.WARN))
                 _log.warn(_pool + " wtf, event execution took " + time + ": " + this);
-            long completed = _pool.getCompletedTaskCount();
-            if (_log.shouldLog(Log.INFO) && completed % 250  == 0)
-                _log.info(_pool.debug());
+            if (_log.shouldLog(Log.INFO)) {
+                 // this call is slow - iterates through a HashMap -
+                 // would be better to have a local AtomicLong if we care
+                 long completed = _pool.getCompletedTaskCount();
+                 if (completed % 250 == 0)
+                     _log.info(_pool.debug());
+            }
         }
 
         /** 
@@ -387,6 +391,7 @@ public class SimpleTimer2 {
         return _name;
     }
 
+    /** warning - slow */
     private long getCompletedTaskCount() {
         return _executor.getCompletedTaskCount();
     }
diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java b/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java
index 2eeb096b6b..dc44e1345f 100644
--- a/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java
+++ b/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java
@@ -449,7 +449,8 @@ class PersistentDataStore extends TransientDataStore {
                             // so add it here.
                             getContext().profileManager().heardAbout(ri.getIdentity().getHash(), ri.getPublished());
                         } catch (IllegalArgumentException iae) {
-                            _log.info("Refused locally loaded routerInfo - deleting", iae);
+                            if (_log.shouldLog(Log.INFO))
+                                _log.info("Refused locally loaded routerInfo - deleting", iae);
                             corrupt = true;
                         }
                     }
@@ -524,10 +525,12 @@ class PersistentDataStore extends TransientDataStore {
         File f = new File(dir, riName);
         if (f.exists()) {
             boolean removed = f.delete();
-            if (!removed)
-                _log.warn("Unable to remove router info at " + f.getAbsolutePath());
-            else
+            if (!removed) {
+                if (_log.shouldLog(Log.WARN))
+                    _log.warn("Unable to remove router info at " + f.getAbsolutePath());
+            } else if (_log.shouldLog(Log.INFO)) {
                 _log.info("Removed router info at " + f.getAbsolutePath());
+            }
             return;
         }
     }
-- 
GitLab