community.general.elastic callback – Create distributed traces for each Ansible task in Elastic APM
Note
This callback plugin is part of the community.general collection (version 9.4.0).
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
You need further requirements to be able to use this callback plugin,
see Requirements for details.
To use it in a playbook, specify: community.general.elastic
.
New in community.general 3.8.0
Callback plugin
This plugin is a notification callback. It sends information for a playbook run to other applications, services, or systems. See Callback plugins for more information on callback plugins.
Synopsis
This callback creates distributed traces for each Ansible task in Elastic APM.
You can configure the plugin with environment variables.
See https://www.elastic.co/guide/en/apm/agent/python/current/configuration.html.
Requirements
The below requirements are needed on the local controller node that executes this callback.
elastic-apm (Python library)
Parameters
Parameter |
Comments |
---|---|
Use the APM server and its environment variables. Configuration:
|
|
The service name resource attribute. Default: Configuration:
|
|
Verifies the SSL certificate if an HTTPS connection. Choices:
Configuration:
|
|
Hide the arguments for a task. Choices:
Configuration:
|
|
Examples
examples: |
Enable the plugin in ansible.cfg:
[defaults]
callbacks_enabled = community.general.elastic
Set the environment variable:
export ELASTIC_APM_SERVER_URL=<your APM server URL)>
export ELASTIC_APM_SERVICE_NAME=your_service_name
export ELASTIC_APM_API_KEY=your_APM_API_KEY