Skip to content

Commit e0cda84

Browse files
committed
[attribute][complex] extend to java.util.Map
Add `java.util.Map` to the list of supported `JMXComplexAttribute` types.
1 parent 4d14750 commit e0cda84

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

src/main/java/org/datadog/jmxfetch/Instance.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public class Instance {
2525
"java.lang.String", "int", "float", "double", "java.lang.Double","java.lang.Float", "java.lang.Integer", "java.lang.Long",
2626
"java.util.concurrent.atomic.AtomicInteger", "java.util.concurrent.atomic.AtomicLong",
2727
"java.lang.Object", "java.lang.Boolean", "boolean", "java.lang.Number");
28-
private final static List<String> COMPOSED_TYPES = Arrays.asList("javax.management.openmbean.CompositeData", "java.util.HashMap");
28+
private final static List<String> COMPOSED_TYPES = Arrays.asList("javax.management.openmbean.CompositeData", "java.util.HashMap", "java.util.Map");
2929
private final static int MAX_RETURNED_METRICS = 350;
3030
private final static int DEFAULT_REFRESH_BEANS_PERIOD = 600;
3131
public static final String PROCESS_NAME_REGEX = "process_name_regex";

src/main/java/org/datadog/jmxfetch/JMXComplexAttribute.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ private void populateSubAttributeList(Object attributeValue) {
3434
for (String key : data.getCompositeType().keySet()) {
3535
this.subAttributeList.put(key, new HashMap<String, Object>());
3636
}
37-
} else if ("java.util.HashMap".equals(attributeType)) {
37+
} else if (("java.util.HashMap".equals(attributeType)) || ("java.util.Map".equals(attributeType))){
3838
HashMap<String, Double> data = (HashMap<String, Double>) attributeValue;
3939
for (String key : data.keySet()) {
4040
this.subAttributeList.put(key, new HashMap<String, Object>());
@@ -83,7 +83,7 @@ private double getValue(String subAttribute) throws AttributeNotFoundException,
8383
CompositeData data = (CompositeData) value;
8484
return getValueAsDouble(data.get(subAttribute));
8585

86-
} else if ("java.util.HashMap".equals(attributeType)) {
86+
} else if (("java.util.HashMap".equals(attributeType)) || ("java.util.Map".equals(attributeType))) {
8787
HashMap<String, Object> data = (HashMap<String, Object>) value;
8888
return getValueAsDouble(data.get(subAttribute));
8989
}

0 commit comments

Comments
 (0)