Matrix Docker Ansible eploy
Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 

185 linhas
11 KiB

  1. ---
  2. # matrix-prometheus-services-connect is a role which helps integrate
  3. # the various Matrix services with the Prometheus role.
  4. # Controls whether Synapse integration should be done
  5. matrix_prometheus_services_connect_synapse_enabled: false
  6. # Controls whether the synapse rules shall be loaded into Prometheus
  7. matrix_prometheus_services_connect_synapse_rules_enabled: "{{ matrix_prometheus_services_connect_synapse_enabled }}"
  8. # Controls whether the synapse rules shall be downloaded
  9. matrix_prometheus_services_connect_synapse_rules_download_enabled: "{{ matrix_prometheus_services_connect_synapse_rules_enabled }}"
  10. matrix_prometheus_services_connect_synapse_rules_download_synapse_tag: master
  11. matrix_prometheus_services_connect_synapse_rules_download_src_url: "https://raw.githubusercontent.com/{{ matrix_synapse_github_org_and_repo }}/{{ matrix_prometheus_services_connect_synapse_rules_download_synapse_tag }}/contrib/prometheus/synapse-v2.rules"
  12. matrix_prometheus_services_connect_synapse_rules_download_dir_path: ''
  13. matrix_prometheus_services_connect_synapse_rules_download_owner: ''
  14. matrix_prometheus_services_connect_synapse_rules_download_group: ''
  15. # Controls whether Synapse shall be scraped
  16. matrix_prometheus_services_connect_scraper_synapse_enabled: false
  17. # Controls scraping the Synapse processes
  18. matrix_prometheus_services_connect_scraper_synapse_job_name: synapse
  19. matrix_prometheus_services_connect_scraper_synapse_metrics_path: /_synapse/metrics
  20. matrix_prometheus_services_connect_scraper_synapse_scrape_interval: 15s
  21. matrix_prometheus_services_connect_scraper_synapse_scrape_timeout: 15s
  22. matrix_prometheus_services_connect_scraper_synapse_configs: |
  23. {{
  24. [{
  25. 'job_name': matrix_prometheus_services_connect_scraper_synapse_job_name,
  26. 'metrics_path': matrix_prometheus_services_connect_scraper_synapse_metrics_path,
  27. 'scrape_interval': matrix_prometheus_services_connect_scraper_synapse_scrape_interval,
  28. 'scrape_timeout': matrix_prometheus_services_connect_scraper_synapse_scrape_timeout,
  29. 'static_configs': matrix_prometheus_services_connect_scraper_synapse_static_configs,
  30. }]
  31. }}
  32. matrix_prometheus_services_connect_scraper_synapse_static_configs: |
  33. {{
  34. (matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs if matrix_prometheus_services_connect_scraper_synapse_main_process_enabled else [])
  35. +
  36. (matrix_prometheus_services_connect_scraper_synapse_workers_static_configs if matrix_prometheus_services_connect_scraper_synapse_workers_enabled else [])
  37. }}
  38. # Controls whether the Synapse main process shall be scraped
  39. matrix_prometheus_services_connect_scraper_synapse_main_process_enabled: "{{ matrix_prometheus_services_connect_scraper_synapse_enabled }}"
  40. matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs: |
  41. {{
  42. [{
  43. 'targets': [matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs_target],
  44. 'labels': {
  45. 'instance': matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs_instance,
  46. 'job': matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs_job,
  47. 'index': 0,
  48. }
  49. }]
  50. }}
  51. matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs_target: ''
  52. matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs_instance: "{{ matrix_domain }}"
  53. matrix_prometheus_services_connect_scraper_synapse_main_process_static_configs_job: master
  54. # Controls whether Synapse workers shall be scraped
  55. matrix_prometheus_services_connect_scraper_synapse_workers_enabled: "{{ matrix_prometheus_services_connect_scraper_synapse_enabled and matrix_prometheus_services_connect_scraper_synapse_workers_enabled_list | length > 0 }}"
  56. matrix_prometheus_services_connect_scraper_synapse_workers_enabled_list: []
  57. matrix_prometheus_services_connect_scraper_synapse_workers_static_configs_as_yaml: |
  58. {% for worker in matrix_prometheus_services_connect_scraper_synapse_workers_enabled_list %}
  59. {% if worker.metrics_port != 0 %}
  60. - targets: ['{{ worker.name }}:{{ worker.metrics_port }}']
  61. labels:
  62. instance: {{ matrix_prometheus_services_connect_scraper_synapse_workers_static_configs_instance | to_json }}
  63. worker_id: {{ worker.id | to_json }}
  64. job: {{ worker.type | to_json }}
  65. app: {{ worker.app | to_json }}
  66. {% endif %}
  67. {% endfor %}
  68. matrix_prometheus_services_connect_scraper_synapse_workers_static_configs_instance: "{{ matrix_domain }}"
  69. matrix_prometheus_services_connect_scraper_synapse_workers_static_configs: "{{ [] if matrix_prometheus_services_connect_scraper_synapse_workers_enabled_list | length == 0 else matrix_prometheus_services_connect_scraper_synapse_workers_static_configs_as_yaml | from_yaml }}"
  70. # Controls whether Postgres (postgres-exporter) shall be scraped
  71. matrix_prometheus_services_connect_scraper_postgres_enabled: false
  72. matrix_prometheus_services_connect_scraper_postgres_job_name: postgres
  73. matrix_prometheus_services_connect_scraper_postgres_metrics_path: /metrics
  74. matrix_prometheus_services_connect_scraper_postgres_scrape_interval: 15s
  75. matrix_prometheus_services_connect_scraper_postgres_scrape_timeout: 15s
  76. matrix_prometheus_services_connect_scraper_postgres_static_configs: "{{ [{'targets': [matrix_prometheus_services_connect_scraper_postgres_static_configs_target]}] }}"
  77. matrix_prometheus_services_connect_scraper_postgres_static_configs_target: ''
  78. # The final scrape config for the Postgers scraper
  79. matrix_prometheus_services_connect_scraper_postgres_scrape_configs: |
  80. {{
  81. [{
  82. 'job_name': matrix_prometheus_services_connect_scraper_postgres_job_name,
  83. 'metrics_path': matrix_prometheus_services_connect_scraper_postgres_metrics_path,
  84. 'scrape_interval': matrix_prometheus_services_connect_scraper_postgres_scrape_interval,
  85. 'scrape_timeout': matrix_prometheus_services_connect_scraper_postgres_scrape_timeout,
  86. 'static_configs': matrix_prometheus_services_connect_scraper_postgres_static_configs,
  87. }]
  88. }}
  89. # Controls whether Hookshot shall be scraped
  90. matrix_prometheus_services_connect_scraper_hookshot_enabled: false
  91. matrix_prometheus_services_connect_scraper_hookshot_job_name: hookshot
  92. matrix_prometheus_services_connect_scraper_hookshot_metrics_path: /metrics
  93. matrix_prometheus_services_connect_scraper_hookshot_scrape_interval: 15s
  94. matrix_prometheus_services_connect_scraper_hookshot_scrape_timeout: 15s
  95. matrix_prometheus_services_connect_scraper_hookshot_static_configs: "{{ [{'targets': [matrix_prometheus_services_connect_scraper_hookshot_static_configs_target]}] }}"
  96. matrix_prometheus_services_connect_scraper_hookshot_static_configs_target: ''
  97. # The final scrape config for the Hookshot scraper
  98. matrix_prometheus_services_connect_scraper_hookshot_scrape_configs: |
  99. {{
  100. [{
  101. 'job_name': matrix_prometheus_services_connect_scraper_hookshot_job_name,
  102. 'metrics_path': matrix_prometheus_services_connect_scraper_hookshot_metrics_path,
  103. 'scrape_interval': matrix_prometheus_services_connect_scraper_hookshot_scrape_interval,
  104. 'scrape_timeout': matrix_prometheus_services_connect_scraper_hookshot_scrape_timeout,
  105. 'static_configs': matrix_prometheus_services_connect_scraper_hookshot_static_configs,
  106. }]
  107. }}
  108. # Controls whether nginxlog shall be scraped
  109. matrix_prometheus_services_connect_scraper_nginxlog_enabled: false
  110. matrix_prometheus_services_connect_scraper_nginxlog_job_name: nginxlog
  111. matrix_prometheus_services_connect_scraper_nginxlog_metrics_path: /metrics
  112. matrix_prometheus_services_connect_scraper_nginxlog_scrape_interval: 15s
  113. matrix_prometheus_services_connect_scraper_nginxlog_scrape_timeout: 15s
  114. matrix_prometheus_services_connect_scraper_nginxlog_static_configs: "{{ [{'targets': [matrix_prometheus_services_connect_scraper_nginxlog_static_configs_target]}] }}"
  115. matrix_prometheus_services_connect_scraper_nginxlog_static_configs_target: ''
  116. # The final scrape config for the nginxlog scraper
  117. matrix_prometheus_services_connect_scraper_nginxlog_scrape_configs: |
  118. {{
  119. [{
  120. 'job_name': matrix_prometheus_services_connect_scraper_nginxlog_job_name,
  121. 'metrics_path': matrix_prometheus_services_connect_scraper_nginxlog_metrics_path,
  122. 'scrape_interval': matrix_prometheus_services_connect_scraper_nginxlog_scrape_interval,
  123. 'scrape_timeout': matrix_prometheus_services_connect_scraper_nginxlog_scrape_timeout,
  124. 'static_configs': matrix_prometheus_services_connect_scraper_nginxlog_static_configs,
  125. }]
  126. }}
  127. # Controls whether media-repo shall be scraped
  128. matrix_prometheus_services_connect_scraper_media_repo_enabled: false
  129. matrix_prometheus_services_connect_scraper_media_repo_job_name: media-repo
  130. matrix_prometheus_services_connect_scraper_media_repo_metrics_path: /metrics
  131. matrix_prometheus_services_connect_scraper_media_repo_scrape_interval: 15s
  132. matrix_prometheus_services_connect_scraper_media_repo_scrape_timeout: 15s
  133. matrix_prometheus_services_connect_scraper_media_repo_static_configs: "{{ [{'targets': [matrix_prometheus_services_connect_scraper_media_repo_static_configs_target]}] }}"
  134. matrix_prometheus_services_connect_scraper_media_repo_static_configs_target: ''
  135. # The final scrape config for the media-repo scraper
  136. matrix_prometheus_services_connect_scraper_media_repo_scrape_configs: |
  137. {{
  138. [{
  139. 'job_name': matrix_prometheus_services_connect_scraper_media_repo_job_name,
  140. 'metrics_path': matrix_prometheus_services_connect_scraper_media_repo_metrics_path,
  141. 'scrape_interval': matrix_prometheus_services_connect_scraper_media_repo_scrape_interval,
  142. 'scrape_timeout': matrix_prometheus_services_connect_scraper_media_repo_scrape_timeout,
  143. 'static_configs': matrix_prometheus_services_connect_scraper_media_repo_static_configs,
  144. }]
  145. }}
  146. # Controls whether synapse-usage-exporter shall be scraped
  147. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_enabled: false
  148. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_job_name: synapse-usage-exporter
  149. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_metrics_path: /metrics
  150. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_interval: 300s
  151. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_timeout: 300s
  152. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs: "{{ [{'targets': [matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs_target]}] }}"
  153. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs_target: ''
  154. # The final scrape config for the synapse-usage-exporter scraper
  155. matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_configs: |
  156. {{
  157. [{
  158. 'job_name': matrix_prometheus_services_connect_scraper_synapse_usage_exporter_job_name,
  159. 'metrics_path': matrix_prometheus_services_connect_scraper_synapse_usage_exporter_metrics_path,
  160. 'scrape_interval': matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_interval,
  161. 'scrape_timeout': matrix_prometheus_services_connect_scraper_synapse_usage_exporter_scrape_timeout,
  162. 'static_configs': matrix_prometheus_services_connect_scraper_synapse_usage_exporter_static_configs,
  163. }]
  164. }}