Author: toad
Date: 2007-03-24 22:24:06 +0000 (Sat, 24 Mar 2007)
New Revision: 12351

Modified:
   trunk/freenet/src/freenet/node/InsertHandler.java
   trunk/freenet/src/freenet/node/NodeClientCore.java
   trunk/freenet/src/freenet/node/NodeStats.java
   trunk/freenet/src/freenet/node/RequestHandler.java
   trunk/freenet/src/freenet/node/SSKInsertHandler.java
Log:
Track average bytes used by successful requests of each type

Modified: trunk/freenet/src/freenet/node/InsertHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/InsertHandler.java   2007-03-24 22:13:17 UTC 
(rev 12350)
+++ trunk/freenet/src/freenet/node/InsertHandler.java   2007-03-24 22:24:06 UTC 
(rev 12351)
@@ -340,6 +340,10 @@
                if(logMINOR) Logger.minor(this, "Remote CHK insert cost 
"+totalSent+ '/' +totalReceived+" bytes ("+code+ ')');
                
node.nodeStats.remoteChkInsertBytesSentAverage.report(totalSent);
                
node.nodeStats.remoteChkInsertBytesReceivedAverage.report(totalReceived);
+               if(code == CHKInsertSender.SUCCESS) {
+                       
node.nodeStats.successfulChkInsertBytesSentAverage.report(totalSent);
+                       
node.nodeStats.successfulChkInsertBytesReceivedAverage.report(totalSent);
+               }
         }
     }


Modified: trunk/freenet/src/freenet/node/NodeClientCore.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeClientCore.java  2007-03-24 22:13:17 UTC 
(rev 12350)
+++ trunk/freenet/src/freenet/node/NodeClientCore.java  2007-03-24 22:24:06 UTC 
(rev 12351)
@@ -447,6 +447,10 @@
                        if(logMINOR) Logger.minor(this, "CHK fetch cost 
"+rs.getTotalSentBytes()+ '/' +rs.getTotalReceivedBytes()+" bytes ("+status+ 
')');
                
nodeStats.localChkFetchBytesSentAverage.report(rs.getTotalSentBytes());
                
nodeStats.localChkFetchBytesReceivedAverage.report(rs.getTotalReceivedBytes());
+               if(status == RequestSender.SUCCESS) {
+                       
nodeStats.successfulChkFetchBytesSentAverage.report(rs.getTotalSentBytes());
+                       
nodeStats.successfulChkFetchBytesReceivedAverage.report(rs.getTotalReceivedBytes());
+               }
                }

                        if((status == RequestSender.TIMED_OUT) ||
@@ -550,6 +554,10 @@
                if(logMINOR) Logger.minor(this, "SSK fetch cost 
"+rs.getTotalSentBytes()+ '/' +rs.getTotalReceivedBytes()+" bytes ("+status+ 
')');
                
nodeStats.localSskFetchBytesSentAverage.report(rs.getTotalSentBytes());
                
nodeStats.localSskFetchBytesReceivedAverage.report(rs.getTotalReceivedBytes());
+               if(status == RequestSender.SUCCESS) {
+                       
nodeStats.successfulSskFetchBytesSentAverage.report(rs.getTotalSentBytes());
+                       
nodeStats.successfulSskFetchBytesReceivedAverage.report(rs.getTotalReceivedBytes());
+               }
                }

                        if((status == RequestSender.TIMED_OUT) ||
@@ -697,6 +705,10 @@
                if(logMINOR) Logger.minor(this, "Local CHK insert cost "+sent+ 
'/' +received+" bytes ("+status+ ')');
                nodeStats.localChkInsertBytesSentAverage.report(sent);
                nodeStats.localChkInsertBytesReceivedAverage.report(received);
+               if(status == CHKInsertSender.SUCCESS) {
+                       
nodeStats.successfulChkInsertBytesSentAverage.report(sent);
+                       
nodeStats.successfulChkInsertBytesReceivedAverage.report(received);
+               }
         }

                if(status == CHKInsertSender.SUCCESS) {
@@ -808,6 +820,10 @@
                if(logMINOR) Logger.minor(this, "Local SSK insert cost "+sent+ 
'/' +received+" bytes ("+status+ ')');
                nodeStats.localSskInsertBytesSentAverage.report(sent);
                nodeStats.localSskInsertBytesReceivedAverage.report(received);
+               if(status == SSKInsertSender.SUCCESS) {
+                       
nodeStats.successfulSskInsertBytesSentAverage.report(sent);
+                       
nodeStats.successfulSskInsertBytesReceivedAverage.report(received);
+               }
         }

                if(is.hasCollided()) {

Modified: trunk/freenet/src/freenet/node/NodeStats.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeStats.java       2007-03-24 22:13:17 UTC 
(rev 12350)
+++ trunk/freenet/src/freenet/node/NodeStats.java       2007-03-24 22:24:06 UTC 
(rev 12351)
@@ -78,7 +78,7 @@
        /** Average delay caused by throttling for sending a packet */
        final TimeDecayingRunningAverage throttledPacketSendAverage;

-       // Stats
+       // Bytes used by each different type of local/remote chk/ssk 
request/insert
        final TimeDecayingRunningAverage remoteChkFetchBytesSentAverage;
        final TimeDecayingRunningAverage remoteSskFetchBytesSentAverage;
        final TimeDecayingRunningAverage remoteChkInsertBytesSentAverage;
@@ -95,6 +95,16 @@
        final TimeDecayingRunningAverage localSskFetchBytesReceivedAverage;
        final TimeDecayingRunningAverage localChkInsertBytesReceivedAverage;
        final TimeDecayingRunningAverage localSskInsertBytesReceivedAverage;
+       
+       // Bytes used by successful chk/ssk request/insert
+       final TimeDecayingRunningAverage successfulChkFetchBytesSentAverage;
+       final TimeDecayingRunningAverage successfulSskFetchBytesSentAverage;
+       final TimeDecayingRunningAverage successfulChkInsertBytesSentAverage;
+       final TimeDecayingRunningAverage successfulSskInsertBytesSentAverage;
+       final TimeDecayingRunningAverage successfulChkFetchBytesReceivedAverage;
+       final TimeDecayingRunningAverage successfulSskFetchBytesReceivedAverage;
+       final TimeDecayingRunningAverage 
successfulChkInsertBytesReceivedAverage;
+       final TimeDecayingRunningAverage 
successfulSskInsertBytesReceivedAverage;

        File persistTarget; 
        File persistTemp;
@@ -224,6 +234,15 @@
                remoteChkInsertBytesReceivedAverage = new 
TimeDecayingRunningAverage(32768+1024+500, 180000, 0.0, 1024*1024*1024, 
throttleFS == null ? null : 
throttleFS.subset("RemoteChkInsertBytesReceivedAverage"));
                remoteSskInsertBytesReceivedAverage = new 
TimeDecayingRunningAverage(1024+1024+500, 180000, 0.0, 1024*1024*1024, 
throttleFS == null ? null : 
throttleFS.subset("RemoteSskInsertBytesReceivedAverage"));

+               successfulChkFetchBytesSentAverage = new 
TimeDecayingRunningAverage(500, 180000, 0.0, 1024*1024*1024, throttleFS == null 
? null : throttleFS.subset("SuccessfulChkFetchBytesSentAverage"));
+               successfulSskFetchBytesSentAverage = new 
TimeDecayingRunningAverage(500, 180000, 0.0, 1024*1024*1024, throttleFS == null 
? null : throttleFS.subset("SuccessfulSskFetchBytesSentAverage"));
+               successfulChkInsertBytesSentAverage = new 
TimeDecayingRunningAverage(32768, 180000, 0.0, 1024*1024*1024, throttleFS == 
null ? null : throttleFS.subset("SuccessfulChkInsertBytesSentAverage"));
+               successfulSskInsertBytesSentAverage = new 
TimeDecayingRunningAverage(2048, 180000, 0.0, 1024*1024*1024, throttleFS == 
null ? null : throttleFS.subset("SuccessfulSskInsertBytesSentAverage"));
+               successfulChkFetchBytesReceivedAverage = new 
TimeDecayingRunningAverage(32768, 180000, 0.0, 1024*1024*1024, throttleFS == 
null ? null : throttleFS.subset("SuccessfulChkFetchBytesReceivedAverage"));
+               successfulSskFetchBytesReceivedAverage = new 
TimeDecayingRunningAverage(2048, 180000, 0.0, 1024*1024*1024, throttleFS == 
null ? null : throttleFS.subset("SuccessfulSskFetchBytesReceivedAverage"));
+               successfulChkInsertBytesReceivedAverage = new 
TimeDecayingRunningAverage(1024, 180000, 0.0, 1024*1024*1024, throttleFS == 
null ? null : throttleFS.subset("SuccessfulChkInsertBytesReceivedAverage"));
+               successfulSskInsertBytesReceivedAverage = new 
TimeDecayingRunningAverage(500, 180000, 0.0, 1024*1024*1024, throttleFS == null 
? null : throttleFS.subset("SuccessfulChkInsertBytesReceivedAverage"));
+               
                requestOutputThrottle = 
                        new TokenBucket(Math.max(obwLimit*60, 32768*20), 
(1000L*1000L*1000L) /  obwLimit, 0);
                requestInputThrottle = 
@@ -365,11 +384,17 @@
                                " SSK insert 
"+remoteSskInsertBytesSentAverage.currentValue()+ '/' 
+remoteSskInsertBytesReceivedAverage.currentValue()+
                                " CHK fetch 
"+remoteChkFetchBytesSentAverage.currentValue()+ '/' 
+remoteChkFetchBytesReceivedAverage.currentValue()+
                                " SSK fetch 
"+remoteSskFetchBytesSentAverage.currentValue()+ '/' 
+remoteSskFetchBytesReceivedAverage.currentValue());
-               Logger.minor(this, "Byte cost averages: LOCAL"+
+               Logger.minor(this, "Byte cost averages: LOCAL:"+
                                " CHK insert 
"+localChkInsertBytesSentAverage.currentValue()+ '/' 
+localChkInsertBytesReceivedAverage.currentValue()+
                                " SSK insert 
"+localSskInsertBytesSentAverage.currentValue()+ '/' 
+localSskInsertBytesReceivedAverage.currentValue()+
                                " CHK fetch 
"+localChkFetchBytesSentAverage.currentValue()+ '/' 
+localChkFetchBytesReceivedAverage.currentValue()+
                                " SSK fetch 
"+localSskFetchBytesSentAverage.currentValue()+ '/' 
+localSskFetchBytesReceivedAverage.currentValue());
+               Logger.minor(this, "Byte cost averages: SUCCESSFUL:"+
+                               " CHK insert 
"+successfulChkInsertBytesSentAverage.currentValue()+ '/' 
+successfulChkInsertBytesReceivedAverage.currentValue()+
+                               " SSK insert 
"+successfulSskInsertBytesSentAverage.currentValue()+ '/' 
+successfulSskInsertBytesReceivedAverage.currentValue()+
+                               " CHK fetch 
"+successfulChkFetchBytesSentAverage.currentValue()+ '/' 
+successfulChkFetchBytesReceivedAverage.currentValue()+
+                               " SSK fetch 
"+successfulSskFetchBytesSentAverage.currentValue()+ '/' 
+successfulSskFetchBytesReceivedAverage.currentValue());
+               
        }

        public double getBwlimitDelayTime() {
@@ -445,6 +470,14 @@
                fs.put("LocalSskFetchBytesReceivedAverage", 
localSskFetchBytesReceivedAverage.exportFieldSet(true));
                fs.put("LocalChkInsertBytesReceivedAverage", 
localChkInsertBytesReceivedAverage.exportFieldSet(true));
                fs.put("LocalSskInsertBytesReceivedAverage", 
localSskInsertBytesReceivedAverage.exportFieldSet(true));
+               fs.put("SuccessfulChkFetchBytesSentAverage", 
successfulChkFetchBytesSentAverage.exportFieldSet(true));
+               fs.put("SuccessfulSskFetchBytesSentAverage", 
successfulSskFetchBytesSentAverage.exportFieldSet(true));
+               fs.put("SuccessfulChkInsertBytesSentAverage", 
successfulChkInsertBytesSentAverage.exportFieldSet(true));
+               fs.put("SuccessfulSskInsertBytesSentAverage", 
successfulSskInsertBytesSentAverage.exportFieldSet(true));
+               fs.put("SuccessfulChkFetchBytesReceivedAverage", 
successfulChkFetchBytesReceivedAverage.exportFieldSet(true));
+               fs.put("SuccessfulSskFetchBytesReceivedAverage", 
successfulSskFetchBytesReceivedAverage.exportFieldSet(true));
+               fs.put("SuccessfulChkInsertBytesReceivedAverage", 
successfulChkInsertBytesReceivedAverage.exportFieldSet(true));
+               fs.put("SuccessfulSskInsertBytesReceivedAverage", 
successfulSskInsertBytesReceivedAverage.exportFieldSet(true));
                return fs;
        }


Modified: trunk/freenet/src/freenet/node/RequestHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestHandler.java  2007-03-24 22:13:17 UTC 
(rev 12350)
+++ trunk/freenet/src/freenet/node/RequestHandler.java  2007-03-24 22:24:06 UTC 
(rev 12351)
@@ -202,10 +202,18 @@
                        if(logMINOR) Logger.minor(this, "Remote SSK fetch cost 
"+sent+ '/' +rcvd+" bytes ("+status+ ')');
                        
node.nodeStats.remoteSskFetchBytesSentAverage.report(sent);
                        
node.nodeStats.remoteSskFetchBytesReceivedAverage.report(rcvd);
+                       if(status == RequestSender.SUCCESS) {
+                               
node.nodeStats.successfulSskFetchBytesSentAverage.report(sent);
+                               
node.nodeStats.successfulSskFetchBytesReceivedAverage.report(sent);
+                       }
                } else {
                        if(logMINOR) Logger.minor(this, "Remote CHK fetch cost 
"+sent+ '/' +rcvd+" bytes ("+status+ ')');
                        
node.nodeStats.remoteChkFetchBytesSentAverage.report(sent);
                        
node.nodeStats.remoteChkFetchBytesReceivedAverage.report(rcvd);
+                       if(status == RequestSender.SUCCESS) {
+                               
node.nodeStats.successfulChkFetchBytesSentAverage.report(sent);
+                               
node.nodeStats.successfulChkFetchBytesReceivedAverage.report(sent);
+                       }
                }
             }


Modified: trunk/freenet/src/freenet/node/SSKInsertHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/SSKInsertHandler.java        2007-03-24 
22:13:17 UTC (rev 12350)
+++ trunk/freenet/src/freenet/node/SSKInsertHandler.java        2007-03-24 
22:24:06 UTC (rev 12351)
@@ -314,6 +314,10 @@
                if(logMINOR) Logger.minor(this, "Remote SSK insert cost 
"+totalSent+ '/' +totalReceived+" bytes ("+code+ ')');
                
node.nodeStats.remoteSskInsertBytesSentAverage.report(totalSent);
                
node.nodeStats.remoteSskInsertBytesReceivedAverage.report(totalReceived);
+               if(code == SSKInsertSender.SUCCESS) {
+                       
node.nodeStats.successfulSskInsertBytesSentAverage.report(totalSent);
+                       
node.nodeStats.successfulSskInsertBytesReceivedAverage.report(totalReceived);
+               }
         }

     }


Reply via email to