gabops.appoptics

gabops.appoptics

================

Build Status

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


MIT

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.