Explorar o código

data-service service enhancements

Jason Rivard %!s(int64=4) %!d(string=hai) anos
pai
achega
e76fb80cc9

+ 12 - 6
data-service/src/main/java/password/pwm/receiver/Logger.java

@@ -20,23 +20,29 @@
 
 package password.pwm.receiver;
 
+import java.time.Instant;
+
 public class Logger
 {
-
     private final String name;
 
-    private Logger( final String name )
+    private Logger( final Class classname )
     {
-        this.name = name;
+        this.name = classname.getName();
     }
 
-    public static Logger createLogger( final String name )
+    public static Logger createLogger( final Class classname )
     {
-        return new Logger( name );
+        return new Logger( classname );
     }
 
     public void info( final CharSequence input )
     {
-        System.out.println( input );
+        System.out.println( "PwmReceiver: " + Instant.now().toString() + ", INFO , " + name + ", " + input );
+    }
+
+    public void debug( final CharSequence input )
+    {
+        System.out.println( "PwmReceiver: " + Instant.now().toString() + ", DEBUG, " + name + ", " + input );
     }
 }

+ 12 - 5
data-service/src/main/java/password/pwm/receiver/Storage.java

@@ -41,6 +41,9 @@ import java.util.Iterator;
 
 public class Storage
 {
+    private static final Logger LOGGER = Logger.createLogger( Storage.class );
+    private static final String STORE_NAME = "store1";
+
     private final Environment environment;
     private Store store;
 
@@ -64,8 +67,12 @@ public class Storage
         final EnvironmentConfig environmentConfig = new EnvironmentConfig();
         environment = Environments.newInstance( storagePath.getAbsolutePath(), environmentConfig );
 
+        LOGGER.info( "environment open" );
+
         environment.executeInTransaction( txn -> store
-                = environment.openStore( "store1", StoreConfig.WITHOUT_DUPLICATES, txn ) );
+                = environment.openStore( STORE_NAME, StoreConfig.WITHOUT_DUPLICATES, txn ) );
+
+        LOGGER.info( "store open with " + count() + " records" );
     }
 
     public void store( final TelemetryPublishBean bean )
@@ -96,13 +103,13 @@ public class Storage
         return new InnerIterator();
     }
 
-    private boolean put( final TelemetryPublishBean value )
+    private void put( final TelemetryPublishBean value )
     {
-        return environment.computeInTransaction( transaction ->
+        environment.executeInTransaction( transaction ->
         {
             final ByteIterable k = StringBinding.stringToEntry( value.getInstanceHash() );
             final ByteIterable v = StringBinding.stringToEntry( JsonUtil.serialize( value ) );
-            return store.put( transaction, k, v );
+            store.put( transaction, k, v );
         } );
     }
 
@@ -134,7 +141,7 @@ public class Storage
         return environment.computeInTransaction( transaction -> store.count( transaction ) );
     }
 
-    private class InnerIterator implements AutoCloseable, Iterator
+    private class InnerIterator implements AutoCloseable, Iterator<TelemetryPublishBean>
     {
         private final Transaction transaction;
         private final Cursor cursor;

+ 2 - 0
data-service/src/main/java/password/pwm/receiver/TelemetryViewerServlet.java

@@ -38,6 +38,7 @@ import java.io.IOException;
 )
 public class TelemetryViewerServlet extends HttpServlet
 {
+    private static final Logger LOGGER = Logger.createLogger( TelemetryViewerServlet.class );
     private static final String PARAM_DAYS = "days";
 
     public static final String SUMMARY_ATTR = "SummaryBean";
@@ -45,6 +46,7 @@ public class TelemetryViewerServlet extends HttpServlet
     @Override
     protected void doGet( final HttpServletRequest req, final HttpServletResponse resp ) throws ServletException, IOException
     {
+        LOGGER.debug( "htttp request for viewer" );
         final String daysString = req.getParameter( PARAM_DAYS );
         final int days = StringUtil.isEmpty( daysString ) ? 30 : Integer.parseInt( daysString );
         final ContextManager contextManager = ContextManager.getContextManager( req.getServletContext() );