Matrix Docker Ansible eploy
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 

189 lignes
11 KiB

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