Moogsoft Docs

Configure the New Relic Webhook LAM

The New Relic Webhook LAM is an endpoint for webhook notifications from New Relic events. The LAM parses the JSON events from New Relic into Moogsoft AIOps events.

You can install a basic New Relic Webhook integration in the UI. See New Relic Webhook for integration steps.

Configure the New Relic Webhook LAM f you want to configure custom properties, set up high availability or configure advanced options that are not available in the UI integration.

See the New Relic documentation for details on New Relic components.

Before You Begin

Before you configure the New Relic Webhook LAM, ensure you have met the following requirements:

  • You have an active New Relic account.

  • You have the permissions to configure notification channels in New Relic.

  • New Relic can make requests to external endpoints over port 443. This is the default.

  1. Configure the properties for the REST connection:

    • address: Address on the Moogsoft AIOps server that listens for REST messages. Defaults to all interfaces.

    • port: Port on the Moogsoft AIOps server that listens for New Relic messages. Defaults to 48010.

  2. Configure authentication:

    • authentication_type: Type of authentication used by the LAM. Defaults to none.

    • authentication_cache: Whether to cache the username and password for the current connection when the authentication type is Basic.

    • basic_auth_static: Username and password used for Basic Auth Static authentication.

  3. Configure the SSL properties if you want to encrypt communications between the LAM and the REST connection:

    • use_ssl: Whether to use SSL certification.

    • path_to_ssl_files: Path to the directory that contains the SSL certificates.

    • ssl_key_filename: The SSL server key file.

    • ssl_cert_filename: The SSL root CA file.

    • use_client_certificates: Whether to use SSL client certification.

    • client_ca_filename: The SSL client CA file.

  4. Configure the LAM behavior:

    • accept_all_json: Allows the LAM to read and process all forms of JSON.

    • num_threads: Number of worker threads to use.

    • rest_response_mode: When to sends a REST response. See the REST LAM Reference for the options.

    • lists_contain_multiple_events: Whether Moogsoft AIOps interprets a JSON list as multiple events.

    • rpc_response_timeout: Number of seconds to wait for a REST response.

    • event_ack_mode: When Moogfarmd acknowledges events from the LAM during the event processing pipeline.

  5. Optionally configure the LAM identification and log file details:

    • name: Identifies events the LAM sends to the Message Bus.

    • capture_log: Name and location of the LAM's capture log file.

    • configuration_file: Name and location of the LAM's process log configuration file.

  6. Optionally configure severity conversion. See Severity Reference for further information and "Conversion Rules" in Data Parsing for details on conversions in general.

Configure the LAM

Edit the configuration file to control the behavior of the New Relic Webhook LAM. You can find the file at $MOOGSOFT_HOME/config/newrelic_lam.conf.

The New Relic Webhook LAM is a REST-based LAM as it provides an HTTP endpoint for data ingestion. See the LAM and Integration Reference for a full description of all properties. Not all properties for the generic REST LAM apply to the New Relic Webhook LAM.

Some properties in the file are commented out by default. Uncomment properties to enable them.

Example

An example New Relic Webhook LAM configuration is as follows:

monitor:
{
    name                          : "New Relic Rest Lam Monitor",
    class                         : "CRestMonitor",
    port                          : 48010,
    address                       : "0.0.0.0",
    accept_all_json               : true,
    use_ssl                       : false,
    #path_to_ssl_files            : "config",
    #ssl_key_filename             : "server.key",
    #ssl_cert_filename            : "server.pem",
    #use_client_certificates      : false,
    #client_ca_filename           : "ca.crt",
    authentication_type           : "none",
    authentication_cache          : true,
    lists_contain_multiple_events : true,
    num_threads                   : 5,
    rest_response_mode            : "on_receipt",
    rpc_response_timeout          : 20,
    event_ack_mode                : "queued_for_processing"
agent:
{
    name                          : "New Relic",
    capture_log                   : "$MOOGSOFT_HOME/log/data-capture/newrelic_lam.log"
},
log_config:
{
    configuration_file            : "$MOOGSOFT_HOME/config/logging/newrelic_lam.log.json"
}
Configure for High Availability

Configure the New Relic Webhook LAM for high availability if required. See High Availability Overview for details.

Configure LAMbot Processing

The New Relic Webhook LAMbot processes and filters events before sending them to the Message Bus. You can customize or bypass this processing if required. You can also load JavaScript files into the LAMbot and execute them.

See LAMbot Configuration for more information. An example New Relic Webhook LAM filter configuration is shown below.

filter:
{
    presend: "NewRelicLam.js"
}
Start and Stop the LAM

Restart the Pingdom LAM to activate any changes you make to the configuration file or LAMbot.

The LAM service name is newreliclamd.

See Control Moogsoft AIOps Processes for the commands to start, stop and restart the LAM.

You can use a GET request to check the status of the Pingdom LAM. See "Check the LAM Status" in the Configure the REST LAM for further information and examples.

Configure New Relic

After you have the New Relic Webhook LAM running and listening for incoming requests, you can configure a notification channel in New Relic. See "Configure New Relic" in New Relic Webhook.