From e69d652c50aa376c2bf3a7ba35138982abff65d6 Mon Sep 17 00:00:00 2001 From: You Yong Date: Wed, 25 Jul 2012 12:15:45 +0800 Subject: [PATCH] modify the test case and delete the in memory queue --- .../cat/build/ComponentsConfigurator.java | 9 --- .../internal/DefaultMessageManager.java | 15 ++-- .../message/io/DefaultTransportManager.java | 10 +-- .../cat/message/io/InMemoryQueue.java | 71 ------------------ .../cat/message/io/InMemoryReceiver.java | 50 ------------- .../cat/message/io/InMemorySender.java | 43 ----------- .../message/io/TcpSocketHierarchySender.java | 10 +-- .../cat/message/io/TcpSocketSender.java | 14 ++-- .../message/spi/AbstractMessageAnalyzer.java | 2 + .../resources/META-INF/plexus/components.xml | 24 ------ .../test/java/com/dianping/cat/AllTests.java | 3 - .../test/java/com/dianping/cat/CatTest.java | 2 +- .../dianping/cat/log4j/CatAppenderTest.java | 2 + .../com/dianping/cat/message/EventTest.java | 2 +- .../dianping/cat/message/HeartbeatTest.java | 2 +- .../dianping/cat/message/TransactionTest.java | 2 +- .../dianping/cat/message/io/InMemoryTest.java | 73 ------------------- .../cat/job/sql/SqlJobDataProduceTest.java | 6 +- .../report/page/AbstractReportPayload.java | 5 +- .../dianping/cat/report/page/ip/Handler.java | 1 - .../cat/report/page/trend/GraphItem.java | 44 +++++------ .../java/com/dianping/cat/SimpleServer.java | 18 +++++ .../report/page/transaction/PayloadTest.java | 17 +++-- pom.xml | 2 +- 24 files changed, 86 insertions(+), 341 deletions(-) delete mode 100644 cat-core/src/main/java/com/dianping/cat/message/io/InMemoryQueue.java delete mode 100644 cat-core/src/main/java/com/dianping/cat/message/io/InMemoryReceiver.java delete mode 100644 cat-core/src/main/java/com/dianping/cat/message/io/InMemorySender.java delete mode 100644 cat-core/src/test/java/com/dianping/cat/message/io/InMemoryTest.java create mode 100644 cat-home/src/test/java/com/dianping/cat/SimpleServer.java diff --git a/cat-core/src/main/java/com/dianping/cat/build/ComponentsConfigurator.java b/cat-core/src/main/java/com/dianping/cat/build/ComponentsConfigurator.java index ccbf7fb51..da09ba4e3 100644 --- a/cat-core/src/main/java/com/dianping/cat/build/ComponentsConfigurator.java +++ b/cat-core/src/main/java/com/dianping/cat/build/ComponentsConfigurator.java @@ -13,9 +13,6 @@ import com.dianping.cat.message.internal.DefaultMessageProducer; import com.dianping.cat.message.internal.MessageIdFactory; import com.dianping.cat.message.io.DefaultMessageQueue; import com.dianping.cat.message.io.DefaultTransportManager; -import com.dianping.cat.message.io.InMemoryQueue; -import com.dianping.cat.message.io.InMemoryReceiver; -import com.dianping.cat.message.io.InMemorySender; import com.dianping.cat.message.io.MessageReceiver; import com.dianping.cat.message.io.MessageSender; import com.dianping.cat.message.io.TcpSocketHierarchySender; @@ -57,12 +54,6 @@ public class ComponentsConfigurator extends AbstractResourceConfigurator { all.add(C(ClientConfigManager.class)); all.add(C(ServerConfigManager.class)); - all.add(C(InMemoryQueue.class)); - all.add(C(MessageSender.class, "in-memory", InMemorySender.class) // - .req(InMemoryQueue.class)); - all.add(C(MessageReceiver.class, "in-memory", InMemoryReceiver.class) // - .req(InMemoryQueue.class)); - all.add(C(MessageManager.class, DefaultMessageManager.class) // .req(ClientConfigManager.class, TransportManager.class, MessageStatistics.class)); all.add(C(MessageProducer.class, DefaultMessageProducer.class) // diff --git a/cat-core/src/main/java/com/dianping/cat/message/internal/DefaultMessageManager.java b/cat-core/src/main/java/com/dianping/cat/message/internal/DefaultMessageManager.java index 275dea495..1a627afb8 100644 --- a/cat-core/src/main/java/com/dianping/cat/message/internal/DefaultMessageManager.java +++ b/cat-core/src/main/java/com/dianping/cat/message/internal/DefaultMessageManager.java @@ -35,7 +35,7 @@ public class DefaultMessageManager extends ContainerHolder implements MessageMan private MessageIdFactory m_factory; - private long m_throttleTimes = 9999; + private long m_throttleTimes = 0; // we don't use static modifier since MessageManager is a singleton in // production actually @@ -90,8 +90,8 @@ public class DefaultMessageManager extends ContainerHolder implements MessageMan } } else { m_throttleTimes++; - - if (m_throttleTimes % 10000 == 0) { + + if (m_throttleTimes % 10000 == 0 || m_throttleTimes == 1) { m_logger.info("Cat Message is throttled! Times:" + m_throttleTimes); } } @@ -189,10 +189,11 @@ public class DefaultMessageManager extends ContainerHolder implements MessageMan } return false; - - //if (tree.getMessage() != null && "Heartbeat".equals(tree.getMessage().getName())) { - // return false; - //} + + // if (tree.getMessage() != null && + // "Heartbeat".equals(tree.getMessage().getName())) { + // return false; + // } // int threadCount = ManagementFactory.getThreadMXBean().getThreadCount(); // return threadCount > m_domain.getMaxThreads(); } diff --git a/cat-core/src/main/java/com/dianping/cat/message/io/DefaultTransportManager.java b/cat-core/src/main/java/com/dianping/cat/message/io/DefaultTransportManager.java index 5a036b5a6..ade08cd3c 100644 --- a/cat-core/src/main/java/com/dianping/cat/message/io/DefaultTransportManager.java +++ b/cat-core/src/main/java/com/dianping/cat/message/io/DefaultTransportManager.java @@ -24,10 +24,6 @@ public class DefaultTransportManager extends ContainerHolder implements Transpor @Override public MessageSender getSender() { - if (m_sender == null) { - throw new RuntimeException("Server mode only, no sender is provided!"); - } - return m_sender; } @@ -36,12 +32,12 @@ public class DefaultTransportManager extends ContainerHolder implements Transpor List servers = m_configManager.getServers(); if (!m_configManager.isCatEnabled()) { - m_sender = lookup(MessageSender.class, "in-memory"); + m_sender = null; if (m_configManager.isInitialized()) { - m_logger.warn("CAT was DISABLED explicitly, an in-memory sender used instead!"); + m_logger.warn("CAT was DISABLED explicitly!"); } else { - m_logger.warn("CAT was DISABLED due to not initialized yet, an in-memory sender used instead!"); + m_logger.warn("CAT was DISABLED due to not initialized yet!"); } } else { List addresses = new ArrayList(); diff --git a/cat-core/src/main/java/com/dianping/cat/message/io/InMemoryQueue.java b/cat-core/src/main/java/com/dianping/cat/message/io/InMemoryQueue.java deleted file mode 100644 index 78176716b..000000000 --- a/cat-core/src/main/java/com/dianping/cat/message/io/InMemoryQueue.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.dianping.cat.message.io; - -import java.util.concurrent.BlockingQueue; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.TimeUnit; - -import org.codehaus.plexus.logging.LogEnabled; -import org.codehaus.plexus.logging.Logger; -import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; -import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; - -import com.dianping.cat.message.spi.MessageTree; - -public class InMemoryQueue implements LogEnabled, Initializable { - private BlockingQueue m_queue; - - private int m_queueSize; - - private Logger m_logger; - - @Override - public void enableLogging(Logger logger) { - m_logger = logger; - } - - @Override - public void initialize() throws InitializationException { - if (m_queueSize <= 0) { - m_queue = new LinkedBlockingQueue(1000); - } else { - m_queue = new LinkedBlockingQueue(m_queueSize); - } - } - - public void offer(MessageTree tree) { - while (!m_queue.offer(tree)) { - // throw away the tree at the tail - MessageTree m = m_queue.poll(); - - if (m == null) { - break; - } else { - m_logger.warn(tree + " was thrown away due to queue is full!"); - } - } - } - - public MessageTree peek() { - return m_queue.peek(); - } - - public MessageTree poll(long timeout) throws InterruptedException { - if (timeout <= 0) { - return m_queue.poll(); - } else { - return m_queue.poll(timeout, TimeUnit.MILLISECONDS); - } - } - - public void setQueueSize(int queueSize) { - m_queueSize = queueSize; - } - - public int size() { - return m_queue.size(); - } - - public void clear() { - m_queue.clear(); - } -} diff --git a/cat-core/src/main/java/com/dianping/cat/message/io/InMemoryReceiver.java b/cat-core/src/main/java/com/dianping/cat/message/io/InMemoryReceiver.java deleted file mode 100644 index 48f1b1a73..000000000 --- a/cat-core/src/main/java/com/dianping/cat/message/io/InMemoryReceiver.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.dianping.cat.message.io; - -import com.dianping.cat.message.spi.MessageHandler; -import com.dianping.cat.message.spi.MessageTree; -import com.site.lookup.annotation.Inject; - -public class InMemoryReceiver implements MessageReceiver { - @Inject - private InMemoryQueue m_queue; - - private transient boolean m_active = true; - - @Override - public void initialize() { - } - - public boolean isActive() { - synchronized (this) { - return m_active; - } - } - - @Override - public void onMessage(MessageHandler handler) { - try { - while (true) { - MessageTree tree = m_queue.poll(1); - - if (tree != null) { - handler.handle(tree); - } else if (!isActive()) { - break; - } - } - } catch (InterruptedException e) { - // ignore it - } - } - - public void setQueue(InMemoryQueue queue) { - m_queue = queue; - } - - @Override - public void shutdown() { - synchronized (this) { - m_active = false; - } - } -} diff --git a/cat-core/src/main/java/com/dianping/cat/message/io/InMemorySender.java b/cat-core/src/main/java/com/dianping/cat/message/io/InMemorySender.java deleted file mode 100644 index 888b591d1..000000000 --- a/cat-core/src/main/java/com/dianping/cat/message/io/InMemorySender.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.dianping.cat.message.io; - -import com.dianping.cat.message.spi.MessageTree; -import com.site.lookup.annotation.Inject; - -public class InMemorySender implements MessageSender { - @Inject - private InMemoryQueue m_queue; - - private transient boolean m_active = true; - - public InMemoryQueue getQueue() { - return m_queue; - } - - @Override - public void initialize() { - } - - public boolean isActive() { - synchronized (this) { - return m_active; - } - } - - @Override - public void send(MessageTree tree) { - if (isActive()) { - m_queue.offer(tree); - } - } - - public void setQueue(InMemoryQueue queue) { - m_queue = queue; - } - - @Override - public void shutdown() { - synchronized (this) { - m_active = false; - } - } -} diff --git a/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketHierarchySender.java b/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketHierarchySender.java index 92687a313..7a390a67e 100644 --- a/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketHierarchySender.java +++ b/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketHierarchySender.java @@ -49,9 +49,9 @@ public class TcpSocketHierarchySender implements Task, MessageSender, LogEnabled private transient boolean m_active; - private AtomicInteger m_errors = new AtomicInteger(999); + private AtomicInteger m_errors = new AtomicInteger(); - private AtomicInteger m_attempts = new AtomicInteger(999); + private AtomicInteger m_attempts = new AtomicInteger(); boolean checkWritable(ChannelFuture future) { boolean isWriteable = false; @@ -62,7 +62,7 @@ public class TcpSocketHierarchySender implements Task, MessageSender, LogEnabled } else { int count = m_attempts.incrementAndGet(); - if (count % 1000 == 0) { + if (count % 1000 == 0 || count == 1) { m_logger.error("Netty write buffer is full! Attempts: " + count); } } @@ -131,7 +131,7 @@ public class TcpSocketHierarchySender implements Task, MessageSender, LogEnabled int count = m_errors.incrementAndGet(); - if (count % 1000 == 0) { + if (count % 1000 == 0 || count == 1) { m_logger.error("Message queue is full in tcp socket sender! Count: " + count); } } @@ -228,7 +228,7 @@ public class TcpSocketHierarchySender implements Task, MessageSender, LogEnabled if (!future.isSuccess()) { future.getChannel().getCloseFuture().awaitUninterruptibly(); int count = m_reconnects.incrementAndGet(); - + if (count % 1000 == 0) { m_logger.error("Error when try to connecting to " + address + ", message: " + future.getCause()); } diff --git a/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketSender.java b/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketSender.java index 07d4ee206..584560f1d 100644 --- a/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketSender.java +++ b/cat-core/src/main/java/com/dianping/cat/message/io/TcpSocketSender.java @@ -54,11 +54,11 @@ public class TcpSocketSender implements Task, MessageSender, LogEnabled { private transient boolean m_active; - private AtomicInteger m_errors = new AtomicInteger(999); + private AtomicInteger m_errors = new AtomicInteger(); - private AtomicInteger m_attempts = new AtomicInteger(999); + private AtomicInteger m_attempts = new AtomicInteger(); - private AtomicInteger m_reconnects = new AtomicInteger(999); + private AtomicInteger m_reconnects = new AtomicInteger(); @Override public void enableLogging(Logger logger) { @@ -117,8 +117,8 @@ public class TcpSocketSender implements Task, MessageSender, LogEnabled { if (!future.isSuccess()) { int count = m_reconnects.incrementAndGet(); - - if (count % 1000 == 0) { + + if (count % 1000 == 0 || count == 1) { m_logger.error("Error when reconnecting to " + m_serverAddress, future.getCause()); } } else { @@ -175,7 +175,7 @@ public class TcpSocketSender implements Task, MessageSender, LogEnabled { } else { int count = m_attempts.incrementAndGet(); - if (count % 1000 == 0) { + if (count % 1000 == 0 || count == 1) { m_logger.error("Netty write buffer is full! Attempts: " + count); } } @@ -195,7 +195,7 @@ public class TcpSocketSender implements Task, MessageSender, LogEnabled { int count = m_errors.incrementAndGet(); - if (count % 1000 == 0) { + if (count % 1000 == 0 || count == 1) { m_logger.error("Message queue is full in tcp socket sender! Count: " + count); } } diff --git a/cat-core/src/main/java/com/dianping/cat/message/spi/AbstractMessageAnalyzer.java b/cat-core/src/main/java/com/dianping/cat/message/spi/AbstractMessageAnalyzer.java index 48d868b76..ba7a6ea67 100644 --- a/cat-core/src/main/java/com/dianping/cat/message/spi/AbstractMessageAnalyzer.java +++ b/cat-core/src/main/java/com/dianping/cat/message/spi/AbstractMessageAnalyzer.java @@ -20,6 +20,7 @@ public abstract class AbstractMessageAnalyzer extends ContainerHolder impleme process(tree); } catch (Throwable e) { m_errors++; + if (m_errors % 10000 == 0) { e.printStackTrace(); } @@ -35,6 +36,7 @@ public abstract class AbstractMessageAnalyzer extends ContainerHolder impleme process(tree); } catch (Throwable e) { m_errors++; + if (m_errors % 10000 == 0) { e.printStackTrace(); } diff --git a/cat-core/src/main/resources/META-INF/plexus/components.xml b/cat-core/src/main/resources/META-INF/plexus/components.xml index 3c4009a4a..1172dc416 100644 --- a/cat-core/src/main/resources/META-INF/plexus/components.xml +++ b/cat-core/src/main/resources/META-INF/plexus/components.xml @@ -8,30 +8,6 @@ com.dianping.cat.configuration.ServerConfigManager com.dianping.cat.configuration.ServerConfigManager - - com.dianping.cat.message.io.InMemoryQueue - com.dianping.cat.message.io.InMemoryQueue - - - com.dianping.cat.message.io.MessageSender - in-memory - com.dianping.cat.message.io.InMemorySender - - - com.dianping.cat.message.io.InMemoryQueue - - - - - com.dianping.cat.message.io.MessageReceiver - in-memory - com.dianping.cat.message.io.InMemoryReceiver - - - com.dianping.cat.message.io.InMemoryQueue - - - com.dianping.cat.message.spi.MessageManager com.dianping.cat.message.internal.DefaultMessageManager diff --git a/cat-core/src/test/java/com/dianping/cat/AllTests.java b/cat-core/src/test/java/com/dianping/cat/AllTests.java index 00329b5be..8e293a502 100644 --- a/cat-core/src/test/java/com/dianping/cat/AllTests.java +++ b/cat-core/src/test/java/com/dianping/cat/AllTests.java @@ -11,7 +11,6 @@ import com.dianping.cat.message.TransactionTest; import com.dianping.cat.message.configuration.ClientConfigTest; import com.dianping.cat.message.internal.MessageIdFactoryTest; import com.dianping.cat.message.internal.MillisSecondTimerTest; -import com.dianping.cat.message.io.InMemoryTest; import com.dianping.cat.message.io.TcpSocketTest; import com.dianping.cat.message.spi.codec.HtmlMessageCodecTest; import com.dianping.cat.message.spi.codec.PlainTextMessageCodecTest; @@ -48,8 +47,6 @@ MillisSecondTimerTest.class, DefaultMessagePathBuilderTest.class, /* .io */ -InMemoryTest.class, - TcpSocketTest.class, /* .spi.codec */ diff --git a/cat-core/src/test/java/com/dianping/cat/CatTest.java b/cat-core/src/test/java/com/dianping/cat/CatTest.java index 75121a4d2..597e2bc22 100644 --- a/cat-core/src/test/java/com/dianping/cat/CatTest.java +++ b/cat-core/src/test/java/com/dianping/cat/CatTest.java @@ -43,7 +43,7 @@ public class CatTest { } @Test - public void testWithoutGlobalConfigInitialize() throws InterruptedException { + public void testWithNoExistGlobalConfigInitialize() throws InterruptedException { Cat.initialize(new File("/data/appdatas/cat/clientNoExist.xml")); MessageProducer cat = Cat.getProducer(); Transaction t = cat.newTransaction("TestType", "TestName"); diff --git a/cat-core/src/test/java/com/dianping/cat/log4j/CatAppenderTest.java b/cat-core/src/test/java/com/dianping/cat/log4j/CatAppenderTest.java index 983f4cb11..7a4ae5d8a 100644 --- a/cat-core/src/test/java/com/dianping/cat/log4j/CatAppenderTest.java +++ b/cat-core/src/test/java/com/dianping/cat/log4j/CatAppenderTest.java @@ -13,6 +13,7 @@ import com.dianping.cat.message.Transaction; public class CatAppenderTest { @Test public void testWithTransaction() throws InterruptedException { + Cat.destroy(); CatAppender appender = new CatAppender(); Throwable throwable = new Exception(); Category logger = Logger.getLogger(CatAppenderTest.class); @@ -29,6 +30,7 @@ public class CatAppenderTest { @Test public void testWithoutTransaction() throws InterruptedException { + Cat.destroy(); CatAppender appender = new CatAppender(); Throwable throwable = new Exception(); Category logger = Logger.getLogger(CatAppenderTest.class); diff --git a/cat-core/src/test/java/com/dianping/cat/message/EventTest.java b/cat-core/src/test/java/com/dianping/cat/message/EventTest.java index cbfcfc694..05946af34 100644 --- a/cat-core/src/test/java/com/dianping/cat/message/EventTest.java +++ b/cat-core/src/test/java/com/dianping/cat/message/EventTest.java @@ -7,7 +7,7 @@ import org.junit.runners.JUnit4; import com.dianping.cat.Cat; @RunWith(JUnit4.class) -public class EventTest extends CatTestCase { +public class EventTest{ @Test public void testNormal() { Event event = Cat.getProducer().newEvent("Review", "New"); diff --git a/cat-core/src/test/java/com/dianping/cat/message/HeartbeatTest.java b/cat-core/src/test/java/com/dianping/cat/message/HeartbeatTest.java index 74c75c9af..c8735b80e 100644 --- a/cat-core/src/test/java/com/dianping/cat/message/HeartbeatTest.java +++ b/cat-core/src/test/java/com/dianping/cat/message/HeartbeatTest.java @@ -7,7 +7,7 @@ import org.junit.runners.JUnit4; import com.dianping.cat.Cat; @RunWith(JUnit4.class) -public class HeartbeatTest extends CatTestCase { +public class HeartbeatTest{ @Test public void testInOneShot() { Cat.getProducer().logHeartbeat("System", "Status", "0", diff --git a/cat-core/src/test/java/com/dianping/cat/message/TransactionTest.java b/cat-core/src/test/java/com/dianping/cat/message/TransactionTest.java index aa7f1861a..1bc54bac1 100644 --- a/cat-core/src/test/java/com/dianping/cat/message/TransactionTest.java +++ b/cat-core/src/test/java/com/dianping/cat/message/TransactionTest.java @@ -7,7 +7,7 @@ import org.junit.runners.JUnit4; import com.dianping.cat.Cat; @RunWith(JUnit4.class) -public class TransactionTest extends CatTestCase { +public class TransactionTest{ @Test public void testNormal() { Transaction t = Cat.getProducer().newTransaction("URL", "MyPage"); diff --git a/cat-core/src/test/java/com/dianping/cat/message/io/InMemoryTest.java b/cat-core/src/test/java/com/dianping/cat/message/io/InMemoryTest.java deleted file mode 100644 index fc22640bc..000000000 --- a/cat-core/src/test/java/com/dianping/cat/message/io/InMemoryTest.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.dianping.cat.message.io; - -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.Future; - -import junit.framework.Assert; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.JUnit4; - -import com.dianping.cat.message.spi.MessageHandler; -import com.dianping.cat.message.spi.MessageTree; -import com.dianping.cat.message.spi.internal.DefaultMessageTree; -import com.site.lookup.ComponentTestCase; - -@RunWith(JUnit4.class) -public class InMemoryTest extends ComponentTestCase { - @Test - public void test() throws Exception { - final MessageSender sender = lookup(MessageSender.class, "in-memory"); - final MessageReceiver receiver = lookup(MessageReceiver.class, "in-memory"); - final int len = 1000; - final StringBuilder sb = new StringBuilder(len); - ExecutorService pool = Executors.newFixedThreadPool(3); - List> futures = new ArrayList>(); - - futures.add(pool.submit(new Runnable() { - @Override - public void run() { - receiver.initialize(); - receiver.onMessage(new MockMessageHandler(sb)); - } - })); - futures.add(pool.submit(new Runnable() { - @Override - public void run() { - sender.initialize(); - - for (int i = 0; i < len; i++) { - sender.send(new DefaultMessageTree()); - } - - sender.shutdown(); - receiver.shutdown(); - } - })); - - for (Future future : futures) { - future.get(); - } - - pool.shutdown(); - - Assert.assertEquals(len, sb.length()); - } - - static class MockMessageHandler implements MessageHandler { - private StringBuilder m_sb; - - public MockMessageHandler(StringBuilder sb) { - m_sb = sb; - } - - @Override - public void handle(MessageTree tree) { - m_sb.append('.'); - } - } -} diff --git a/cat-hadoop/src/test/java/com/dianping/cat/job/sql/SqlJobDataProduceTest.java b/cat-hadoop/src/test/java/com/dianping/cat/job/sql/SqlJobDataProduceTest.java index 5ce7c9491..534b92c65 100644 --- a/cat-hadoop/src/test/java/com/dianping/cat/job/sql/SqlJobDataProduceTest.java +++ b/cat-hadoop/src/test/java/com/dianping/cat/job/sql/SqlJobDataProduceTest.java @@ -10,9 +10,9 @@ import com.dianping.cat.message.MessageProducer; import com.dianping.cat.message.Transaction; import com.dianping.cat.message.internal.DefaultTransaction; import com.dianping.cat.message.io.DefaultTransportManager; -import com.dianping.cat.message.io.InMemoryQueue; import com.dianping.cat.message.io.MessageSender; import com.dianping.cat.message.io.TransportManager; +import com.dianping.cat.message.spi.MessageQueue; import com.dianping.cat.message.spi.MessageStorage; import com.dianping.cat.message.spi.MessageTree; import com.site.helper.Stringizers; @@ -26,7 +26,7 @@ public class SqlJobDataProduceTest extends CatTestCase { DefaultTransportManager transport = (DefaultTransportManager) lookup(TransportManager.class); MessageSender messageSender = lookup(MessageSender.class, "in-memory"); transport.setSender(messageSender); - InMemoryQueue queue = lookup(InMemoryQueue.class); + MessageQueue queue = lookup(MessageQueue.class); long currentTimeMillis = System.currentTimeMillis(); long currentHour = currentTimeMillis - currentTimeMillis % (60 * 60 * 1000); @@ -76,7 +76,7 @@ public class SqlJobDataProduceTest extends CatTestCase { } finally { t.complete(); } - MessageTree tree = queue.poll(0); + MessageTree tree = queue.poll(); tree.setDomain("domain" + i); storage.store(tree); } diff --git a/cat-home/src/main/java/com/dianping/cat/report/page/AbstractReportPayload.java b/cat-home/src/main/java/com/dianping/cat/report/page/AbstractReportPayload.java index af10c191f..55b843d16 100755 --- a/cat-home/src/main/java/com/dianping/cat/report/page/AbstractReportPayload.java +++ b/cat-home/src/main/java/com/dianping/cat/report/page/AbstractReportPayload.java @@ -59,8 +59,7 @@ public abstract class AbstractReportPayload implements ActionP cal.set(Calendar.DATE, 1); m_date = cal.getTimeInMillis(); } else if ("week".equals(m_reportType)) { - m_date = m_date - (ONE_HOUR) * (weekOfDay - 1) * 24; - m_date = m_date + ONE_HOUR * 24; + m_date = m_date - (ONE_HOUR) * (weekOfDay % 7) * 24; if (m_date > System.currentTimeMillis()) { m_date = m_date - 7 * 24 * ONE_HOUR; } @@ -130,7 +129,7 @@ public abstract class AbstractReportPayload implements ActionP int maxDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH); temp = m_date + maxDay * (ONE_HOUR * 24); } else if ("week".equals(m_reportType)) { - temp = m_date + 8 * (ONE_HOUR * 24); + temp = m_date + 7 * (ONE_HOUR * 24); } else { temp = m_date + (ONE_HOUR * 24); } diff --git a/cat-home/src/main/java/com/dianping/cat/report/page/ip/Handler.java b/cat-home/src/main/java/com/dianping/cat/report/page/ip/Handler.java index c7cfaf59e..d2e5f2953 100755 --- a/cat-home/src/main/java/com/dianping/cat/report/page/ip/Handler.java +++ b/cat-home/src/main/java/com/dianping/cat/report/page/ip/Handler.java @@ -99,7 +99,6 @@ public class Handler implements PageHandler { case MOBILE_IP: String ip = payload.getIp(); String location = IPSeekerManager.getLocation(ip); - System.out.println(ip + ":" + location); model.setMobileResponse(location); break; } diff --git a/cat-home/src/main/java/com/dianping/cat/report/page/trend/GraphItem.java b/cat-home/src/main/java/com/dianping/cat/report/page/trend/GraphItem.java index f321142f2..9e5f9e4e5 100644 --- a/cat-home/src/main/java/com/dianping/cat/report/page/trend/GraphItem.java +++ b/cat-home/src/main/java/com/dianping/cat/report/page/trend/GraphItem.java @@ -10,29 +10,29 @@ import com.google.gson.Gson; public class GraphItem { - private double[] ylable; + private double[] m_ylable; - private String titles; + private String m_titles; - private String start; + private String m_start; - private int size; + private int m_size; - private List subTitles = new ArrayList(); + private List m_subTitles = new ArrayList(); - private List values = new ArrayList(); + private List m_values = new ArrayList(); private transient SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm"); public GraphItem() { } public GraphItem addSubTitle(String title) { - subTitles.add(title); + m_subTitles.add(title); return this; } public GraphItem addValue(double[] value) { - values.add(value); + m_values.add(value); return this; } @@ -42,58 +42,58 @@ public class GraphItem { } public String getStart() { - return start; + return m_start; } public void setStart(Date start) { - this.start = sdf.format(start); + m_start = sdf.format(start); } public int getSize() { - return size; + return m_size; } public void setSize(int size) { - this.size = size; + m_size = size; } public void setStart(String start) { - this.start = start; + m_start = start; } public double[] getYlable() { - return ylable; + return m_ylable; } public void setYlable(double[] ylable) { if (ylable == null) { - this.ylable = new double[0]; + m_ylable = new double[0]; } else { - this.ylable = Arrays.copyOf(ylable, ylable.length); + m_ylable = Arrays.copyOf(ylable, ylable.length); } } public String getTitles() { - return titles; + return m_titles; } public void setTitles(String titles) { - this.titles = titles; + m_titles = titles; } public List getSubTitles() { - return subTitles; + return m_subTitles; } public void setSubTitles(List subTitles) { - this.subTitles = subTitles; + m_subTitles = subTitles; } public List getValues() { - return values; + return m_values; } public void setValues(List values) { - this.values = values; + m_values = values; } } diff --git a/cat-home/src/test/java/com/dianping/cat/SimpleServer.java b/cat-home/src/test/java/com/dianping/cat/SimpleServer.java new file mode 100644 index 000000000..5bd312870 --- /dev/null +++ b/cat-home/src/test/java/com/dianping/cat/SimpleServer.java @@ -0,0 +1,18 @@ +package com.dianping.cat; + +import org.mortbay.jetty.Server; +import org.mortbay.jetty.webapp.WebAppContext; + +public class SimpleServer { + public static void main(String[] args) throws Exception { + Server server = new Server(2281); + WebAppContext context = new WebAppContext(); + + context.setContextPath("/cat"); + context.setDescriptor("src/main/webapp/WEB-INF/web.xml"); + context.setResourceBase("src/main/webapp"); + server.setHandler(context); + server.start(); + server.join(); + } +} diff --git a/cat-home/src/test/java/com/dianping/cat/report/page/transaction/PayloadTest.java b/cat-home/src/test/java/com/dianping/cat/report/page/transaction/PayloadTest.java index 0e257c12f..4438fc994 100755 --- a/cat-home/src/test/java/com/dianping/cat/report/page/transaction/PayloadTest.java +++ b/cat-home/src/test/java/com/dianping/cat/report/page/transaction/PayloadTest.java @@ -125,9 +125,7 @@ public class PayloadTest { temp = cal.getTimeInMillis(); int weekOfDay = cal.get(Calendar.DAY_OF_WEEK); - - temp = temp - 24 * (weekOfDay - 1) * ONE_HOUR; - temp = temp + 24 * ONE_HOUR; + temp = temp - 24 * (weekOfDay) * ONE_HOUR; if (temp > System.currentTimeMillis()) { temp = temp - 7 * ONE_DAY; } @@ -138,30 +136,33 @@ public class PayloadTest { String lastOne = sdf.format(lastOneWeek); String current = sdf.format(currentWeek); + System.out.println(current); + System.out.println(lastOne); + System.out.println(lastTwo); payload.setDate(sdf.format(input)); payload.setStep(-1); payload.computeStartDate(); checkDate(lastOne, payload.getHistoryStartDate()); - checkDate(sdf.format(new Date(lastOneWeek.getTime() + 8 * ONE_DAY)), payload.getHistoryEndDate()); + checkDate(sdf.format(new Date(lastOneWeek.getTime() + 7 * ONE_DAY)), payload.getHistoryEndDate()); payload.computeStartDate(); checkDate(lastTwo, payload.getHistoryStartDate()); - checkDate(sdf.format(new Date(lastTwoWeek.getTime() + 8 * ONE_DAY)), payload.getHistoryEndDate()); + checkDate(sdf.format(new Date(lastTwoWeek.getTime() + 7 * ONE_DAY)), payload.getHistoryEndDate()); payload.setStep(1); payload.computeStartDate(); checkDate(lastOne, payload.getHistoryStartDate()); - checkDate(sdf.format(new Date(lastOneWeek.getTime() + 8 * ONE_DAY)), payload.getHistoryEndDate()); + checkDate(sdf.format(new Date(lastOneWeek.getTime() + 7 * ONE_DAY)), payload.getHistoryEndDate()); payload.computeStartDate(); payload.setStep(1); checkDate(current, payload.getHistoryStartDate()); - checkDate(sdf.format(currentWeek.getTime() + 8 * ONE_DAY), payload.getHistoryEndDate()); + checkDate(sdf.format(currentWeek.getTime() + 7 * ONE_DAY), payload.getHistoryEndDate()); payload.computeStartDate(); checkDate(current, payload.getHistoryStartDate()); - checkDate(sdf.format(currentWeek.getTime() + 8 * ONE_DAY), payload.getHistoryEndDate()); + checkDate(sdf.format(currentWeek.getTime() + 7 * ONE_DAY), payload.getHistoryEndDate()); } @Test diff --git a/pom.xml b/pom.xml index 860b23b15..c95cff3c3 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.dianping.cat parent 0.3.4 - arch-CAT + arch-cat pom cat-core -- GitLab