I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
  • jrandom's avatar
    0361246d
    2004-09-27 jrandom · 0361246d
    jrandom authored and zzz's avatar zzz committed
        * Limit the number of connection tags saved to 10,000.  This is a huge
          limit, but consumes no more than 1MB of RAM.  For now, we drop them
          randomly after reaching that size, forcing those dropped peers to use
          a full DH negotiation.
        * HTML cleanup in the console.
    0361246d
    History
    2004-09-27 jrandom
    jrandom authored and zzz's avatar zzz committed
        * Limit the number of connection tags saved to 10,000.  This is a huge
          limit, but consumes no more than 1MB of RAM.  For now, we drop them
          randomly after reaching that size, forcing those dropped peers to use
          a full DH negotiation.
        * HTML cleanup in the console.
LogsHelper.java 1.93 KiB
package net.i2p.router.web;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.List;

import net.i2p.data.DataHelper;
import net.i2p.router.RouterContext;

public class LogsHelper {
    private RouterContext _context;
    /**
     * Configure this bean to query a particular router context
     *
     * @param contextId begging few characters of the routerHash, or null to pick
     *                  the first one we come across.
     */
    public void setContextId(String contextId) {
        try {
            _context = ContextHelper.getContext(contextId);
        } catch (Throwable t) {
            t.printStackTrace();
        }
    }
    
    public LogsHelper() {}
    
    public String getLogs() {
        List msgs = _context.logManager().getBuffer().getMostRecentMessages();
        StringBuffer buf = new StringBuffer(16*1024); 
        buf.append("<ul>");
        buf.append("<code>\n");
        for (int i = msgs.size(); i > 0; i--) { 
            String msg = (String)msgs.get(i - 1);
            buf.append("<li>");
            buf.append(msg);
            buf.append("</li>\n");
        }
        buf.append("</code></ul>\n");
        
        return buf.toString();
    }
    
    public String getServiceLogs() {
        String str = DataHelper.readTextFile("wrapper.log", 500);
        if (str == null) 
            return "";
        else
            return "<pre>" + str + "</pre>";
    }
    
    public String getConnectionLogs() {
        List msgs = _context.commSystem().getMostRecentErrorMessages();
        StringBuffer buf = new StringBuffer(16*1024); 
        buf.append("<ul>");
        buf.append("<code>\n");
        for (int i = msgs.size(); i > 0; i--) { 
            String msg = (String)msgs.get(i - 1);
            buf.append("<li>");
            buf.append(msg);
            buf.append("</li>\n");
        }
        buf.append("</code></ul>\n");
        
        return buf.toString();
    }
}