gabops.appoptics
gabops.appoptics
================
This tool installs and configures SolarWinds AppOptics.
Requirements
No specific requirements are needed.
Role Variables
Here are the variables you can configure:
Variable | Default Value | Description |
---|---|---|
appoptics_managed_config_file |
true | If true, configures the agent with default values; if false, installs only the agent. |
appoptics_service_state |
started | Determines if the agent service starts after installation. |
appoptics_service_enabled |
true | Controls if the AppOptics service is enabled. |
appoptics_log_level |
info | Sets the log level for the agent. |
appoptics_log_path |
/var/log/SolarWinds/Snap | Path where the agent logs are saved. |
appoptics_log_format |
text | Format of the agent log files. |
appoptics_auto_discover_path |
/opt/SolarWinds/Snap/autoload | Directory for auto-loading plugins and tasks at agent startup. |
appoptics_plugin_trust_level |
1 | Trust level for plugins. |
appoptics_tls_cert_path |
"" | Path to the TLS certificate for secure plugin communication. |
appoptics_tls_key_path |
"" | Path to the TLS certificate key for secure plugin communication. |
appoptics_plugin_tls_key_path |
"" | Path to the plugin certificate's key file for auto-loading. |
appoptics_plugin_tls_cert_path |
"" | Path to the plugin certificate used during auto-loading. |
appoptics_ca_cert_paths |
"" | List of file paths for CA certificates needed for validation. |
appoptics_plugin_load_timeout |
15 | Maximum time allowed for a plugin to load. |
appoptics_listen_address |
127.0.0.1 | The address for the agent to communicate with plugins. |
appoptics_listen_port |
21414 | The port for the agent to communicate with plugins. |
appoptics_temp_dir_path |
/tmp/SolarWinds/Snap | Temporary directory for temporary files. |
appoptics_temp_dir_enable |
false | Whether to use the temporary directory for starting plugins. |
appoptics_plugin_path |
/opt/SolarWinds/Snap/bin | Path to search for plugin binaries. |
appoptics_task_path |
/opt/SolarWinds/Snap/etc/tasks.d | Path to search for task files. |
appoptics_task_autoload_path |
/opt/SolarWinds/Snap/etc/tasks-autoload.d | Path to search for auto-load task files. |
appoptics_plugins_include |
/opt/SolarWinds/Snap/etc/plugins.d | Path to search for plugin configuration files. |
appoptics_token |
"" | AppOptics authentication token. |
appoptics_metrics_url |
https://api.appoptics.com/v1/measurements | AppOptics metrics endpoint. |
appoptics_agent_url |
https://api.appoptics.com/v1/agent/report | AppOptics agent endpoint. |
appoptics_hostname_alias |
"" | Alternative hostname tag for the agent. |
appoptics_proxy_url |
"" | Proxy URL for the agent. |
appoptics_proxy_user |
"" | User for proxy authentication. |
appoptics_proxy_password |
"" | Password for proxy authentication. |
appoptics_ec2_check_timeout |
5s | Timeout for checking if the agent is running on EC2. |
appoptics_global_tags |
[] | Global tags for all collected metrics. |
appoptics_rest_api_enable |
false | Enables or disables the REST API for the agent. |
appoptics_rest_api_https |
false | Enables HTTPS for the REST API. |
appoptics_rest_api_rest_auth |
false | Enables authentication for the REST API. |
appoptics_rest_api_rest_auth_password |
"" | Password for REST API authentication. |
appoptics_rest_api_rest_certificate |
"" | Path to the certificate for REST API when HTTPS is enabled. |
appoptics_rest_api_rest_key |
"" | Path to the private key for the REST API certificate. |
appoptics_rest_api_rest_port |
21413 | Port for the REST API server. |
appoptics_plugins |
[{file_name: "", content: {} }] | Defines plugins for AppOptics. |
appoptics_tasks |
[{file_name: "", content: {} }] | Defines tasks for AppOptics. |
appoptics_autoload_tasks |
[{file_name: "", content: {} }] | Defines tasks for auto-loading in AppOptics. |
For detailed configuration on the agent, refer to AppOptics agent configuration.
For detailed information on plugins and tasks configuration, refer to AppOptics plugins and tasks configuration.
Dependencies
None.
Example Playbook
Here’s an example of how to use the role in a playbook:
- hosts: servers
vars:
appoptics_token: secretoken123abc
appoptics_metrics_url: https://api.appoptics.com/v1/measurements
appoptics_hostname_alias: hostname-01
appoptics_proxy_url: https://192.168.0.1:8080
appoptics_proxy_user: user
appoptics_proxy_password: 123abc
appoptics_ec2_check_timeout: 5s
appoptics_tls_cert_path: /tmp/snaptest-cli.crt
appoptics_tls_key_path: /tmp/snaptest-cli.key
appoptics_global_tags:
environment: production
project: foo
appoptics_plugins:
- file_name: mysql.yaml
content:
collector:
mysql:
all:
mysql_connection_string: "foo:passwd@tcp(localhost:3306)/mydb"
load:
plugin: snap-plugin-collector-aomysql
task: task-aomysql.yaml
appoptics_tasks:
- file_name: task-aomysql.yaml
content:
version: 1
schedule:
type: cron
interval: 0 * * * * *
workflow:
collect:
metrics:
/mysql/aborted/clients: {}
publish:
- plugin_name: publisher-appoptics
appoptics_autoload_tasks:
- file_name: task-bridge-tomcat.yaml
content:
version: 2
schedule:
type: cron
interval: "0 * * * * *"
plugins:
- plugin_name: bridge
config:
tomcat:
url: "http://127.0.0.1:8080/manager/status/all?XML=true"
username: "foo"
password: "passwd"
publish:
- plugin_name: publisher-appoptics
roles:
- role: gabops.appoptics
License
Author Information
Gabriel Suarez (Gabops)
Informazioni sul progetto
Installs and configures SolarWinds Snap Agent
Installa
ansible-galaxy install gabops.appoptics
Licenza
mit
Download
7.5k
Proprietario
I am a DevOps engineer who likes Python, Go, AWS, Kubernetes and climbing with friends.