You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2019/03/14 15:04:03 UTC

[james-project] 04/04: JAMES-2544 dequeueTime time is always 0 now that the queue is reactive

This is an automated email from the ASF dual-hosted git repository.

btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 60c7f631d3e2c30b765deec2dbd16da20ff5ee91
Author: Matthieu Baechler <ma...@apache.org>
AuthorDate: Mon Mar 11 16:13:41 2019 +0100

    JAMES-2544 dequeueTime time is always 0 now that the queue is reactive
---
 .../MailQueue-1490071879988-dashboard.json         | 226 ---------------------
 .../java/org/apache/james/queue/api/MailQueue.java |   1 -
 .../james/queue/api/MailQueueMetricContract.java   |  28 ---
 .../james/queue/api/MailQueueMetricExtension.java  |   3 -
 .../org/apache/james/queue/jms/JMSMailQueue.java   |   3 -
 5 files changed, 261 deletions(-)

diff --git a/grafana-reporting/MailQueue-1490071879988-dashboard.json b/grafana-reporting/MailQueue-1490071879988-dashboard.json
index 01c16a4..af03b4d 100644
--- a/grafana-reporting/MailQueue-1490071879988-dashboard.json
+++ b/grafana-reporting/MailQueue-1490071879988-dashboard.json
@@ -49,119 +49,6 @@
           "bars": false,
           "datasource": "${DS_JAMES_ES}",
           "fill": 1,
-          "id": 23,
-          "legend": {
-            "avg": false,
-            "current": false,
-            "max": false,
-            "min": false,
-            "show": true,
-            "total": false,
-            "values": false
-          },
-          "lines": true,
-          "linewidth": 1,
-          "links": [],
-          "nullPointMode": "connected",
-          "percentage": false,
-          "pointradius": 5,
-          "points": false,
-          "renderer": "flot",
-          "seriesOverrides": [],
-          "span": 2,
-          "stack": false,
-          "steppedLine": false,
-          "targets": [
-            {
-              "bucketAggs": [
-                {
-                  "field": "@timestamp",
-                  "id": "2",
-                  "settings": {
-                    "interval": "auto",
-                    "min_doc_count": 0,
-                    "trimEdges": 0
-                  },
-                  "type": "date_histogram"
-                }
-              ],
-              "dsType": "elasticsearch",
-              "metrics": [
-                {
-                  "field": "p99",
-                  "id": "1",
-                  "meta": {},
-                  "pipelineAgg": "3",
-                  "settings": {},
-                  "type": "avg"
-                },
-                {
-                  "field": "p50",
-                  "id": "3",
-                  "meta": {},
-                  "settings": {},
-                  "type": "avg"
-                },
-                {
-                  "field": "p75",
-                  "id": "4",
-                  "meta": {},
-                  "settings": {},
-                  "type": "avg"
-                },
-                {
-                  "field": "p95",
-                  "id": "5",
-                  "meta": {},
-                  "settings": {},
-                  "type": "avg"
-                }
-              ],
-              "query": "name:\"dequeueTime:spool\"",
-              "refId": "A",
-              "timeField": "@timestamp"
-            }
-          ],
-          "thresholds": [],
-          "timeFrom": null,
-          "timeShift": null,
-          "title": "dequeueTime:spool",
-          "tooltip": {
-            "shared": true,
-            "sort": 0,
-            "value_type": "individual"
-          },
-          "type": "graph",
-          "xaxis": {
-            "mode": "time",
-            "name": null,
-            "show": true,
-            "values": []
-          },
-          "yaxes": [
-            {
-              "format": "ms",
-              "label": null,
-              "logBase": 1,
-              "max": null,
-              "min": null,
-              "show": true
-            },
-            {
-              "format": "short",
-              "label": null,
-              "logBase": 1,
-              "max": null,
-              "min": null,
-              "show": true
-            }
-          ]
-        },
-        {
-          "aliasColors": {},
-          "bars": false,
-          "datasource": "${DS_JAMES_ES}",
-          "fill": 1,
           "id": 28,
           "legend": {
             "avg": true,
@@ -602,119 +489,6 @@
           "bars": false,
           "datasource": "${DS_JAMES_ES}",
           "fill": 1,
-          "id": 29,
-          "legend": {
-            "avg": false,
-            "current": false,
-            "max": false,
-            "min": false,
-            "show": true,
-            "total": false,
-            "values": false
-          },
-          "lines": true,
-          "linewidth": 1,
-          "links": [],
-          "nullPointMode": "connected",
-          "percentage": false,
-          "pointradius": 5,
-          "points": false,
-          "renderer": "flot",
-          "seriesOverrides": [],
-          "span": 2,
-          "stack": false,
-          "steppedLine": false,
-          "targets": [
-            {
-              "bucketAggs": [
-                {
-                  "field": "@timestamp",
-                  "id": "2",
-                  "settings": {
-                    "interval": "auto",
-                    "min_doc_count": 0,
-                    "trimEdges": 0
-                  },
-                  "type": "date_histogram"
-                }
-              ],
-              "dsType": "elasticsearch",
-              "metrics": [
-                {
-                  "field": "p99",
-                  "id": "1",
-                  "meta": {},
-                  "pipelineAgg": "3",
-                  "settings": {},
-                  "type": "avg"
-                },
-                {
-                  "field": "p50",
-                  "id": "3",
-                  "meta": {},
-                  "settings": {},
-                  "type": "avg"
-                },
-                {
-                  "field": "p75",
-                  "id": "4",
-                  "meta": {},
-                  "settings": {},
-                  "type": "avg"
-                },
-                {
-                  "field": "p95",
-                  "id": "5",
-                  "meta": {},
-                  "settings": {},
-                  "type": "avg"
-                }
-              ],
-              "query": "name:\"dequeueTime:outgoing\"",
-              "refId": "A",
-              "timeField": "@timestamp"
-            }
-          ],
-          "thresholds": [],
-          "timeFrom": null,
-          "timeShift": null,
-          "title": "dequeueTime:outgoing",
-          "tooltip": {
-            "shared": true,
-            "sort": 0,
-            "value_type": "individual"
-          },
-          "type": "graph",
-          "xaxis": {
-            "mode": "time",
-            "name": null,
-            "show": true,
-            "values": []
-          },
-          "yaxes": [
-            {
-              "format": "ms",
-              "label": null,
-              "logBase": 1,
-              "max": null,
-              "min": null,
-              "show": true
-            },
-            {
-              "format": "short",
-              "label": null,
-              "logBase": 1,
-              "max": null,
-              "min": null,
-              "show": true
-            }
-          ]
-        },
-        {
-          "aliasColors": {},
-          "bars": false,
-          "datasource": "${DS_JAMES_ES}",
-          "fill": 1,
           "id": 32,
           "legend": {
             "avg": true,
diff --git a/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java b/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java
index e065924..5de2a47 100644
--- a/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java
+++ b/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java
@@ -61,7 +61,6 @@ public interface MailQueue {
     String ENQUEUED_METRIC_NAME_PREFIX = "enqueuedMail:";
     String DEQUEUED_METRIC_NAME_PREFIX = "dequeuedMail:";
     String ENQUEUED_TIMER_METRIC_NAME_PREFIX = "enqueueTime:";
-    String DEQUEUED_TIMER_METRIC_NAME_PREFIX = "dequeueTime:";
     String QUEUE_SIZE_METRIC_NAME_PREFIX = "mailQueueSize:";
 
     /**
diff --git a/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricContract.java b/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricContract.java
index 9046b6c..b4c436d 100644
--- a/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricContract.java
+++ b/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricContract.java
@@ -123,32 +123,4 @@ public interface MailQueueMetricContract extends MailQueueContract {
         verify(testSystem.getSpyEnqueuedMailsTimeMetric(), times(2)).stopAndPublish();
     }
 
-    @Test
-    default void enqueueShouldNotPublishDequeueTimeMetric(MailQueueMetricExtension.MailQueueMetricTestSystem testSystem) throws Exception {
-        enQueueMail(2);
-
-        verify(testSystem.getSpyEnqueuedMailsTimeMetric(), times(2)).stopAndPublish();
-        verifyNoMoreInteractions(testSystem.getSpyDequeuedMailsTimeMetric());
-    }
-
-    @Disabled("what do we want to measure ?")
-    @Test
-    default void dequeueShouldPublishDequeueTimeMetric(MailQueueMetricExtension.MailQueueMetricTestSystem testSystem) throws Exception {
-        enQueueMail(2);
-        deQueueMail(2);
-
-        verify(testSystem.getSpyDequeuedMailsTimeMetric(), times(2)).stopAndPublish();
-    }
-
-    @Disabled("what do we want to measure ?")
-    @Test
-    default void dequeueShouldNotPublishEnqueueTimeMetric(MailQueueMetricExtension.MailQueueMetricTestSystem testSystem) throws Exception {
-        enQueueMail(2);
-        verify(testSystem.getSpyEnqueuedMailsTimeMetric(), times(2)).stopAndPublish();
-
-        deQueueMail(2);
-        verify(testSystem.getSpyDequeuedMailsTimeMetric(), times(2)).stopAndPublish();
-        verifyNoMoreInteractions(testSystem.getSpyEnqueuedMailsTimeMetric());
-    }
-
 }
diff --git a/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricExtension.java b/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricExtension.java
index b214c25..93f8896 100644
--- a/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricExtension.java
+++ b/server/queue/queue-api/src/test/java/org/apache/james/queue/api/MailQueueMetricExtension.java
@@ -20,7 +20,6 @@
 package org.apache.james.queue.api;
 
 import static org.apache.james.queue.api.MailQueue.DEQUEUED_METRIC_NAME_PREFIX;
-import static org.apache.james.queue.api.MailQueue.DEQUEUED_TIMER_METRIC_NAME_PREFIX;
 import static org.apache.james.queue.api.MailQueue.ENQUEUED_METRIC_NAME_PREFIX;
 import static org.apache.james.queue.api.MailQueue.ENQUEUED_TIMER_METRIC_NAME_PREFIX;
 import static org.mockito.ArgumentMatchers.startsWith;
@@ -97,8 +96,6 @@ public class MailQueueMetricExtension implements BeforeEachCallback, ParameterRe
 
         when(testSystem.spyMetricFactory.timer(startsWith(ENQUEUED_TIMER_METRIC_NAME_PREFIX)))
             .thenReturn(testSystem.spyEnqueuedMailsTimeMetric);
-        when(testSystem.spyMetricFactory.timer(startsWith(DEQUEUED_TIMER_METRIC_NAME_PREFIX)))
-            .thenReturn(testSystem.spyDequeuedMailsTimeMetric);
     }
 
     @Override
diff --git a/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java b/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java
index e1a91af..e552e78 100644
--- a/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java
+++ b/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java
@@ -227,7 +227,6 @@ public class JMSMailQueue implements ManageableMailQueue, JMSSupport, MailPriori
     private Mono<MailQueueItem> deQueueOneItem() {
         Session session = null;
         MessageConsumer consumer = null;
-        TimeMetric timeMetric = metricFactory.timer(DEQUEUED_TIMER_METRIC_NAME_PREFIX + queueName);
         try {
             session = connection.createSession(true, Session.SESSION_TRANSACTED);
             Queue queue = session.createQueue(queueName);
@@ -249,8 +248,6 @@ public class JMSMailQueue implements ManageableMailQueue, JMSSupport, MailPriori
             closeConsumer(consumer);
             closeSession(session);
             return Mono.error(new MailQueueException("Unable to dequeue next message", e));
-        } finally {
-            timeMetric.stopAndPublish();
         }
         return Mono.empty();
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org