This is an automated email from the ASF dual-hosted git repository.
amagyar pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/trunk by this push:
new 5b25bcd AMBARI-23400. HDFS metrics data missing in Ambari 2.7.0
(amagyar) (#825)
5b25bcd is described below
commit 5b25bcdb8fd3710c676bb314db7e905f7e9bbc33
Author: Attila Magyar <[email protected]>
AuthorDate: Thu Mar 29 17:31:21 2018 +0200
AMBARI-23400. HDFS metrics data missing in Ambari 2.7.0 (amagyar) (#825)
* AMBARI-23400. HDFS metrics data missing in Ambari 2.7.0 (amagyar)
* AMBARI-23400. HDFS metrics data missing in Ambari 2.7.0 (amagyar)
---
.../apache/ambari/server/state/alert/MetricSource.java | 4 +++-
.../server/metric/system/impl/MetricsSourceTest.java | 17 +++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git
a/ambari-server/src/main/java/org/apache/ambari/server/state/alert/MetricSource.java
b/ambari-server/src/main/java/org/apache/ambari/server/state/alert/MetricSource.java
index bfb3021..e6fc6f3 100644
---
a/ambari-server/src/main/java/org/apache/ambari/server/state/alert/MetricSource.java
+++
b/ambari-server/src/main/java/org/apache/ambari/server/state/alert/MetricSource.java
@@ -30,6 +30,7 @@ import org.apache.ambari.server.state.UriInfo;
import org.springframework.expression.spel.standard.SpelExpressionParser;
import org.springframework.expression.spel.support.StandardEvaluationContext;
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.gson.annotations.SerializedName;
@@ -105,16 +106,17 @@ public class MetricSource extends Source {
* Represents the {@code jmx} element in a Metric alert.
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
+ @JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY,
getterVisibility = JsonAutoDetect.Visibility.NONE, setterVisibility =
JsonAutoDetect.Visibility.NONE)
public static class JmxInfo {
@SerializedName("property_list")
private List<String> propertyList;
+ @SerializedName("value")
private String value = "{0}";
@SerializedName("url_suffix")
private String urlSuffix = "/jmx";
- @JsonProperty("property_list")
public List<String> getPropertyList() {
return propertyList;
}
diff --git
a/ambari-server/src/test/java/org/apache/ambari/server/metric/system/impl/MetricsSourceTest.java
b/ambari-server/src/test/java/org/apache/ambari/server/metric/system/impl/MetricsSourceTest.java
index def4559..351d2aa 100644
---
a/ambari-server/src/test/java/org/apache/ambari/server/metric/system/impl/MetricsSourceTest.java
+++
b/ambari-server/src/test/java/org/apache/ambari/server/metric/system/impl/MetricsSourceTest.java
@@ -18,6 +18,8 @@
package org.apache.ambari.server.metric.system.impl;
+import static java.util.Collections.singletonList;
+import static junit.framework.Assert.assertEquals;
import static org.easymock.EasyMock.capture;
import static org.easymock.EasyMock.expectLastCall;
import static org.easymock.EasyMock.replay;
@@ -35,6 +37,7 @@ import
org.apache.ambari.server.metrics.system.impl.AmbariMetricSinkImpl;
import org.apache.ambari.server.metrics.system.impl.DatabaseMetricsSource;
import org.apache.ambari.server.metrics.system.impl.JvmMetricsSource;
import org.apache.ambari.server.metrics.system.impl.MetricsConfiguration;
+import org.apache.ambari.server.state.alert.MetricSource;
import org.easymock.Capture;
import org.easymock.EasyMock;
import org.easymock.EasyMockRunner;
@@ -44,6 +47,9 @@ import org.junit.Assume;
import org.junit.Test;
import org.junit.runner.RunWith;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector;
+
import junit.framework.Assert;
@RunWith(EasyMockRunner.class)
@@ -168,4 +174,15 @@ public class MetricsSourceTest {
Assert.assertTrue(source.acceptMetric("Counter.ReadObjectQuery.MetainfoEntity.readMetainfoEntity.CacheMisses"));
}
+ @Test
+ public void testJmxInfoSerialization() throws Exception {
+ ObjectMapper mapper = new ObjectMapper();
+ mapper.setAnnotationIntrospector(new JacksonAnnotationIntrospector());
+ MetricSource.JmxInfo jmxInfo = new MetricSource.JmxInfo();
+ jmxInfo.setValue("custom");
+ jmxInfo.setPropertyList(singletonList("prop1"));
+ MetricSource.JmxInfo deserialized =
mapper.readValue(mapper.writeValueAsString(jmxInfo),
MetricSource.JmxInfo.class);
+ assertEquals("custom", deserialized.getValue().toString());
+ assertEquals(singletonList("prop1"), deserialized.getPropertyList());
+ }
}
--
To stop receiving notification emails like this one, please contact
[email protected].