Use internal collection to send monitoring dataedit

Use internal collectors to send Beats monitoring data directly to your monitoring cluster.

  1. Create a user that has appropriate authority to send system-level monitoring data to Elasticsearch. For example, you can use the built-in beats_system user or assign the built-in beats_system role to another user. For more information, see Grant privileges and roles needed for monitoring.
  2. Add the monitoring settings in the Functionbeat configuration file. If you configured the Elasticsearch output and want to send Functionbeat monitoring events to the same Elasticsearch cluster, specify the following minimal configuration:

    monitoring:
      enabled: true
      elasticsearch:
        username: beats_system
        password: somepassword

    If you configured a different output, such as Logstash or you want to send Functionbeat monitoring events to a separate Elasticsearch cluster (referred to as the monitoring cluster), you must specify additional configuration options. For example:

    monitoring:
      enabled: true
      cluster_uuid: PRODUCTION_ES_CLUSTER_UUID 
      elasticsearch:
        hosts: ["https://example.com:9200", "https://example2.com:9200"] 
        username: beats_system
        password: somepassword

    This setting identifies the Elasticsearch cluster under which the monitoring data for this Functionbeat instance will appear in the Stack Monitoring UI. To get a cluster’s cluster_uuid, call the GET / API against that cluster.

    This setting identifies the hosts and port numbers of Elasticsearch nodes that are part of the monitoring cluster.

    If you want to use PKI authentication to send monitoring events to Elasticsearch, you must specify a different set of configuration options. For example:

    monitoring:
      enabled: true
      cluster_uuid: PRODUCTION_ES_CLUSTER_UUID
      elasticsearch:
        hosts: ["https://example.com:9200", "https://example2.com:9200"]
        username: ""
        ssl:
          ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
          ssl.certificate: "/etc/pki/client/cert.pem"
          ssl.key: "/etc/pki/client/cert.key"

    You must specify the username as "" explicitly so that the username from the client certificate (CN) is used. See Specify SSL settings for more information about SSL settings.

  3. Deploy Functionbeat.
  4. View the monitoring data in Kibana.