Loading src/main/java/org/torproject/onionoo/writer/BandwidthDocumentWriter.java +10 −10 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ public class BandwidthDocumentWriter implements DocumentWriter { } @Override public void writeDocuments(long lastSeenMillis) { public void writeDocuments(long mostRecentStatusMillis) { UpdateStatus updateStatus = this.documentStore.retrieve( UpdateStatus.class, true); long updatedMillis = updateStatus != null Loading @@ -45,7 +45,7 @@ public class BandwidthDocumentWriter implements DocumentWriter { continue; } BandwidthDocument bandwidthDocument = this.compileBandwidthDocument( fingerprint, lastSeenMillis, bandwidthStatus); fingerprint, mostRecentStatusMillis, bandwidthStatus); this.documentStore.store(bandwidthDocument, fingerprint); } log.info("Wrote bandwidth document files"); Loading @@ -53,13 +53,13 @@ public class BandwidthDocumentWriter implements DocumentWriter { private BandwidthDocument compileBandwidthDocument(String fingerprint, long lastSeenMillis, BandwidthStatus bandwidthStatus) { long mostRecentStatusMillis, BandwidthStatus bandwidthStatus) { BandwidthDocument bandwidthDocument = new BandwidthDocument(); bandwidthDocument.setFingerprint(fingerprint); bandwidthDocument.setWriteHistory(this.compileGraphType(lastSeenMillis, bandwidthStatus.getWriteHistory())); bandwidthDocument.setReadHistory(this.compileGraphType(lastSeenMillis, bandwidthStatus.getReadHistory())); bandwidthDocument.setWriteHistory(this.compileGraphType( mostRecentStatusMillis, bandwidthStatus.getWriteHistory())); bandwidthDocument.setReadHistory(this.compileGraphType( mostRecentStatusMillis, bandwidthStatus.getReadHistory())); return bandwidthDocument; } Loading Loading @@ -87,10 +87,10 @@ public class BandwidthDocumentWriter implements DocumentWriter { DateTimeHelper.TWO_DAYS, DateTimeHelper.TEN_DAYS }; private Map<String, GraphHistory> compileGraphType(long lastSeenMillis, SortedMap<Long, long[]> history) { private Map<String, GraphHistory> compileGraphType( long mostRecentStatusMillis, SortedMap<Long, long[]> history) { GraphHistoryCompiler ghc = new GraphHistoryCompiler( lastSeenMillis + DateTimeHelper.ONE_HOUR); mostRecentStatusMillis + DateTimeHelper.ONE_HOUR); for (int i = 0; i < this.graphIntervals.length; i++) { ghc.addGraphType(this.graphNames[i], this.graphIntervals[i], this.dataPointIntervals[i]); Loading src/main/java/org/torproject/onionoo/writer/ClientsDocumentWriter.java +4 −4 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ public class ClientsDocumentWriter implements DocumentWriter { private int writtenDocuments = 0; @Override public void writeDocuments(long lastSeenMillis) { public void writeDocuments(long mostRecentStatusMillis) { UpdateStatus updateStatus = this.documentStore.retrieve( UpdateStatus.class, true); long updatedMillis = updateStatus != null Loading @@ -70,7 +70,7 @@ public class ClientsDocumentWriter implements DocumentWriter { } SortedSet<ClientsHistory> history = clientsStatus.getHistory(); ClientsDocument clientsDocument = this.compileClientsDocument( hashedFingerprint, lastSeenMillis, history); hashedFingerprint, mostRecentStatusMillis, history); this.documentStore.store(clientsDocument, hashedFingerprint); this.writtenDocuments++; } Loading Loading @@ -99,10 +99,10 @@ public class ClientsDocumentWriter implements DocumentWriter { DateTimeHelper.TEN_DAYS }; private ClientsDocument compileClientsDocument(String hashedFingerprint, long lastSeenMillis, SortedSet<ClientsHistory> history) { long mostRecentStatusMillis, SortedSet<ClientsHistory> history) { ClientsDocument clientsDocument = new ClientsDocument(); clientsDocument.setFingerprint(hashedFingerprint); GraphHistoryCompiler ghc = new GraphHistoryCompiler(lastSeenMillis GraphHistoryCompiler ghc = new GraphHistoryCompiler(mostRecentStatusMillis + DateTimeHelper.ONE_HOUR); ghc.setThreshold(2L); for (int i = 0; i < this.graphIntervals.length; i++) { Loading src/main/java/org/torproject/onionoo/writer/DetailsDocumentWriter.java +1 −1 Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ public class DetailsDocumentWriter implements DocumentWriter { } @Override public void writeDocuments(long lastSeenMillis) { public void writeDocuments(long mostRecentStatusMillis) { UpdateStatus updateStatus = this.documentStore.retrieve( UpdateStatus.class, true); long updatedMillis = updateStatus != null Loading src/main/java/org/torproject/onionoo/writer/DocumentWriter.java +1 −1 Original line number Diff line number Diff line Loading @@ -5,7 +5,7 @@ package org.torproject.onionoo.writer; public interface DocumentWriter { public abstract void writeDocuments(long lastSeenMillis); public abstract void writeDocuments(long mostRecentStatusMillis); public abstract String getStatsString(); } Loading src/main/java/org/torproject/onionoo/writer/DocumentWriterRunner.java +7 −6 Original line number Diff line number Diff line Loading @@ -32,22 +32,23 @@ public class DocumentWriterRunner { /** Lets each configured document writer write its documents. */ public void writeDocuments() { long lastSeenMillis = retrieveLastSeenMillis(); long mostRecentStatusMillis = retrieveMostRecentStatusMillis(); for (DocumentWriter dw : this.documentWriters) { log.debug("Writing " + dw.getClass().getSimpleName()); dw.writeDocuments(lastSeenMillis); dw.writeDocuments(mostRecentStatusMillis); } } private long retrieveLastSeenMillis() { private long retrieveMostRecentStatusMillis() { DocumentStore documentStore = DocumentStoreFactory.getDocumentStore(); long lastSeenMillis = -1L; long mostRecentStatusMillis = -1L; for (String fingerprint : documentStore.list(NodeStatus.class)) { NodeStatus nodeStatus = documentStore.retrieve( NodeStatus.class, true, fingerprint); lastSeenMillis = Math.max(lastSeenMillis, nodeStatus.getLastSeenMillis()); mostRecentStatusMillis = Math.max(mostRecentStatusMillis, nodeStatus.getLastSeenMillis()); } return lastSeenMillis; return mostRecentStatusMillis; } /** Logs statistics of all configured document writers. */ Loading Loading
src/main/java/org/torproject/onionoo/writer/BandwidthDocumentWriter.java +10 −10 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ public class BandwidthDocumentWriter implements DocumentWriter { } @Override public void writeDocuments(long lastSeenMillis) { public void writeDocuments(long mostRecentStatusMillis) { UpdateStatus updateStatus = this.documentStore.retrieve( UpdateStatus.class, true); long updatedMillis = updateStatus != null Loading @@ -45,7 +45,7 @@ public class BandwidthDocumentWriter implements DocumentWriter { continue; } BandwidthDocument bandwidthDocument = this.compileBandwidthDocument( fingerprint, lastSeenMillis, bandwidthStatus); fingerprint, mostRecentStatusMillis, bandwidthStatus); this.documentStore.store(bandwidthDocument, fingerprint); } log.info("Wrote bandwidth document files"); Loading @@ -53,13 +53,13 @@ public class BandwidthDocumentWriter implements DocumentWriter { private BandwidthDocument compileBandwidthDocument(String fingerprint, long lastSeenMillis, BandwidthStatus bandwidthStatus) { long mostRecentStatusMillis, BandwidthStatus bandwidthStatus) { BandwidthDocument bandwidthDocument = new BandwidthDocument(); bandwidthDocument.setFingerprint(fingerprint); bandwidthDocument.setWriteHistory(this.compileGraphType(lastSeenMillis, bandwidthStatus.getWriteHistory())); bandwidthDocument.setReadHistory(this.compileGraphType(lastSeenMillis, bandwidthStatus.getReadHistory())); bandwidthDocument.setWriteHistory(this.compileGraphType( mostRecentStatusMillis, bandwidthStatus.getWriteHistory())); bandwidthDocument.setReadHistory(this.compileGraphType( mostRecentStatusMillis, bandwidthStatus.getReadHistory())); return bandwidthDocument; } Loading Loading @@ -87,10 +87,10 @@ public class BandwidthDocumentWriter implements DocumentWriter { DateTimeHelper.TWO_DAYS, DateTimeHelper.TEN_DAYS }; private Map<String, GraphHistory> compileGraphType(long lastSeenMillis, SortedMap<Long, long[]> history) { private Map<String, GraphHistory> compileGraphType( long mostRecentStatusMillis, SortedMap<Long, long[]> history) { GraphHistoryCompiler ghc = new GraphHistoryCompiler( lastSeenMillis + DateTimeHelper.ONE_HOUR); mostRecentStatusMillis + DateTimeHelper.ONE_HOUR); for (int i = 0; i < this.graphIntervals.length; i++) { ghc.addGraphType(this.graphNames[i], this.graphIntervals[i], this.dataPointIntervals[i]); Loading
src/main/java/org/torproject/onionoo/writer/ClientsDocumentWriter.java +4 −4 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ public class ClientsDocumentWriter implements DocumentWriter { private int writtenDocuments = 0; @Override public void writeDocuments(long lastSeenMillis) { public void writeDocuments(long mostRecentStatusMillis) { UpdateStatus updateStatus = this.documentStore.retrieve( UpdateStatus.class, true); long updatedMillis = updateStatus != null Loading @@ -70,7 +70,7 @@ public class ClientsDocumentWriter implements DocumentWriter { } SortedSet<ClientsHistory> history = clientsStatus.getHistory(); ClientsDocument clientsDocument = this.compileClientsDocument( hashedFingerprint, lastSeenMillis, history); hashedFingerprint, mostRecentStatusMillis, history); this.documentStore.store(clientsDocument, hashedFingerprint); this.writtenDocuments++; } Loading Loading @@ -99,10 +99,10 @@ public class ClientsDocumentWriter implements DocumentWriter { DateTimeHelper.TEN_DAYS }; private ClientsDocument compileClientsDocument(String hashedFingerprint, long lastSeenMillis, SortedSet<ClientsHistory> history) { long mostRecentStatusMillis, SortedSet<ClientsHistory> history) { ClientsDocument clientsDocument = new ClientsDocument(); clientsDocument.setFingerprint(hashedFingerprint); GraphHistoryCompiler ghc = new GraphHistoryCompiler(lastSeenMillis GraphHistoryCompiler ghc = new GraphHistoryCompiler(mostRecentStatusMillis + DateTimeHelper.ONE_HOUR); ghc.setThreshold(2L); for (int i = 0; i < this.graphIntervals.length; i++) { Loading
src/main/java/org/torproject/onionoo/writer/DetailsDocumentWriter.java +1 −1 Original line number Diff line number Diff line Loading @@ -32,7 +32,7 @@ public class DetailsDocumentWriter implements DocumentWriter { } @Override public void writeDocuments(long lastSeenMillis) { public void writeDocuments(long mostRecentStatusMillis) { UpdateStatus updateStatus = this.documentStore.retrieve( UpdateStatus.class, true); long updatedMillis = updateStatus != null Loading
src/main/java/org/torproject/onionoo/writer/DocumentWriter.java +1 −1 Original line number Diff line number Diff line Loading @@ -5,7 +5,7 @@ package org.torproject.onionoo.writer; public interface DocumentWriter { public abstract void writeDocuments(long lastSeenMillis); public abstract void writeDocuments(long mostRecentStatusMillis); public abstract String getStatsString(); } Loading
src/main/java/org/torproject/onionoo/writer/DocumentWriterRunner.java +7 −6 Original line number Diff line number Diff line Loading @@ -32,22 +32,23 @@ public class DocumentWriterRunner { /** Lets each configured document writer write its documents. */ public void writeDocuments() { long lastSeenMillis = retrieveLastSeenMillis(); long mostRecentStatusMillis = retrieveMostRecentStatusMillis(); for (DocumentWriter dw : this.documentWriters) { log.debug("Writing " + dw.getClass().getSimpleName()); dw.writeDocuments(lastSeenMillis); dw.writeDocuments(mostRecentStatusMillis); } } private long retrieveLastSeenMillis() { private long retrieveMostRecentStatusMillis() { DocumentStore documentStore = DocumentStoreFactory.getDocumentStore(); long lastSeenMillis = -1L; long mostRecentStatusMillis = -1L; for (String fingerprint : documentStore.list(NodeStatus.class)) { NodeStatus nodeStatus = documentStore.retrieve( NodeStatus.class, true, fingerprint); lastSeenMillis = Math.max(lastSeenMillis, nodeStatus.getLastSeenMillis()); mostRecentStatusMillis = Math.max(mostRecentStatusMillis, nodeStatus.getLastSeenMillis()); } return lastSeenMillis; return mostRecentStatusMillis; } /** Logs statistics of all configured document writers. */ Loading