06 Feb 2020 03:07 PM
Hello
I'm trying to create an OneAgent plugin which will monitor used system descriptors by Java app (executed by Tomcat).
Here is plugin.json for it:
{
  "name": "custom.python.descriptors_counter_plugin",
  "version": "0.01",
  "type": "python",
  "entity": "PROCESS_GROUP_INSTANCE",
  "metricGroup": "descriptors_counter_metrics",
  "processTypeNames": [
    "JAVA"
  ],
  "source": {
    "package": "descriptors_counter_plugin",
    "className": "DescriptorsPlugin",
    "activation": "Singleton"
  },
  "metrics": [
    {
      "timeseries": {
        "key": "used_descriptors",
        "unit": "Count",
        "displayname": "Used descriptors count"
      }
    }
  ],
  "configUI": {
    "displayName": "OneAgent Used Descriptors Plugin"
  }
}
And how it gets Process Group:
pgi = self.find_single_process_group(pgi_name('tomcat'))On the server exists several tomcat groups.
I build it and uploaded it to Dynatrace but didn't find any changes for the tomcat section in UI.
Therefore several questions:
1. How to make sure that my plugin actually reached the hosts? I grep'ed through /opt/dynatrace/oneagent/log name of the plugin on one of them didn't find any mentions about my plugin;
2. What processTypeNames should I use in plugin.json JAVA or TOMCAT?
Thanks in advance.
Solved! Go to Solution.
06 Feb 2020 04:44 PM
Not sure what you mean by "system descriptors" but you can get FileDescriptor counts very easily via JMX and the java.lang.OperatingSystem MBean.
Attached is a custom JMX plugin that determines OpenFileDescriptorCount and MaxFileDescriptorCount for any Java process:
10 Feb 2020 08:03 AM
Dear Andrii,
please replace the processTypeNames property by the technologies property in the form:
"technologies": [ "TOMCAT" ]
The value of the technologies can be taken from the UI - on the process level you can find 'Main technology' property for the process, see the attached snapshot:
You can also find this info in Activation tips of Plugin life cycle in the most recent documentation available in our SDK.
Best regards,
Peter
