add opcache
This commit is contained in:
parent
a5db641142
commit
14baee3d40
@ -15,6 +15,8 @@ prometheus_mongodb_exporter_port: 27017
|
||||
prometheus_phpfpm_sockets_directory: "/run/php/"
|
||||
prometheus_phpfpm_sockets_directory_additional: "/var/run/php*.sock"
|
||||
|
||||
prometheus_php-opcache_exporter_fcgi-uri: "unix:///var/run/php-000-default.sock"
|
||||
|
||||
prometheus_postgres_exporter_systemd_user: "postgres"
|
||||
prometheus_postgres_exporter_host: "/var/run/postgresql/"
|
||||
prometheus_postgres_exporter_sslmode: "disable"
|
||||
|
@ -40,6 +40,13 @@
|
||||
enabled: yes
|
||||
tags: ['prometheus']
|
||||
|
||||
- name: 'prometheus | php-opcache exporter | restart service'
|
||||
systemd:
|
||||
name: prometheus-php-opcache-exporter.service
|
||||
state: restarted
|
||||
enabled: yes
|
||||
tags: ['prometheus']
|
||||
|
||||
- name: 'prometheus | apache exporter | restart service'
|
||||
systemd:
|
||||
name: prometheus-apache-exporter.service
|
||||
|
@ -35,6 +35,11 @@
|
||||
when:
|
||||
- "'phpfpm' in prometheus_exporter_packages"
|
||||
|
||||
- name: 'prometheus | PHP opcache exporter'
|
||||
include_tasks: 'php-opcache_exporter.yml'
|
||||
when:
|
||||
- "'php-opcache' in prometheus_exporter_packages"
|
||||
|
||||
- name: 'prometheus | Apache exporter'
|
||||
include_tasks: 'apache_exporter.yml'
|
||||
when:
|
||||
|
44
tasks/php-opcache_exporter.yml
Normal file
44
tasks/php-opcache_exporter.yml
Normal file
@ -0,0 +1,44 @@
|
||||
---
|
||||
- name: 'prometheus | php-opcache exporter | get latest release from GitHub'
|
||||
shell: curl --silent "https://api.github.com/repos/MyOnlineStore/opcache-exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
|
||||
args:
|
||||
warn: false
|
||||
register: prometheus_php-opcache_exporter_latest_version
|
||||
run_once: true
|
||||
|
||||
- name: 'prometheus | php-opcache exporter | download'
|
||||
get_url:
|
||||
url: https://github.com/MyOnlineStore/opcache-exporter/releases/download/v{{ prometheus_php-opcache_exporter_version|default(prometheus_php-opcache_exporter_latest_version.stdout) }}/opcache_exporter-{{ prometheus_php-opcache_exporter_version|default(prometheus_php-opcache_exporter_latest_version.stdout) }}-linux-amd64
|
||||
dest: /tmp
|
||||
|
||||
- name: 'prometheus | php-opcache exporter | move to /usr/local/bin'
|
||||
copy:
|
||||
src: /tmp/opcache_exporter-{{ prometheus_php-opcache_exporter_version|default(prometheus_php-opcache_exporter_latest_version.stdout) }}-linux-amd64
|
||||
dest: /usr/local/bin/prometheus-php-opcache-exporter
|
||||
remote_src: yes
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0755
|
||||
|
||||
- name: 'prometheus | php-opcache exporter | configuration'
|
||||
template:
|
||||
src: conf/prometheus-php-opcache-exporter.j2
|
||||
dest: /etc/default/prometheus-php-opcache-exporter
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0600
|
||||
register: prometheus_php-opcache_exporter_configuration
|
||||
|
||||
- name: 'prometheus | php-opcache exporter | install unit file to systemd'
|
||||
template:
|
||||
src: systemd/prometheus-php-opcache-exporter.service.j2
|
||||
dest: /etc/systemd/system/prometheus-php-opcache-exporter.service
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0600
|
||||
|
||||
- name: 'prometheus | php-opcache exporter | configure systemd to use service'
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
enabled: yes
|
||||
name: prometheus-php-opcache-exporter.service
|
4
templates/conf/prometheus-php-opcache-exporter.j2
Normal file
4
templates/conf/prometheus-php-opcache-exporter.j2
Normal file
@ -0,0 +1,4 @@
|
||||
# {{ ansible_managed }}
|
||||
{% if (prometheus_php-opcache_exporter_fcgi-uri is defined) %}
|
||||
ARGS='"--opcache.fcgi-uri="{{ prometheus_php-opcache_exporter_fcgi-uri }}"'
|
||||
{% endif %}
|
@ -124,6 +124,18 @@ scrape_configs:
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
{% if prometheus_php-opcache_exporter_targets is defined %}
|
||||
# PHP-FPM exporter #
|
||||
- job_name: php-opcache
|
||||
scrape_interval: 30s
|
||||
scrape_timeout: 10s
|
||||
static_configs:
|
||||
- targets:
|
||||
{% for target in prometheus_php-opcache_exporter_targets %}
|
||||
- {{ target }}:9101
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
{% if prometheus_apache_exporter_targets is defined %}
|
||||
# apache exporter #
|
||||
- job_name: apache
|
||||
|
11
templates/systemd/prometheus-php-opcache-exporter.service.j2
Normal file
11
templates/systemd/prometheus-php-opcache-exporter.service.j2
Normal file
@ -0,0 +1,11 @@
|
||||
[Unit]
|
||||
Description=Prometheus PHP Opcache Exporter
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=/usr/local/bin/prometheus-php-opcache-exporter
|
||||
EnvironmentFile=/etc/default/prometheus-php-opcache-exporter
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Loading…
x
Reference in New Issue
Block a user