本文整理了Java中javax.management.AttributeList
类的一些代码示例,展示了AttributeList
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AttributeList
类的具体详情如下:
包路径:javax.management.AttributeList
类名称:AttributeList
暂无
代码示例来源:origin: wildfly/wildfly
public AttributeList setAttributes(AttributeList list) {
AttributeList results=new AttributeList();
for(int i=0;i < list.size();i++) {
Attribute attr=(Attribute)list.get(i);
if(setNamedAttribute(attr))
results.add(attr);
else {
if(log.isWarnEnabled())
log.warn("Failed to update attribute name " + attr.getName() + " with value " + attr.getValue());
}
}
return results;
}
代码示例来源:origin: prestodb/presto
private ImmutableMap<String, Optional<Object>> getAttributes(Set<String> uniqueColumnNames, String name)
throws JMException
{
ObjectName objectName = new ObjectName(name);
String[] columnNamesArray = uniqueColumnNames.toArray(new String[uniqueColumnNames.size()]);
ImmutableMap.Builder<String, Optional<Object>> attributes = ImmutableMap.builder();
for (Attribute attribute : mbeanServer.getAttributes(objectName, columnNamesArray).asList()) {
attributes.put(attribute.getName(), Optional.ofNullable(attribute.getValue()));
}
return attributes.build();
}
代码示例来源:origin: log4j/log4j
throw new RuntimeOperationsException(
new IllegalArgumentException("AttributeList attributes cannot be null"),
"Cannot invoke a setter of " + dClassName);
AttributeList resultList = new AttributeList();
if (attributes.isEmpty())
return resultList;
for (Iterator i = attributes.iterator(); i.hasNext();) {
Attribute attr = (Attribute) i.next();
try {
setAttribute(attr);
String name = attr.getName();
Object value = getAttribute(name);
resultList.add(new Attribute(name,value));
} catch(JMException e) {
e.printStackTrace();
代码示例来源:origin: apache/kafka
@Override
public AttributeList getAttributes(String[] names) {
AttributeList list = new AttributeList();
for (String name : names) {
try {
list.add(new Attribute(name, getAttribute(name)));
} catch (Exception e) {
log.warn("Error getting JMX attribute '{}'", name, e);
}
}
return list;
}
代码示例来源:origin: stackoverflow.com
public static double getProcessCpuLoad() throws Exception {
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
ObjectName name = ObjectName.getInstance("java.lang:type=OperatingSystem");
AttributeList list = mbs.getAttributes(name, new String[]{ "ProcessCpuLoad" });
if (list.isEmpty()) return Double.NaN;
Attribute att = (Attribute)list.get(0);
Double value = (Double)att.getValue();
// usually takes a couple of seconds before we get real values
if (value == -1.0) return Double.NaN;
// returns a percentage value with 1 decimal point precision
return ((int)(value * 1000) / 10.0);
}
代码示例来源:origin: apache/hive
@Override
public AttributeList setAttributes(AttributeList arg0) {
AttributeList attributesSet = new AttributeList();
for (Attribute attr : arg0.asList()) {
try {
setAttribute(attr);
attributesSet.add(attr);
} catch (AttributeNotFoundException e) {
// ignore exception - we simply don't add this attribute
// back in to the resultant set.
} catch (InvalidAttributeValueException e) {
// ditto
} catch (MBeanException e) {
// likewise
} catch (ReflectionException e) {
// and again, one last time.
}
}
return attributesSet;
}
代码示例来源:origin: wildfly/wildfly
private Map<String, String> getMBeanValues(MBeanServerConnection cnx, ObjectName on, String ... attributeNames)
throws InstanceNotFoundException, IOException, ReflectionException, IntrospectionException {
if (attributeNames == null) {
MBeanInfo info = cnx.getMBeanInfo( on );
MBeanAttributeInfo[] attributeArray = info.getAttributes();
int i = 0;
attributeNames = new String[attributeArray.length];
for (MBeanAttributeInfo ai : attributeArray)
attributeNames[i++] = ai.getName();
}
AttributeList attributes = cnx.getAttributes(on, attributeNames);
Map<String, String> values = new HashMap<String, String>();
for (javax.management.Attribute attribute : attributes.asList()) {
Object value = attribute.getValue();
values.put(attribute.getName(), value == null ? "" : value.toString());
}
return values;
}
代码示例来源:origin: log4j/log4j
/**
* Enables the to get the values of several attributes of the Dynamic MBean.
*/
public
AttributeList getAttributes(String[] attributeNames) {
// Check attributeNames is not null to avoid NullPointerException later on
if (attributeNames == null) {
throw new RuntimeOperationsException(
new IllegalArgumentException("attributeNames[] cannot be null"),
"Cannot invoke a getter of " + dClassName);
}
AttributeList resultList = new AttributeList();
// if attributeNames is empty, return an empty result list
if (attributeNames.length == 0)
return resultList;
// build the result attribute list
for (int i=0 ; i<attributeNames.length ; i++){
try {
Object value = getAttribute((String) attributeNames[i]);
resultList.add(new Attribute(attributeNames[i],value));
} catch (JMException e) {
e.printStackTrace();
} catch (RuntimeException e) {
e.printStackTrace();
}
}
return(resultList);
}
代码示例来源:origin: rhuss/jolokia
public AttributeList setAttributes(AttributeList attributes)
{
Iterator iterator = attributes.iterator();
AttributeList newValues = new AttributeList(attributes.size());
while (iterator.hasNext())
{
Attribute attribute = (Attribute) iterator.next();
try
{
setAttribute(attribute);
} catch (Exception exc)
{
attribute = new Attribute(attribute.getName(), exc);
}
newValues.add(attribute);
}
return newValues;
}
代码示例来源:origin: espertechinc/esper
public Map<String, BufferPoolStats> getBufferPoolStats() {
try {
final String[] attributes = {"Count", "MemoryUsed", "TotalCapacity"};
final ObjectName direct = new ObjectName("java.nio:type=BufferPool,name=direct");
final ObjectName mapped = new ObjectName("java.nio:type=BufferPool,name=mapped");
final AttributeList directAttributes = mBeanServer.getAttributes(direct, attributes);
final AttributeList mappedAttributes = mBeanServer.getAttributes(mapped, attributes);
final Map<String, BufferPoolStats> stats = new TreeMap<String, BufferPoolStats>();
final BufferPoolStats directStats = new BufferPoolStats((Long) ((Attribute) directAttributes.get(0)).getValue(),
(Long) ((Attribute) directAttributes.get(1)).getValue(),
(Long) ((Attribute) directAttributes.get(2)).getValue());
stats.put("direct", directStats);
final BufferPoolStats mappedStats = new BufferPoolStats((Long) ((Attribute) mappedAttributes.get(0)).getValue(),
(Long) ((Attribute) mappedAttributes.get(1)).getValue(),
(Long) ((Attribute) mappedAttributes.get(2)).getValue());
stats.put("mapped", mappedStats);
return Collections.unmodifiableMap(stats);
} catch (JMException e) {
return Collections.emptyMap();
}
}
}
代码示例来源:origin: apache/geode
@Override
public AttributeList setAttributes(AttributeList attributes) {
if (attributes == null)
throw new RuntimeOperationsException(new IllegalArgumentException(
"Attribute list cannot be null."));
Logger logger = getLogger();
AttributeList list = new AttributeList();
for (Iterator i = attributes.iterator(); i.hasNext();) {
Attribute attribute = (Attribute) i.next();
String name = attribute.getName();
try {
setAttribute(attribute);
list.add(attribute);
} catch (Exception x) {
if (logger.isEnabledFor(Logger.TRACE))
logger.trace("setAttribute for attribute " + name + " failed", x);
// And go on with the next one
}
}
return list;
}
代码示例来源:origin: jmxtrans/jmxtrans
public void walkTree(MBeanServerConnection connection) throws Exception {
// key here is null, null returns everything!
Set<ObjectName> mbeans = connection.queryNames(null, null);
for (ObjectName name : mbeans) {
MBeanInfo info = connection.getMBeanInfo(name);
MBeanAttributeInfo[] attrs = info.getAttributes();
String[] attrNames = new String[attrs.length];
for (int i = 0; i < attrs.length; i++) {
attrNames[i] = attrs[i].getName();
}
try {
AttributeList attributes = connection.getAttributes(name, attrNames);
for (Attribute attribute : attributes.asList()) {
output(name.getCanonicalName() + "%" + attribute.getName(), attribute.getValue());
}
} catch (Exception e) {
log.error("error getting " + name + ":" + e.getMessage(), e);
}
}
}
代码示例来源:origin: prometheus/jmx_exporter
private void scrapeBean(MBeanServerConnection beanConn, ObjectName mbeanName) {
MBeanInfo info;
try {
info = beanConn.getMBeanInfo(mbeanName);
} catch (IOException e) {
logScrape(mbeanName.toString(), "getMBeanInfo Fail: " + e);
return;
} catch (JMException e) {
logScrape(mbeanName.toString(), "getMBeanInfo Fail: " + e);
return;
attributes = beanConn.getAttributes(mbeanName, name2AttrInfo.keySet().toArray(new String[0]));
} catch (Exception e) {
logScrape(mbeanName, name2AttrInfo.keySet(), "Fail: " + e);
return;
for (Attribute attribute : attributes.asList()) {
MBeanAttributeInfo attr = name2AttrInfo.get(attribute.getName());
logScrape(mbeanName, attr, "process");
processBeanValue(
mbeanName.getDomain(),
jmxMBeanPropertyCache.getKeyPropertyList(mbeanName),
new LinkedList<String>(),
attr.getType(),
attr.getDescription(),
attribute.getValue()
);
代码示例来源:origin: com.mycila/mycila-jmx
@Override
public AttributeList setAttributes(AttributeList attributes) {
// validation from javax.management.modelmbean.RequiredModelMBean
if (attributes == null)
throw new RuntimeOperationsException(new IllegalArgumentException("attributes must not be null"), "Exception occurred trying to set attributes of a " + getClass().getSimpleName());
AttributeList list = new AttributeList();
for (Attribute attribute : attributes.asList()) {
try {
JmxAttribute attr = getJmxMetadata().getAttribute(attribute.getName());
attr.set(getManagedResource(), attribute.getValue());
list.add(attribute);
} catch (AttributeNotFoundException ignored) {
} catch (ReflectionException ignored) {
} catch (InvalidAttributeValueException ignored) {
}
}
return list;
}
代码示例来源:origin: airlift/airlift
@Test
public void testGetAttributes()
throws Exception
{
assertEquals(mbeanServerConnection.getAttributes(testMBeanName, new String[] {"Value", "ObjectValue"}),
new AttributeList(ImmutableList.of(new Attribute("Value", null), new Attribute("ObjectValue", null))));
testMBean.setValue("FOO");
testMBean.setObjectValue(UUID.randomUUID());
assertEquals(mbeanServerConnection.getAttributes(testMBeanName, new String[] {"Value", "ObjectValue"}),
new AttributeList(ImmutableList.of(new Attribute("Value", "FOO"), new Attribute("ObjectValue", testMBean.getObjectValue()))));
}
代码示例来源:origin: airlift/airlift
@Test
public void testSetAttributes()
throws Exception
{
UUID uuid = UUID.randomUUID();
mbeanServerConnection.setAttributes(testMBeanName, new AttributeList(ImmutableList.of(new Attribute("Value", "Foo"), new Attribute("ObjectValue", uuid))));
assertEquals(testMBean.getValue(), "Foo");
assertEquals(testMBean.getObjectValue(), uuid);
mbeanServerConnection.setAttributes(testMBeanName, new AttributeList(ImmutableList.of(new Attribute("Value", null), new Attribute("ObjectValue", null))));
assertEquals(testMBean.getValue(), null);
assertEquals(testMBean.getObjectValue(), null);
}
代码示例来源:origin: pinterest/doctorkafka
public static double getProcessCpuLoad(MBeanServerConnection mbs)
throws MalformedObjectNameException, NullPointerException, InstanceNotFoundException,
ReflectionException, IOException {
ObjectName name = ObjectName.getInstance("java.lang:type=OperatingSystem");
AttributeList list = mbs.getAttributes(name, new String[]{"ProcessCpuLoad"});
if (list.isEmpty()) {
return 0.0;
}
Attribute att = (Attribute) list.get(0);
Double value = (Double) att.getValue();
// usually takes a couple of seconds before we get real values
if (value == -1.0) {
return 0.0;
}
// returns a percentage value with 1 decimal point precision
return ((int) (value * 1000) / 10.0);
}
代码示例来源:origin: jmxtrans/jmxtrans
public Iterable<Result> fetchResults(MBeanServerConnection mbeanServer, ObjectName queryName) throws InstanceNotFoundException, IntrospectionException, ReflectionException, IOException {
ObjectInstance oi = mbeanServer.getObjectInstance(queryName);
List<String> attributes;
if (attr.isEmpty()) {
attributes = new ArrayList<>();
MBeanInfo info = mbeanServer.getMBeanInfo(queryName);
for (MBeanAttributeInfo attrInfo : info.getAttributes()) {
attributes.add(attrInfo.getName());
}
} else {
attributes = attr;
}
try {
if (!attributes.isEmpty()) {
logger.debug("Executing queryName [{}] from query [{}]", queryName.getCanonicalName(), this);
AttributeList al = mbeanServer.getAttributes(queryName, attributes.toArray(new String[attributes.size()]));
return new JmxResultProcessor(this, oi, al.asList(), oi.getClassName(), queryName.getDomain()).getResults();
}
} catch (UnmarshalException ue) {
if ((ue.getCause() != null) && (ue.getCause() instanceof ClassNotFoundException)) {
logger.debug("Bad unmarshall, continuing. This is probably ok and due to something like this: "
+ "http://ehcache.org/xref/net/sf/ehcache/distribution/RMICacheManagerPeerListener.html#52", ue.getMessage());
} else {
throw ue;
}
}
return ImmutableList.of();
}
代码示例来源:origin: vipshop/vjtools
mbsc.unregisterMBean(instance.getObjectName());
return null;
} else if (subCommand.startsWith(CREATE_CMD_PREFIX)) {
MBeanAttributeInfo[] attributeInfo = mbsc.getMBeanInfo(instance.getObjectName()).getAttributes();
MBeanOperationInfo[] operationInfo = mbsc.getMBeanInfo(instance.getObjectName()).getOperations();
} else if (result instanceof AttributeList) {
AttributeList list = (AttributeList) result;
if (list.isEmpty()) {
result = null;
} else {
StringBuffer buffer = new StringBuffer("\n");
for (Iterator ii = list.iterator(); ii.hasNext();) {
Attribute a = (Attribute) ii.next();
buffer.append(a.getName());
buffer.append(": ");
buffer.append(a.getValue());
buffer.append("\n");
代码示例来源:origin: apache/kafka
@Test
public void testGetAttributes() throws Exception {
sensor.record(3.5);
sensor.record(4.0);
AttributeList attributeList = getAttributes(countMetricName, countMetricName.name(), sumMetricName.name());
List<Attribute> attributes = attributeList.asList();
assertEquals(2, attributes.size());
for (Attribute attribute : attributes) {
if (countMetricName.name().equals(attribute.getName()))
assertEquals(2.0, attribute.getValue());
else if (sumMetricName.name().equals(attribute.getName()))
assertEquals(7.5, attribute.getValue());
else
fail("Unexpected attribute returned: " + attribute.getName());
}
}
内容来源于网络,如有侵权,请联系作者删除!