Configure APM instrumentation
editConfigure APM instrumentation
editLibbeat uses the Elastic APM Go Agent to instrument its publishing pipeline. Currently, only the Elasticsearch output is instrumented. To gain insight into the performance of Heartbeat, you can enable this instrumentation and send trace data to APM Server.
Example configuration with instrumentation enabled:
instrumentation: enabled: true environment: production hosts: - "http://localhost:8200" api_key: L5ER6FEvjkmlfalBealQ3f3fLqf03fazfOV
Configuration options
editYou can specify the following options in the instrumentation
section of the heartbeat.yml
config file:
enabled
editSet to true
to enable instrumentation of Heartbeat.
Defaults to false
.
environment
editSet the environment in which Heartbeat is running, for example, staging
, production
, dev
, etc.
Environments can be filtered in the APM app.
hosts
editThe APM Server hosts to report instrumentation data to.
Defaults to http://localhost:8200
.
api_key
editAPI key used to secure communication with the APM Server(s).
If api_key
is set then secret_token
will be ignored.
secret_token
editSecret token used to secure communication with the APM Server(s).
profiling.cpu.enabled
editSet to true
to enable CPU profiling, where profile samples are recorded as events.
This feature is experimental.
profiling.cpu.interval
editConfigure the CPU profiling interval. Defaults to 60s
.
This feature is experimental.
profiling.cpu.duration
editConfigure the CPU profiling duration. Defaults to 10s
.
This feature is experimental.
profiling.heap.enabled
editSet to true
to enable heap profiling.
This feature is experimental.
profiling.heap.interval
editConfigure the heap profiling interval. Defaults to 60s
.
This feature is experimental.