Extension configuration

ActiveGate extensions are designed to monitor remote technologies that are beyond the reach of Dynatrace OneAgent. Because of that, each device needs to be defined explicitly. We call it the technology endpoint and define it using the extension configuration.

ActiveGate extension configuration location

Apart from Endpoint name and Choose ActiveGate fields, you can specify your own in the extension JSON. The values you set in the UI are later available to refer to in the extension Python code.

You can choose from the following property types:

  • String
  • Boolean
  • Integer
  • Float
  • Password
  • Textarea
  • Dropdown

How to implement and use extension configuration

JSON declaration

Edit the properties section to declare the extension configuration. Each property consists of the following fields:

  • key - unique id of the property
  • type - one from listed above
  • defaultValue (optional) - value of the property when none specified
  • dropdownValues (optional) - used only for Dropdown property type. It must not be empty and you must declare a default value.
properties declaration example
  "url": "http://localhost:8769"

The extension JSON enables you to provide the description of your properties. This is optional, but it gives you control over the look and feel of your configuration in the UI. Edit the configUI section to describe your properties presentation.

properties presentation example
  "configUI": {
    "displayName": "My plugin",
    "properties": [
        "key": "string_prop",
        "displayName": "String property",
        "displayOrder": 1
        "key": "boolean_prop",
        "displayName": "Boolean property",
        "displayOrder": 2
        "key": "integer_prop",
        "displayName": "Integer property",
        "displayOrder": 3
        "key": "float_prop",
        "displayName": "Float property",
        "displayOrder": 4
        "key": "password_prop",
        "displayName": "Password property",
        "displayHint": "hint",
        "displayOrder": 5
        "key": "textarea_prop",
        "displayName": "Textarea property",
        "displayHint": "hint",
        "displayOrder": 6
        "key": "dropdown_prop",
        "displayName": "Dropdown property",
        "displayOrder": 7

  • key - matches UI config with property
  • displayName - describes input label. Property key will be used if not specified.
  • displayHint - describes placeholder for property input. Empty by default.
  • displayOrder - allows input order change. By default it goes with declaration order.

See Extensions reference for more details.

Python usage

When working with the python code, you can read the configuration as in the example below:

properties usage example
def initialize(self, **kwargs):
        config = kwargs['config']
        string_prop = config['string_prop']
        boolean_prop = config['boolean_prop']
        integer_prop = config['integer_prop']
        float_prop = config['float_prop']
        password_prop = config['password_prop']
        textarea_prop = config['textarea_prop']
        dropdown_prop = config['dropdown_prop']