46 lines
5.2 KiB
Django/Jinja
46 lines
5.2 KiB
Django/Jinja
# {{ ansible_managed }}
|
|
|
|
init_config: null
|
|
|
|
instances:
|
|
{% for item in haproxy_default_services %}
|
|
{% if item.service.haproxy_backend_nodes | length > 0 and item.service.haproxy_service_name not in monasca_agent_plugins_http_check_disabled %}
|
|
{% set service_name = {'value': item.service.haproxy_service_name | regex_replace('_.*','')} %}
|
|
{% if service_name.value == 'horizon' %}
|
|
{% set found = service_name.update({'value': 'dashboard'}) %}
|
|
{% elif service_name.value in ['galera', 'repo'] %}
|
|
{% set found = service_name.update({'value': 'infra'}) %}
|
|
{% else %}
|
|
{% set _merge = monasca_agent_os_processes_to_monitor.update(monasca_agent_infra_processes_to_monitor) %}
|
|
{% set found = False %}
|
|
{% for service, processes in monasca_agent_os_processes_to_monitor.iteritems() if not found %}
|
|
{% for p in processes %}
|
|
{% if service_name.value in p.name %}
|
|
{% set found = service_name.update({'value': service}) %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
{% endif %}
|
|
{% if item.service.haproxy_ssl is defined and item.service.haproxy_ssl %}
|
|
{% set proto = 'https' %}
|
|
{% else %}
|
|
{% set proto = 'http' %}
|
|
{% endif %}
|
|
{% if item.service.haproxy_backend_options is defined and 'httpchk /healthcheck' in item.service.haproxy_backend_options %}
|
|
{% set path = '/healthcheck' %}
|
|
{% elif item.service.haproxy_service_name == 'influxdb' or item.service.haproxy_service_name == 'influxdb_relay' %}
|
|
{% set path = '/ping' %}
|
|
{% elif item.service.haproxy_service_name == 'repo_cache' %}
|
|
{% set path = '/acng-report.html' %}
|
|
{% endif %}
|
|
- name: {{ item.service.haproxy_service_name | replace('_', '-') }}
|
|
collect_response_time: true
|
|
url: {{ proto }}://{% if item.service.haproxy_bind is defined %}{{ item.service.haproxy_bind.0 }}{% else %}{{ external_lb_vip_address }}{% endif %}:{{ item.service.haproxy_port }}{{path | default('') }}
|
|
use_keystone: {% if item.service.haproxy_service_name == 'monasca_api' %}yes{% else %}no{% endif %}
|
|
dimensions:
|
|
service: {{ service_name.value }}
|
|
component: {{ item.service.haproxy_service_name | replace('_', '-') }}
|
|
|
|
{% endif %}
|
|
{% endfor -%}
|