Extension JSON reference
Extensions 1.0 end of life
OneAgent and ActiveGate version 1.299 are the last versions supporting OneAgent and ActiveGate Extensions 1.0 framework. You can continue using Extensions 1.0 if you stay at OneAgent or ActiveGate version 1.299. Note that this means you'll be using an unsupported Python version 3.8. We strongly recommend migrating your extensions to the latest Extensions 2.0 framework.
For more information, see General guidance and how to migrate.
plugin.json top level
Field
Type
Required
Description
Validation
name
string
True
A unique plugin name in Java package format.
minLength: 1, pattern: ^custom.remote.python.([a-zA-Z][a-zA-Z0-9_-]*)+$
version
string
True
The plugin version, must be updated whenever the plugin definition is updated.
pattern: ^\d+.\d+(.\d+)?$
array of strings
False
Type of technology that plugin monitors, as can be viewed on Technologies overview page.
favicon
string
False
link to favicon that should be used on technology tile
entity
string
True
Entity type upon which the plugin is activated
enum: ['CUSTOM_DEVICE', 'CUSTOM_DEVICE_GROUP']
metricGroup
string
True
Definition that will be used for grouping metrics on Custom Charts. It can be used to add metrics to "Technology" group by adding here "tech.Your Technology", or to create your own entry
minLength: 1
object
False
The configUI section defines the configuration fields that are displayed in the UI.
Chart
Array item definition:
Field
Type
Required
Description
Validation
title
string
True
minLength: 1
description
string
False
minLength: 1
group
string
True
minLength: 1
series
Array item definition:
Field
Type
Required
Description
Validation
key
string
True
minLength: 1
color
string
False
aggeragation
string
False
enum: ['MIN', 'MAX', 'AVG', 'SUM', 'COUNT', 'P50', 'P90', 'min', 'max', 'avg', 'sum', 'count', 'p50', 'p90', 'Min', 'Max', 'Avg', 'Sum', 'Count']
mergeaggregation
string
False
enum: ['MIN', 'MAX', 'AVG', 'SUM', 'min', 'max', 'avg', 'sum', 'Min', 'Max', 'Avg', 'Sum']
seriestype
string
False
How will given series render in Dynatrace UI
enum: ['LINE', 'AREA', 'BAR', 'line', 'area', 'bar', 'Line', 'Area', 'Bar']
stacked
boolean
False
rightaxis
boolean
False
displayname
string
False
minLength: 1
unit
string
False
minLength: 1
dimensions
Array item definition:
Property
Description
type
string
minLength
1
Config UI section
Field
Type
Required
Description
Validation
displayName
string
False
Human readable plugin name. This name is displayed in web UI at Settings > Monitored technologies > Custom plugins once the plugin is uploaded.
minLength: 1
ConfigUI properties
Array item definition:
Field
Type
Required
Description
Validation
key
string
True
Config property key, needs to match key from configUI properties section
minLength: 1
displayName
string
True
Human readable property name.
minLength: 1
displayOrder
integer
False
Determines display order on plugin configuration tile.
displayHint
string
False
Hint displayed in the tool-tip.
Alert
Array item definition:
Field
Type
Required
Description
Validation
alert_id
True
Unique alert id.
event_type
True
Event type
description
string
False
Description defines alert message, following code snippets could be used: {threshold} the value of the custom threshold that was violated {severity} the violating value {entityname} the display name of the entity where the metric violated {violating_samples} the number of violating samples that led to that event {dimensions} a string containg the violating dimensions of the metric {alert_condition} a string showing if above or below threshold is alerting
alert_condition
True
Alert condition
event_name
string
True
Event name displayed on UI pages.
minLength: 1
threshold
number
True
The value of the threshold.
samples
integer
True
Size of the "window" in which violating_samples are counted.
violating_samples
integer
True
The number of violating samples that rise an alert. Must be less that samples.
dealerting_samples
integer
True
The number of not violating samples that deactivate and alert. Must be less that samples.
Known technologies list
Array item definition:
Property
Description
type
string
enum
['ACTIVE_MQ', 'AIX_SYSTEM', 'AKKA', 'ALLOTHER', 'AMAZON_REDSHIFT', 'AMQP', 'APACHE_DERBY', 'APACHE_HTTPD', 'APACHE_SOLR', 'APACHE_SPARK', 'APACHE_SYNAPSE', 'APMNG', 'APPARMOR', 'APP_DYNAMIC', 'ARTEMIS', 'ASP_NET', 'ASP_NET_CORE', 'AWS_LAMBDA', 'AWS_RDS', 'AWS_SERVICE', 'AXIS', 'AZURE_SERVICE_BUS', 'AZURE_SERVICE_FABRIC', 'AZURE_STORAGE', 'BOSH', 'BOSHBPM', 'CASSANDRA', 'CEILOMETER', 'CINDER', 'CITRIX', 'CLOUDFOUNDRY', 'CLOUDFOUNDRY_AUCTIONEER', 'CLOUDFOUNDRY_GOROUTER', 'CLR', 'COLDFUSION', 'CONTAINERD', 'COUCHBASE', 'COUCHDB', 'CRIO', 'CTG', 'CXF', 'DATASTAX', 'DB2', 'DIEGO_CELL', 'DJANGO', 'DOCKER', 'DOCKERDEAMON', 'DOTNET', 'DOTNET_REMOTING', 'DYNATRACE_CLASSIC', 'DYNATRACE_CLASSIC_SERVER', 'ELASTIC_SEARCH', 'ERLANG', 'ETCD', 'F5_LTM', 'GARDEN', 'GLANCE', 'GLASSFISH', 'GO', 'GRPC', 'GRSECURITY', 'HADOOP', 'HAPROXY', 'HEAT', 'HESSIAN', 'HORIZON', 'HORNET_Q', 'IBM_CICS_AOR', 'IBM_CICS_REGION', 'IBM_CICS_TOR', 'IBM_IMS_CONNECT', 'IBM_IMS_CONTROL', 'IBM_IMS_MPR', 'IBM_IMS_SOAP_GATEWAY', 'IBM_INTEGRATION_BUS', 'IBM_MQ_CLIENT', 'IIS', 'IIS_APP_POOL', 'ISTIO', 'JAVA', 'JAX_WS', 'JBOSS', 'JBOSS_EAP', 'JERSEY', 'JETTY', 'JRUBY', 'JYTHON', 'KAFKA', 'KEYSTONE', 'KNOWN_TECHNOLOGY_INVALID', 'KUBERNETES', 'KVM', 'LIBVIRT', 'LINKERD', 'LINUX_SYSTEM', 'MARIADB', 'MEMCACHED', 'MONGODB', 'MONGODB_CLIENT', 'MONGODB_CLIENT_DOTNET', 'MONGODB_ROUTER', 'MQ_SERIES', 'MSMQ', 'MSSQL', 'MSSQL_COMPACT_CLIENT', 'MULE_ESB', 'MUSLC', 'MYSQL', 'MYSQL_CONNECTOR', 'NETTY', 'NEUTRON', 'NEW_RELIC', 'NGINX', 'NODE_JS', 'NOVA', 'ONEAGENT_SDK', 'OPENCENSUS', 'OPENSHIFT', 'OPENSTACK', 'OPENSTACK_COMPUTE', 'OPENSTACK_CONTROLLER', 'OPENTRACING', 'OPEN_LIBERTY', 'ORACLE_DATA_PROVIDER', 'ORACLE_DB', 'OTHER_JAVA_AGENT', 'OWIN', 'OWIN_KATANA', 'PERL', 'PHP', 'PHP_FPM', 'PLAY', 'POSTGRES', 'POSTGRE_DOTNET_DATA_PROVIDER', 'PROGRESS', 'PYTHON', 'QEMU', 'RABBITMQ', 'RAILS', 'REDIS', 'RESTEASY', 'RESTLET', 'RIAK', 'RUBY', 'SAG_WEBMETHODS_IS', 'SAP', 'SAP_HANADB', 'SAP_HYBRIS', 'SAP_MAXDB', 'SAP_SYBASE', 'SCALA', 'SELINUX', 'SHAREPOINT', 'SIGNALR', 'SIGNALR_CORE', 'SPRING', 'SQLITE', 'STORM', 'SWIFT', 'THRIFT', 'TIBCO', 'TIBCO_BW', 'TIBCO_EMS', 'TOMCAT', 'VARNISH_CACHE', 'VIM2', 'WCF', 'WEB2PY', 'WEBLOGIC', 'WEBSPHERE', 'WEBSPHERE_LIBERTY', 'WILDFLY', 'WINDOWS_SERVICE', 'WINDOWS_SYSTEM', 'WINK', 'WSGI', 'ZEROMQ']
Metrics section
Array item have to match one of:
Field
Type
Required
Description
Validation
entity
string
False
enum: ['CUSTOM_DEVICE', 'CUSTOM_DEVICE_GROUP']
Field
Type
Required
Description
Validation
entity
string
False
enum: ['CUSTOM_DEVICE', 'CUSTOM_DEVICE_GROUP']
Timeseries
Field
Type
Required
Description
Validation
key
True
Metric name. Must be unique within this plugin.
unit
string
True
Metric unit. See the link for available units.
enum: ['NanoSecond', 'MicroSecond', 'MilliSecond', 'Second', 'Byte', 'KiloByte', 'KibiByte', 'MegaByte', 'MebiByte', 'BytePerSecond', 'BytePerMinute', 'KiloBytePerSecond', 'KiloBytePerMinute', 'KibiBytePerSecond', 'KibiBytePerMinute', 'MegaBytePerSecond', 'MegaBytePerMinute', 'MebiBytePerSecond', 'MebiBytePerMinute', 'Ratio', 'Percent', 'Promille', 'Count', 'PerSecond', 'PerMinute', 'Unspecified']
aggregation
string
False
Time series data point aggregation
enum: ['min', 'max', 'avg', 'sum', 'count', 'MIN', 'MAX', 'AVG', 'SUM', 'COUNT', 'Min', 'Max', 'Avg', 'Sum', 'Count']
array
False
Dimensions are used to provide 1 metric per plugin ObjectName key property value. For example, version, service, or database. Dimension "rx_pid" at index 0 means the system process ID (PID).
displayname
string
True
The name under which the metric will be displayed.
minLength: 1
dimensions
Array item definition:
Statetimeseries
Field
Type
Required
Description
Validation
key
True
displayname
string
True
minLength: 1
Plugin properties
Array item definition:
Field
Type
Required
Description
Validation
key
string
True
Property key. Must be unique within this plugin and must match the key from configUI properties.
minLength: 1
type
string
True
For 'PASSWORD' stars will be displayed while typing.
enum: ['STRING', 'BOOLEAN', 'INTEGER', 'FLOAT', 'PASSWORD', 'JSON', 'TEXTAREA', 'DROPDOWN', 'string', 'boolean', 'integer', 'float', 'password', 'json', 'textarea', 'dropdown', 'String', 'Boolean', 'Integer', 'Float', 'Password', 'Json', 'Textarea', 'Dropdown']
defaultValue
['string', 'integer', 'boolean']
False
Default value.
Source metadata section
Field
Type
Required
Description
Validation
package
string
True
Python package that has plugin class
className
string
True
Name of plugins main python class. Must inherit from BasePlugin.
array of strings
False
Relates to Python packaging, see: https://setuptools.readthedocs.io/en/latest/setuptools.html#declaring-dependencies
array of strings
False
Relates to Python packaging, see: https://docs.python.org/3.8/distutils/setupscript.html
array of strings
False
Relates to Python packaging, see: https://docs.python.org/3.8/distutils/setupscript.html
array of strings
False
Relates to Python packaging, see: https://docs.python.org/3.8/distutils/setupscript.html
UI Section
Field
Type
Required
Description
Validation
keyMetrics
Array item definition:
Field
Type
Required
Description
Validation
key
string
True
minLength: 1
aggregation
string
False
Aggregation type
enum: ['MIN', 'MAX', 'AVG', 'SUM', 'COUNT', 'P50', 'P90', 'min', 'max', 'avg', 'sum', 'count', 'p50', 'p90', 'Min', 'Max', 'Avg', 'Sum', 'Count']
mergeaggregation
string
False
enum: ['MIN', 'MAX', 'AVG', 'SUM', 'min', 'max', 'avg', 'sum', 'Min', 'Max', 'Avg', 'Sum']
displayname
string
False
minLength: 1
unit
string
False
enum: ['NanoSecond', 'MicroSecond', 'MilliSecond', 'Second', 'Byte', 'KiloByte', 'KibiByte', 'MegaByte', 'MebiByte', 'BytePerSecond', 'BytePerMinute', 'KiloBytePerSecond', 'KiloBytePerMinute', 'KibiBytePerSecond', 'KibiBytePerMinute', 'MegaBytePerSecond', 'MegaBytePerMinute', 'MebiBytePerSecond', 'MebiBytePerMinute', 'Ratio', 'Percent', 'Promille', 'Count', 'PerSecond', 'PerMinute', 'Unspecified']
Aggregation type
Property
Description
type
string
enum
['MIN', 'MAX', 'AVG', 'SUM', 'COUNT', 'P50', 'P90', 'min', 'max', 'avg', 'sum', 'count', 'p50', 'p90', 'Min', 'Max', 'Avg', 'Sum', 'Count']
Merge-aggregation type
Property
Description
type
string
enum
['MIN', 'MAX', 'AVG', 'SUM', 'min', 'max', 'avg', 'sum', 'Min', 'Max', 'Avg', 'Sum']
Units in UI
Property
Description
type
string
enum
['NanoSecond', 'MicroSecond', 'MilliSecond', 'Second', 'Byte', 'KiloByte', 'KibiByte', 'MegaByte', 'MebiByte', 'BytePerSecond', 'BytePerMinute', 'KiloBytePerSecond', 'KiloBytePerMinute', 'KibiBytePerSecond', 'KibiBytePerMinute', 'MegaBytePerSecond', 'MegaBytePerMinute', 'MebiBytePerSecond', 'MebiBytePerMinute', 'Ratio', 'Percent', 'Promille', 'Count', 'PerSecond', 'PerMinute', 'Unspecified']