Infrastructure Integration

Configuration

  1. Configure the agent by editing /etc/netsil-dd-agent/conf.d/solr.yamlin the collectors.

Example:

    instances:
      - host: localhost
        port: 9999
      #   user: username
      #   password: password
      #   process_name_regex: .*process_name.* # Instead of specifying a host, and port. The agent can connect using the attach api.
      #                                                                       #   This requires the JDK to be installed and the path to tools.jar to be set below.
      #   tools_jar_path: /usr/lib/jvm/java-7-openjdk-amd64/lib/tools.jar # To be set when process_name_regex is set
      #   name: solr_instance
      #   # java_bin_path: /path/to/java # Optional, should be set if the agent cannot find your java executable
      #   # java_options: "-Xmx200m -Xms50m" # Optional, Java JVM options
      #   # trust_store_path: /path/to/trustStore.jks # Optional, should be set if ssl is enabled
      #   # trust_store_password: password
      #   tags:
      #     env: stage
      #     newTag: test


    # List of metrics to be collected by the integration
    init_config:
      conf:
        - include:
        type: searcher
        attribute:
          maxDoc:
            alias: solr.searcher.maxdoc
            metric_type: gauge
          numDocs:
            alias: solr.searcher.numdocs
            metric_type: gauge
          warmupTime:
            alias: solr.searcher.warmup
            metric_type: gauge
        - include:
        id: org.apache.solr.search.FastLRUCache
        attribute:
          cumulative_lookups:
            alias: solr.cache.lookups
            metric_type: counter
          cumulative_hits:
            alias: solr.cache.hits
            metric_type: counter
          cumulative_inserts:
            alias: solr.cache.inserts
            metric_type: counter
          cumulative_evictions:
            alias: solr.cache.evictions
            metric_type: counter
        - include:
        id: org.apache.solr.search.LRUCache
        attribute:
          cumulative_lookups:
            alias: solr.cache.lookups
            metric_type: counter
          cumulative_hits:
            alias: solr.cache.hits
            metric_type: counter
          cumulative_inserts:
            alias: solr.cache.inserts
            metric_type: counter
          cumulative_evictions:
            alias: solr.cache.evictions
            metric_type: counter
        - include:
        id: org.apache.solr.handler.component.SearchHandler
        attribute:
          errors:
            alias: solr.search_handler.errors
            metric_type: counter
          requests:
            alias: solr.search_handler.requests
            metric_type: counter
          timeouts:
            alias: solr.search_handler.timeouts
            metric_type: counter
          totalTime:
            alias: solr.search_handler.time
            metric_type: counter
          avgTimePerRequest:
            alias: solr.search_handler.avg_time_per_req
            metric_type: gauge
          avgRequestsPerSecond:
            alias: solr.search_handler.avg_requests_per_sec
            metric_type: gauge
  1. Check and make sure that all yaml files are valid with following command:

    /etc/init.d/netsil-collectors configcheck
    
  2. Restart the Agent using the following command:

    /etc/init.d/netsil-collectors restart
    
  3. Execute the info command to verify that the integration check has passed:

    /etc/init.d/netsil-collectors info
    

The output of the command should contain a section similar to the following:

    Checks
    ======

      [...]

      solr
      ----
          - instance #0 [OK]
          - Collected 8 metrics & 0 events

Infrastructure Datasources

Datasource Available Aggregations Unit Description
solr.searcher.maxdoc avg max min sum document One greater than the largest possible document number.
solr.searcher.numdocs avg max min sum document The total number of indexed documents.
solr.searcher.warmup avg max min sum millisecond The time spent warming up.
solr.cache.hits avg max min sum hit/second The number of cache hits per second.
solr.cache.lookups avg max min sum get/second The total number of cache lookups per second.
solr.cache.inserts avg max min sum set/second The total number of cache inserts per second.
solr.cache.evictions avg max min sum eviction/second The total number of cache evictions per second.
solr.search_handler.errors avg max min sum error/second Number of errors per second encountered by the handler.
solr.search_handler.requests avg max min sum request/second Number of requests per second processed by the handler.
solr.search_handler.timeouts avg max min sum timeout/second Number of responses per second received with partial results.
solr.search_handler.time avg max min sum The sum of all request processing times (in milliseconds) per second.
solr.search_handler.avg_time_per_req avg max min sum millisecond/request The average time per request.
solr.search_handler.avg_requests_per_sec avg max min sum request/second The average number of requests per second.