Usando o WordPress Toolkit CLI
Você pode obter facilmente uma lista de todas as instalações WordPress gerenciadas, através do seguinte comando:
\plesk ext wp-toolkit -l
Depois que executar esta linha de comando, a lista é retornada, atribuindo os dados corretos às variáveis. Mas… como isso é feito? Vamos das uma olhada:
O código para o plugin
Por trás da teoria, vamos observar o código real extraído no passo anterior:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import plugins
class Plugin(plugins.BasePlugin):
__name__ = ‘plesk-wpt’
def run(self, config):
”’
Obtendo alguma informação básica do servidor, utilize a seguinte linha a /etc/sudoers:
agent360 ALL=(ALL) NOPASSWD: /usr/sbin/plesk
test by running:
sudo -u agent360 agent360 test plesk-wpt
Add to /etc/agent360.ini:
[plesk-wpt]
enabled = yes
interval = 600
”’
data = {}
data[‘wpsites’] = int(os.popen(‘sudo -n plesk ext wp-toolkit –list | grep -$
data[‘wpsites-live’] = int(os.popen(‘sudo -n plesk ext wp-toolkit –list | g$
data[‘wpsites-outdated’] = int(os.popen(‘sudo -n plesk ext wp-toolkit –list$
data[‘wpsites-outdated-php’] = int(os.popen(‘sudo -n plesk ext wp-toolkit –$
data[‘wpsites-broken’] = int(os.popen(‘sudo -n plesk ext wp-toolkit –list |$
return data
if __name__ == ‘__main__’:
Plugin().execute()
O passo-a-passo detalhado:
- Primeiro, foi criado um vetor, onde os dados pudessem ser inseridos;
- O vetor foi preenchido com vários números inteiros obtidos da linha de comando;
- Por último (mas não menos importante), o dado foi retornado para ser coletado pelo agente de monitoramento.
Como usar e instalar seu plugin
Primeiro, você precisa encontrar o local onde os plugins do Monitoramento de Servidores estão instalados. Para isso, execute a seguinte linha:
agent360 info
Exemplo de retorno:
Version: 1.2.33
Plugins enabled: ping, apt-updates, system, iostat, httpd, loadavg, memory, mysql, nginx, diskusage, network, process, docker, cpu, swap
Plugins directory: /usr/local/lib/python3.7/dist-packages/agent360/plugins
Server: 12354148123124
Em seguida, você precisa criar um arquivo nesta pasta. Vamos chamá-lo de plesk-wpt.py
Agora, simplesmente abra este arquivo, cole o código para o plugin e salve. Antes de testar, certifique-se que o user agente 360 possui permissão para acessar a linha de comando com sudo e sem senha. Para isso, adicione a seguinte linha a /etc/sudoers:
agent360 ALL=(ALL) NOPASSWD: /usr/sbin/plesk
Para verificar se o plugin está instalado e funcionando, execute a linha:
sudo -u agent360 agent360 test plesk-wpt
Agora você precisa gerar um retorno com dados reais. Para então finalmente ativar o plugin e ter certeza que os dados serão reportados ao Monitoramento de Servidores:
[plesk-wpt] enabled = yes interval = 600
A configuração acima diz ao agente 360 para não somente ser iniciado considerando o novo plugin, mas também para reportar seu status a cada 600 segundos.
Uma vez que tenha feito todos os passos, reinicie o serviço de monitoramento:
service agent360 restart
Verifique os dados
Depois de alguns minutos, você deve visualizar uma nova aba nos detalhes do seu servidor, com o nome “plesk-wpt”, ou seja, o nome atribuído à pasta do plugin personalizado. Todos os dados serão mostrados nesta aba, na forma gráfica, de forma que você possa incluir alertas ou métricas baseados nestes dados.