This documentation supports BMC Helix AIOps till November 2021. To view other versions of the documentation, select a version from the Product version menu.

Customizing the out-of-the-box event pipelines

BMC Helix Intelligent Integrations provides the following out-of-the-box third-party integrations:

  • Dynatrace
  • SolarWinds NPM
  • TrueSight Operations Management

BMC Helix Intelligent Integrations uses custom event pipelines to get third-party data and this data is transformed to BMC Helix Platform events. You can further customize the event pipelines to suit your requirements. For example, in the following event mapping file, if you want to change the prefix value from solarwinds_ to SolarWinds_NPM, you can do it easily and reload the configurations to reflect the changes. 

event_slot_mapping.json
The event_slot_mapping.json file maps third-party data to the BMC Helix Platform compatible format
by using the mapping structure as shown in the following example:
{
  "EventMappingDetails": [
  {
	"inputkey": "mc_ueid",
	"outputkey": "_identifier",
	"type": "prefix",
	"value": "solarwinds_"
  },
  ...

Important

You can customize only the out-of-the-box event pipelines.


Follow these steps to customize the out-of-the-box event pipelines.

Before you begin

Ensure that you have downloaded and installed the BMC Helix Intelligent Integrations Connector and configured the required integration for the third-party product whose event pipelines you plan to customize. For more information, see 2022-02-11_06-15-01_Downloading and installing connectors for third-party integrations.

To customize the out-of-the-box event pipelines

  1. Log in to the host computer on which you have installed the BMC Helix Intelligent Integrations Connector.

  2. Run the following command to verify that the Connector status is up and running: 

    docker ps | grep <connector-name>
     
     
    #Output
    CONTAINER ID   IMAGE          COMMAND      CREATED        STATUS       PORTS                NAMES
    deed817ccb72   57e8da5cb8ac   "/run.sh"    5 hours ago    Up 2 hours   5140/tcp,24224/tcp   test_connector_tsom
  3. Go to the /opt/bmc/connectors/<connector_name>/data directory, and locate the directory whose name matches the integration ID of the Connector; for example, ddd282e4-9ab3-437a-bfbe-dfbfbead822b.

    How do I know the integration ID of my integration?

    Run the following command to check the existing connector details:

    cat /opt/bmc/connectors/<connector_name>/data/data_fluent.conf

    In the following example, the integration ID is highlighted for one of the configured integrations for TrueSight Operations Management. You can identify the integration ID based on the file name prefix. In the following example, the tsom_event_pipeline.conf file name has tsom as the prefix.

  4. Copy the /opt/bmc/connectors/<connector_name>/data/<Integration ID> directory to the /opt/bmc/connectors/<connector_name>/custom directory.

  5. Using a text editor, open the /opt/bmc/connectors/<connector_name>/custom/<Integration ID>/pipeline/<third-party-product name>_event_pipeline.conf file, and update the following details:
    • Change the tag name to ensure that duplicate tag names do not exist across configuration files. In the following example, the tsom_refreshEvents tag name has been changed to Custom_tsom_refreshEvents

      #tag tsom_refreshEvents
      
      tag Custom_tsom_refreshEvents
      
      
      #Ensure that you replace all the old tag name references with the new tag name in the /opt/bmc/connectors/<connector_name>/custom/<Integration ID>/pipeline/<third-party-product name>_event_pipeline.conf file.

      What happens if there are duplicate tag names?

      If there are duplicate tag names in the configuration files, one of the following issues might occur:

      • You might not get the expected results.

      • The Connector might stop working.

    • Update data to custom in all the references of the following path: 

      Change /fluentd/etc/data/<Integration ID> to /fluentd/etc/custom/<Integration ID>

    • Update mgmt to custom in all the references of the following path:

      Change /fluentd/etc/mgmt/<Integration ID> to /fluentd/etc/custom/<Integration ID>

    Applicable only to SolarWinds NPM

    For SolarWinds NPM, repeat the preceding steps also in the /opt/bmc/connectors/<connector_name>/custom/<Integration ID>/pipeline/<third-party-product name>_alert_pipeline.conf file.

  6. Using a text editor, open the /opt/bmc/connectors/<connector_name>/custom/<Integration ID>/config/event_slot_mapping.json file and update the following details:
    • Add, delete or modify the event mapping details according to your requirement.
    • Update data to custom in all the references of the following path: 

      Change /fluentd/etc/data/<Integration ID> to /fluentd/etc/custom/<Integration ID>.

  7. Delete the /opt/bmc/connectors/<connector_name>/custom/<Integration ID>/out directory.
  8. Using a text editor, open the /opt/bmc/connectors/<connector-name>/custom/custom_fluent.conf file, and include the /fluentd/etc/custom/<Integration ID>/pipeline/<third-party-product name>_event_pipeline.conf file as shown in the following example: 

    @include /fluentd/etc/custom/ddd282e4-9ab3-437a-bfbe-dfbfbead822b/pipeline/tsom_event_pipeline.conf
    
    
    #Applicable only to SolarWinds NPM. For SolarWinds NPM, include both alert and event configuration files as shown in the following example:
    
    @include /fluentd/etc/custom/fff282e4-9ab3-437a-bfbe-dfbfbead822b/pipeline/solarwinds_event_pipeline.conf
    @include /fluentd/etc/custom/fff282e4-9ab3-437a-bfbe-dfbfbead822b/pipeline/solarwinds_alert_pipeline.conf
  9. Run the following command to assign read, write, and execute permissions to the /opt/bmc/connectors/<connector-name>/custom/<Integration ID> directory: 

    #Syntax
    chmod -R 777 /opt/bmc/connectors/<connector-name>/custom/<Integration ID>
    
    
    #Example
    chmod -R 777 /opt/bmc/connectors/test_connector_tsom/custom/ddd282e4-9ab3-437a-bfbe-dfbfbead822b
  10. Disable the existing event integration by doing the following steps:

    1. Log on to the BMC Helix Intelligent Integrations console.

    2. From Integrations > Configured Integrations, click the action menu for an integration, and click Disable.

      Do I have any other alternative other than disabling an integration?

      If you do not want to fully disable an integration, but just want disable the Events from the existing integration, do the following steps:

      1. From Integrations > Configured Integrations, click the action menu for an integration, and click Edit.

      2. Uncheck the Event entity.

  11. Log in to the container, and run the following command to reload the configurations: 

    #Syntax
    docker exec -it <Container ID> bash reload.sh
     
    #Example
    docker exec -it deed817ccb72 bash reload.sh
    #In the preceding example, deed817ccb72 is the container id.

    How do I find the Container ID?

    Run the following command to get the container ID:

    docker ps | grep <connector-name>

    The command displays the output in the following format. Note the CONTAINER ID from the output.

    CONTAINER ID   IMAGE          COMMAND     CREATED         STATUS       PORTS                NAMES
    deed817ccb72   57e8da5cb8ac   "/run.sh"    5 hours ago    Up 2 hours   5140/tcp,24224/tcp   test_connector_tsom


Was this page helpful? Yes No Submitting... Thank you

Comments