Structure of the metrics-store.xml File

In TIBCO BusinessEvents Studio, based on the object management selection, the matching store provider metrics-store.xml file is picked and a form-based UI is generated listing the configuration properties from metrics-store.xml

Sample metrics-store.xml File

The following is a sample of metrics-store.xml to add InfluxDB as a metrics store.

Copy

Sample metrics-store.xml for InfluxDB

<?xml version="1.0" encoding="UTF-8"?>
<metrics-store>
    <type>InfluxDB</type>
    <label>InfluxDB</label>
    <class>com.tibco.cep.metrics.influxdb.InfluxDBMetricsStoreProvider</class>
    <description>InfluxDB is a open source time series database.</description>
    <version>1.0.0</version>
    <!--The input required by the metrics store provider e.g connection details, ssl config etc.-->
    <properties>
        <property name="influx.url" displayName="InfluxDB URL" type="String" default="http://localhost:8086" mandatory="true"/>
        <property name="influx.org" displayName="Organization" type="String" default="" mandatory="true"/>
        <property name="influx.bucket" displayName="Bucket" type="String" default="" mandatory="true"/>
        <property name="influx.authScheme" displayName="Authentication Scheme" type="String" default="TOKEN">
          <choices>
              <choice displayed="TOKEN" value="TOKEN" />
              <choice displayed="SESSION" value="SESSION" />
        </choices>
        </property>
        <property name="influx.token" displayName="Token" type="String" default="" mask="true"/>
        <property name="influx.username" displayName="User Name" type="String" default="" mask="false"/>
        <property name="influx.password" displayName="Password" type="String" default="" mask="true"/>
       <property name="influx.connectTimeout" displayName="Connect Timeout" type="Integer" default="10000"/>
        <property name="influx.writeTimeout" displayName="Write Timeout" type="Integer" default="10000"/> <    <security>
            <property name="influx.trustStoreLocation" displayName="Trusted Certificates Location" type="File" directory="true" default="" mask="" mandatory="true"/>
            <property name="influx.trustStorePwd" displayName="Trust Store Password" type="String" default="" mask="true" mandatory="false"/>
        </security>
    </properties>
    <!--The input required for the entity-set, these properties will apply to all entities-->
    <entity-set>
        <!--The input required for each entity-->
        <entity>
            <property name="influx.tagEntityId" displayName="Tag Entity Id" type="Boolean" default="true"/>
        </entity>
    </entity-set>
</metrics-store>

XML Tags of the metric-store.xml File

The following table lists the major tags available in the metrics-store.xml file and sample values for InfluxDB:

The store.xml File Tags
XML Tags Description
<metrics-store> Identifies that the enclosed XML content is for a metrics-store.
<type>

Sets the type of the metrics store and is used to register and load metrics store.

<label>

Displays the label for the metrics store type

<class> Fully qualified class implementing the MetricsStoreProvider interface.
<description> A short description of the metrics store.
<version> Version number of the XML file. During the startup, TIBCO BusinessEvents Studio compares the version number of the default (version 1.0) and the custom metrics-store.xml file and displays settings accordingly.
<properties>

Container tag for property tags.

<property>

Define the properties that you want to display on the UI. For each property you can define the appropriate attributes such as displayName, type, and default. To display a list of options for the user, you can insert <choices> and <choice> tags inside the <property> tag.

Tip: Use only the suggested data types (the type attribute) for the existing and new properties. Using data types other than the suggested data types might result in unexpected errors.
<security>

Container group for security-specific properties. This displays a Security Enabled check box on the UI. The properties under this container are displayed on the UI only when the Security Enabled check box is selected.

<entity-set> Container tag for options of the entity tag.
<entity> The entity tag can further have multiple property tags to define entity specific properties.
choices Container tag for options of the property values.
choice Identifies the option of the property.