Solution Pack related configuration files are located in the directories:

<DCF-Install>/Collecting/Collector-Manager/<SP-Instance>(smarts-metrics-collect)/conf/

<DCF-Install>/ Collecting /Smarts-Collector/<SP-Instance>/conf/

<DCF-Install>/ Collecting /Kafka-Connector/<SP-Instance>/conf/

  1. Collector Manager Configuration

    A Collecting Manager Configuration file can be found at File: <DCF-Install>/ Collecting/Collector-Manager /<INSTANCE>(smarts-metrics-collect)/conf/collecting.xml.

    Sample contents:

    <config xmlns="http://www.watch4net.com/APG/Collecting" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.watch4net.com/APG/Collecting collecting.xsd ">
            <connectors>
            <connector enabled="true" name="File" type="File-Connector"   config="conf/file-connector.xml" />
            <connector enabled="true" name="Kafka" type="Kafka-Connector"   config="Kafka-Connector/smarts-metrics-collect/conf/kafka-connector.xml" />
            </connectors>
    
            <collectors>
                    <collector enabled="true" name="smarts-INCHARGE-AM-PM-0-metrics" next="Kafka File" type="Smarts-Collector" config="Smarts-Collector/smarts-metrics-collect/conf/smarts-INCHARGE-AM-PM-0-metrics.xml" />
                    <collector enabled="true" name="smarts-INCHARGE-AM-PM-0-topo" next="Kafka File" type="Smarts-Collector" config="Smarts-Collector/smarts-metrics-collect/conf/smarts-INCHARGE-AM-PM-0-topo.xml" />
            </collectors>
    </config>
    

    This is basic configuration of the Solution Pack which deals with how the processing starts.

  2. SMARTS metrics Configuration

    The following example is a default SMARTS metrics configuration: This file will have all Smarts domain manager configuration for polling.

    File: <DCF-Install>/Collecting/Smarts-Collector//<INSTANCE>(smarts-metrics-collect)/conf/smarts-<domain>-metrics.xml

    <config>
            <domain>INCHARGE-AM-PM</domain>
            <host>localhost:12345</host>
            <username>admin</username>
            <password>{CFCBACB47C451D42C421C1A2441B636C51D8E0A5FBF2BB9832FD5851C175179184D7D63229D2F5E04A09DB9D876AFC5E}</password>
            <group>group</group>
            <period>240</period>
            <thread pool-size="3" />
            < dm-connection pool-size ="3" keep-connection="false" creation-grace-time="100" />
            <indicators select="both">conf/pm-metrics.xml</indicators>
            <properties refresh="00:00/86400" send-on-refresh-only="false" />
            <smooth-factor>0.5</smooth-factor>
    </config>
    
    Supported configuration parameters are:

    Parameters

    Description

    domain

    The smarts collector retrieves data from any domain to add historical capabilities to the suite. It is highly flexible and customizable to fit any situation.

    host

    The host:port to connect to domain.

    username

    The username to connect to the domain.

    password

    The password to connect to the domain.

    group

    The collector will assign the string specified in the group element to generated raw values. This group should match one of your processing component configuration.

    period

    You can choose your polling period in seconds (period element) according to your domain configuration and your needs.

    thread pool-size

    The thread pool-size attribute let you specify the number of concurrent polling threads which will share a customizable number of connections to smarts domain (specified in dm-connection pool-size).

    dm-connection pool-size

    The dm-connection pool-size attribute let you specify a customizable number of connections to smarts domain.

    dm-connection creation-grace-time

    The dm-connection creation-grace-time is the minimum delay between consecutive connection to the smarts domain.

    indicators

    Indicators let you select the domain descriptor file which defines what is interesting in a smarts domain.

    Properties refresh

    The refresh attribute controls how often the collector should set the refresh tag on the generated values. It can be either a time with a period (00:00/86400 will refresh properties each day at midnight) or a number of polling loop (360 will refresh properties every 360 polling loops). In both cases, properties will always be refresh on first polling loop, right after the collector startup.

    smooth-factor

    The smooth-factor control the actual polling rate. For example, if polling period is 240 second and smooth factor is 0.5, the Collector will try to pool the domain in 0.5 * 240 = 120 seconds.

    source

    A source represents a SMARTS domain instance to monitor. Each source can be composed of a primary source and multiple failover sources, if needed. This is useful for specifying backup SMARTS Domains in case the primary is down.

    primary/failover

    Determines if the source is the primary source or just a failover source.

    broker-hostname

    The broker hostname of the SMARTS Domain if connecting to the broker as your entry point.

    broker-port

    The port on which the SMARTS Domain's broker is accepting connections.

    broker-username (optional)

    The username to use to establish the connection with the broker. This password can be in the encrypted form, generated by the crypt-password script. If no authentication is required, omit this element.

    broker-password (optional)

    The password to use to establish the connection with the broker. This password can be in the encrypted form, generated by the crypt-password script. If no authentication is required, omit this element.

    hostname

    The hostname of the SMARTS Domain if you need to directly connect to the manager.

    port

    The port on which the SMARTS Domain is accepting connections.

    domain-name

    The name of the domain from which metrics & topo data will be fetched.

    username

    The username used to connect to the domain manager.

    password

    The password used to connect to the domain manager. This password can be in the encrypted form, generated by the crypt-password script.

  3. SMARTS topology Configuration:

    The following example is a default SMARTS topology configuration: This file will have all Smarts domain manager configuration for polling.

    File: <DCF-Install>/Collecting/Smarts-Collector//<INSTANCE>(smarts-metrics-collect)/conf/smarts-<domain>-topo.xml

    <config>
            <domain>INCHARGE-AM-PM</domain>
            <host>localhost:12345</host>
            <username>admin</username>
            <password>{CFCBACB47C451D42C421C1A2441B636C51D8E0A5FBF2BB9832FD5851C175179184D7D63229D2F5E04A09DB9D876AFC5E}</password>
            <group>group</group>
            <period>3600</period>
            <thread pool-size="3" />
            <dm-connection pool-size="3" keep-connection="false" creation-grace-time="100" />
            <indicators select="both">conf/pm-topo.xml</indicators>
            <properties refresh="00:00/86400" send-on-refresh-only="false" />
            <smooth-factor>0.5</smooth-factor>
    </config>
    
  4. Kafka Connector Configuration

    Kafka server configuration used to publish events from Smarts to Kafka is below:

    File : <DCF-Install>/Collecting/Kafka-Connector/<INSTANCE>(smarts-metrics-collect)/conf/kafka-connector.xml)

    <kafka-connector-config xmlns="http://www.watch4net.com/KafkaConnector" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.watch4net.com/KafkaConnector ../kafka-connector.xsd ">
            <kafka-producer-settings>
                <!-- Servers information -->
                    <server host="localhost" port="9092"/>
                <!-- Producer (and topic) information -->
                <producer topic-name="default-topic"
                    acks="1"
                    retries="0"
                    linger-ms="0ms"
                    buffer-memory="33554432"
                    compression-type="none"
                    batch-size="16384"
                    max-block-ms="5s"
                    max-in-flight-requests-per-connection="5"
                    max-request-size="1048576"/>
    
                <!-- All connection parameters will be attributes except "server" -->
                <connection request-timeout-ms="5s"
                    connections-max-idle-ms="9m"
                    retry-backoff-ms="100ms"
                    reconnect-backoff-ms="50ms"/>
    
                <!-- Additional properties -->
                <additional-parameters key="metadata.max.age.ms">1000</additional-parameters>
                <additional-parameters key="receive.buffer.bytes">32768</additional-parameters>
                <additional-parameters key="send.buffer.bytes">131072</additional-parameters>
    
            <additional-parameters key="security.protocol">SSL</additional-parameters>
                <additional-parameters key="ssl.truststore.location">../../../Tools/Webservice-Gateway/Default/conf/truststore</additional-parameters>
            <additional-parameters key="ssl.truststore.password">{613FF4F84B7A36EC8D22728760D70A56FF2CB8E9CCCD90367BFEEB74E5B97EAB1B765AA92F50F91101E757D131BD5A4D}</additional-parameters>
            <additional-parameters key="ssl.keystore.location">../../../Tools/Webservice-Gateway/Default/conf/clientkeystore</additional-parameters>
            <additional-parameters key="ssl.keystore.password">{9F9B74AF79C19897075C1CFEC22D542F018838BEFE763E4DF180850D474320D2EC9595E36F68D90A1A830175BF42D8A7}</additional-parameters>
            <additional-parameters key="ssl.key.password">{FE076F391C3C5946DF2EDF230CAF272D601423289B8BFF9C29F246D089C153D01E2E5A0B1A1F714C814DDF3088F3982F}</additional-parameters>
    
            </kafka-producer-settings>
    
            <connector-component-behavior outputJson="true" flush-every-n-rawvalues="5000"/>
    
    </kafka-connector-config>
    
Kafka Connector parameters

Parameters

Description

server

This tag must occur at least once.

host: The address of one of the kafka bootstrap servers

port: The port that the bootstrap server is listening on.

producer

This tag is optional, but may be used for templating kafka producers. Please refer to the schema for more information.

connection

This tag is optional, but may be used for templating kafka connections. Please refer to the schema for more information.

additional-parameters

This tag is optional, but may be used for configuring kafka options outside of the purview of the previous tags. These options include, but are not limited to SSL connection parameters.

Configuring Kafka Connector:

Parameters

Description

kafka-producer-settings

This tag may be used if we want to customize how the writer writes to kafka. Please refer to the schema for more information.

connector-component-behavior

This tag may be used if we want to control how often we flush to kafka.