Back to index

munin  2.0.1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Package Functions
org.munin.plugin.jmx.MemoryAllocatedTotal Class Reference
Inheritance diagram for org.munin.plugin.jmx.MemoryAllocatedTotal:
Inheritance graph
[legend]
Collaboration diagram for org.munin.plugin.jmx.MemoryAllocatedTotal:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 MemoryAllocatedTotal (Config config)
long max ()
long committed ()
long init ()
long used ()
void printConfig (PrintWriter out)
void printValues (PrintWriter out)

Static Public Member Functions

static void main (String args[])

Protected Member Functions

void prepareValues () throws Exception
void prepareMemoryUsage (MemoryPoolMXBean memoryPool, UsageType usageType)
void printGraphConfig (PrintWriter out)
void printGraphConfig (PrintWriter out, String title, String vlabel, String info, String args, boolean update, boolean graph)
void printFieldsConfig (PrintWriter out)
void printFieldConfig (PrintWriter out, AccessibleObject accessible)
void printFieldConfig (PrintWriter out, String name, String label, String info, String type, String draw, String colour, double min, double max)
String getFieldName (AccessibleObject accessible)
void printFieldValue (PrintWriter out, AccessibleObject accessible)
MBeanServerConnection getConnection ()
void printFieldAttribute (PrintWriter out, String fieldName, String attributeName, Object value)

Static Protected Member Functions

static String toFieldName (String name)

Protected Attributes

MemoryUsage memoryUsage
final Config config

Static Package Functions

static void runGraph (String[] args)

Detailed Description

Definition at line 10 of file MemoryAllocatedTotal.java.


Constructor & Destructor Documentation

Definition at line 11 of file MemoryAllocatedTotal.java.

                                                  {
              super(config);
       }

Member Function Documentation

Definition at line 24 of file AbstractMemoryUsageProvider.java.

                               {
              return (memoryUsage == null ? -1 : memoryUsage.getCommitted());
       }
MBeanServerConnection org.munin.plugin.jmx.AbstractGraphsProvider.getConnection ( ) [inline, protected, inherited]

Definition at line 20 of file AbstractGraphsProvider.java.

                                                       {
              if (connection == null) {
                     try {
                            connection = BasicMBeanConnection.get(config);
                     } catch (MalformedURLException e) {
                            throw new IllegalStateException(
                                          "Failed to get MBean Server Connection", e);
                     } catch (IOException e) {
                            throw new IllegalStateException(
                                          "Failed to get MBean Server Connection", e);
                     }
              }
              return connection;
       }

Here is the call graph for this function:

Here is the caller graph for this function:

String org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.getFieldName ( AccessibleObject  accessible) [inline, protected, inherited]

Definition at line 89 of file AbstractAnnotationGraphsProvider.java.

                                                                  {
              String fieldName = accessible.getAnnotation(Field.class).name();
              if (fieldName.length() == 0) {
                     String n;
                     if (accessible instanceof Method) {
                            n = ((Method) accessible).getName();
                     } else if (accessible instanceof java.lang.reflect.Field) {
                            n = ((java.lang.reflect.Field) accessible).getName();
                     } else {
                            throw new IllegalArgumentException(
                                          "AccessibleObject must be a field or a method: "
                                                        + accessible);
                     }
                     fieldName = n.substring(0, 1).toUpperCase() + n.substring(1);
              }
              return fieldName;
       }

Here is the caller graph for this function:

Definition at line 29 of file AbstractMemoryUsageProvider.java.

                          {
              return (memoryUsage == null ? -1 : memoryUsage.getInit());
       }
static void org.munin.plugin.jmx.MemoryAllocatedTotal.main ( String  args[]) [inline, static]

Definition at line 28 of file MemoryAllocatedTotal.java.

                                              {
              runGraph(args);
       }

Definition at line 19 of file AbstractMemoryUsageProvider.java.

                         {
              return (memoryUsage == null ? -1 : memoryUsage.getMax());
       }
void org.munin.plugin.jmx.AbstractMemoryUsageProvider.prepareMemoryUsage ( MemoryPoolMXBean  memoryPool,
UsageType  usageType 
) [inline, protected, inherited]

Definition at line 38 of file AbstractMemoryUsageProvider.java.

                                                                                           {
              switch (usageType) {
              case USAGE:
                     memoryUsage = memoryPool.getUsage();
                     break;
              case POST_GC:
                     memoryUsage = memoryPool.getCollectionUsage();
                     break;
              case PEAK:
                     memoryUsage = memoryPool.getPeakUsage();
                     break;
              default:
                     throw new IllegalArgumentException("Unknown UsageType: "
                                   + usageType);
              }
       }

Here is the caller graph for this function:

void org.munin.plugin.jmx.MemoryAllocatedTotal.prepareValues ( ) throws Exception [inline, protected, virtual]

Implements org.munin.plugin.jmx.AbstractMemoryUsageProvider.

Definition at line 16 of file MemoryAllocatedTotal.java.

                                                       {
              MemoryMXBean memoryMXBean = ManagementFactory.newPlatformMXBeanProxy(getConnection(),
                            ManagementFactory.MEMORY_MXBEAN_NAME, MemoryMXBean.class);
              MemoryUsage heap = memoryMXBean.getHeapMemoryUsage();
              MemoryUsage nonHeap = memoryMXBean.getNonHeapMemoryUsage();
              long totalInit = heap.getInit()+nonHeap.getInit();
              long totalUsed = heap.getUsed() + nonHeap.getUsed();
              long totalCommitted = heap.getCommitted()+nonHeap.getCommitted();
              long totalMax = heap.getMax()+nonHeap.getMax();
              memoryUsage = new MemoryUsage(totalInit, totalUsed, totalCommitted, totalMax);
       }
void org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.printConfig ( PrintWriter  out) [inline, virtual, inherited]

Implements org.munin.plugin.jmx.AbstractGraphsProvider.

Definition at line 23 of file AbstractAnnotationGraphsProvider.java.

Here is the call graph for this function:

void org.munin.plugin.jmx.AbstractGraphsProvider.printFieldAttribute ( PrintWriter  out,
String  fieldName,
String  attributeName,
Object  value 
) [inline, protected, inherited]

Definition at line 75 of file AbstractGraphsProvider.java.

                                                         {
              if (value != null) {
                     String stringValue = String.valueOf(value);
                     if (stringValue.length() > 0) {
                            out.println(fieldName + "." + attributeName + " " + value);
                     }
              }
       }

Here is the caller graph for this function:

void org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.printFieldConfig ( PrintWriter  out,
AccessibleObject  accessible 
) [inline, protected, inherited]

Definition at line 46 of file AbstractAnnotationGraphsProvider.java.

                                                                                     {
              Field field = accessible.getAnnotation(Field.class);
              String fieldName = getFieldName(accessible);
              String fieldLabel = field.label();
              if (fieldLabel.length() == 0) {
                     fieldLabel = fieldName;
              }

              printFieldConfig(out, fieldName, fieldLabel, field.info(),
                            field.type(), field.draw(), field.colour(), field.min(), field
                                          .max());
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void org.munin.plugin.jmx.AbstractGraphsProvider.printFieldConfig ( PrintWriter  out,
String  name,
String  label,
String  info,
String  type,
String  draw,
String  colour,
double  min,
double  max 
) [inline, protected, inherited]

Definition at line 59 of file AbstractGraphsProvider.java.

                                 {
              printFieldAttribute(out, name, "label", label);
              printFieldAttribute(out, name, "info", info);
              printFieldAttribute(out, name, "type", type);
              if (!Double.isNaN(min)) {
                     printFieldAttribute(out, name, "min", min);
              }
              if (!Double.isNaN(max)) {
                     printFieldAttribute(out, name, "max", max);
              }
              printFieldAttribute(out, name, "draw", draw);
              printFieldAttribute(out, name, "colour", colour);
       }

Here is the call graph for this function:

void org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.printFieldsConfig ( PrintWriter  out) [inline, protected, inherited]

Reimplemented in org.munin.plugin.jmx.GarbageCollectionInfo.

Definition at line 40 of file AbstractAnnotationGraphsProvider.java.

                                                         {
              for (AccessibleObject accessible : getFieldObjects()) {
                     printFieldConfig(out, accessible);
              }
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.printFieldValue ( PrintWriter  out,
AccessibleObject  accessible 
) [inline, protected, inherited]

Reimplemented in org.munin.plugin.jmx.AbstractMemoryPoolProvider.

Definition at line 136 of file AbstractAnnotationGraphsProvider.java.

                                                                                    {
              String fieldName = getFieldName(accessible);
              try {
                     Object value = getFieldValue(accessible);
                     printFieldAttribute(out, fieldName, "value", value);
              } catch (Exception e) {
                     System.err.println("Failed to get value for field " + fieldName
                                   + ": " + e.getMessage());
                     e.printStackTrace();
              }
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.printGraphConfig ( PrintWriter  out) [inline, protected, inherited]

Reimplemented in org.munin.plugin.jmx.MemoryPoolUsageProvider.

Definition at line 28 of file AbstractAnnotationGraphsProvider.java.

                                                        {
              Graph graph = getClass().getAnnotation(Graph.class);
              if (graph == null) {
                     throw new IllegalArgumentException(getClass()
                                   + " doesn't have @Graph annotation");
              }
              String graphTitle = "JVM (port " + config.getPort() + ") "
                            + graph.title();
              printGraphConfig(out, graphTitle, graph.vlabel(), graph.info(), graph
                            .args(), graph.update(), graph.graph());
       }

Here is the call graph for this function:

Here is the caller graph for this function:

void org.munin.plugin.jmx.AbstractGraphsProvider.printGraphConfig ( PrintWriter  out,
String  title,
String  vlabel,
String  info,
String  args,
boolean  update,
boolean  graph 
) [inline, protected, inherited]

Reimplemented in org.munin.plugin.jmx.AbstractMemoryPoolProvider.

Definition at line 39 of file AbstractGraphsProvider.java.

                                    {
              out.println("graph_title " + title);
              out.println("graph_vlabel " + vlabel);
              if (info != null && info.length() > 0) {
                     out.println("graph_info " + info);
              }
              if (args != null && args.length() > 0) {
                     out.println("graph_args " + args);
              }
              out.println("graph_category " + config.getCategory());
              if (!update) {
                     out.println("update no");
              }
              if (!graph) {
                     out.println("graph no");
              }
       }

Here is the call graph for this function:

void org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.printValues ( PrintWriter  out) [inline, virtual, inherited]

Implements org.munin.plugin.jmx.AbstractGraphsProvider.

Reimplemented in org.munin.plugin.jmx.GarbageCollectionInfo.

Definition at line 123 of file AbstractAnnotationGraphsProvider.java.

                                                {
              try {
                     prepareValues();
              } catch (Exception e) {
                     System.err.println("Failed to prepare values for class "
                                   + getClass() + ": " + e.getMessage());
                     e.printStackTrace();
              }
              for (AccessibleObject accessible : getFieldObjects()) {
                     printFieldValue(out, accessible);
              }
       }

Here is the call graph for this function:

static void org.munin.plugin.jmx.AbstractGraphsProvider.runGraph ( String[]  args) [inline, static, package, inherited]

Definition at line 85 of file AbstractGraphsProvider.java.

                                           {
              String providerClassName = Thread.currentThread().getStackTrace()[2].getClassName();
              Class<? extends AbstractGraphsProvider> providerClass;
              try {
                     providerClass = Class.forName(providerClassName).asSubclass(AbstractGraphsProvider.class);
              } catch (ClassNotFoundException e) {
                     throw new IllegalStateException("Failed to get provider class", e);
              }
              Config config = getConfig(args);
              AbstractGraphsProvider provider = getProvider(providerClass, config);
              runGraph(provider, config, args);
       }

Here is the call graph for this function:

Here is the caller graph for this function:

static String org.munin.plugin.jmx.AbstractGraphsProvider.toFieldName ( String  name) [inline, static, protected, inherited]

Definition at line 147 of file AbstractGraphsProvider.java.

                                                        {
              return name.replaceAll("[^A-Za-z0-9_]", "_");
       }

Here is the caller graph for this function:

Definition at line 34 of file AbstractMemoryUsageProvider.java.

                          {
              return (memoryUsage == null ? -1 : memoryUsage.getUsed());
       }

Member Data Documentation

Definition at line 10 of file AbstractGraphsProvider.java.

Definition at line 9 of file AbstractMemoryUsageProvider.java.


The documentation for this class was generated from the following file: