Para que o agente do Telegraf colete métricas para alguns dos serviços de aplicativo, você deve fazer modificações nas VMs de endpoint. Depois de fazer essas modificações, o agente começa a coletar métricas. Você deve SSH para a máquina virtual em que implantou o agente e modificar os arquivos de configuração.
Apache HTTPD
Para que o agente colete métricas, modifique o arquivo conf disponível em /etc/httpd/conf.modules.d/status.conf e ative o mod_status para o plug-in HTTPD.
<IfModule mod_status.c> <Location /server-status> SetHandler server-status </Location> ExtendedStatus On </IfModule>
Se o arquivo conf não estiver disponível, você deverá criar um. Reinicie o serviço HTTPD após modificar o arquivo conf com o seguinte comando:
systemctl restart httpd
Aplicativo Java
Atualmente, o suporte para o monitoramento de aplicativos Java está limitado a aplicativos que suportam o monitoramento JMX baseado em jolokia. Atualmente, como parte da ativação do plug-in Java, os arquivos jolokia.jar e jolokia.war são colocados no "Caminho Instalado". Se o aplicativo Java a ser monitorado for um contêiner de servlet, o arquivo jolokia.war será implementado automaticamente no "Caminho Instalado" que você forneceu quando configurou o aplicativo Java em VMware Aria Operations. Se a implementação automática não for suportada ou não estiver ativada, reinicie o aplicativo após ativar o plug-in ou consulte a documentação do produto do aplicativo para obter a implementação do .war manual.
Para todos os outros aplicativos Java, primeiro ative o plug-in e, em seguida, inclua o caminho para o arquivo jolokia.jar no sinalizador JVM "-javaagent:" como um parâmetro de linha de comando. Por exemplo, "-javaagent:/<path_to_jolokia>/jolokia.jar", <path_to_jolokia> é o "Caminho Instalado" que foi fornecido durante a configuração do aplicativo. Reinicie o aplicativo.
- O monitoramento JMX baseado em jolokia é suportado.
- Caso a implantação automática esteja desativada, a implantação manual do .war é compatível com o aplicativo de contêiner de servlet.
- "-javaagent:" O sinalizador JVM foi adicionado como parte do parâmetro de linha de comando (JVM_OPTS)
Nginx
Adicione as seguintes linhas ao arquivo conf disponível em /etc/nginx/nginx.conf:
http { server { location /status { stub_status on; access_log off; allow all; } } }
Reinicie o serviço Nginx com o seguinte comando:
systemctl restart nginx
Postgres
No arquivo de configuração disponível em /var/lib/pgsql/data/pg_hba.conf, altere o valor de local all postgres peer
para local all postgres md5
e reinicie o serviço com o seguinte comando:
sudo service postgresql restart
Cassandra
Para monitorar o aplicativo de banco de dados Cassandra, o jar Jolokia deve ser incluído como uma entrada JVM para o aplicativo de banco de dados Cassandra. Conclua as seguintes etapas:
Modifique /etc/default/cassandra.
echo "export JVM_EXTRA_OPTS=\"-javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost\"" | sudo tee -a /etc/default/cassandra
Observação:Você pode baixar a versão mais recente do agente Jolokia em https://jolokia.org/download.html. Para uma implementação de arquivo .JAR, você precisa reiniciar o serviço de aplicativo após incluir o caminho completo do arquivo do JAR no argumento JMX do processo JAVA que você está monitorando.
Como alternativa, você pode ativar o agente modificando cassandra-env.sh. Inclua a seguinte linha no final do cassandra-env.sh:
JVM_OPTS="$JVM_OPTS -javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost"
Depois de ver as entradas da JVM, reinicie o serviço do Cassandra.
Banco de Dados Oracle
Para monitorar o banco de dados Oracle, conclua estas etapas:
Faça download da biblioteca de cliente instantânea em: https://www.oracle.com/database/technologies/instant-client/downloads.html.
Você deve baixar a biblioteca instantânea do Oracle e incluí-la no PATH.
- Instale o Python 3.6 ou posterior. Instale o módulo cx_Oracle.
python3 -m pip install cx_Oracle --upgrade
Criar um usuário.
CREATE USER <UserName> IDENTIFIED BY <yourpassword>; GRANT select_catalog_role TO <UserName>; GRANT CREATE SESSION TO <UserName>;
- Para uma VM Windows:
- Anexe o caminho da biblioteca do Oracle Instant Client e o caminho do Python à variável de ambiente PATH.
- Instale o agente ARC.
- Para uma VM Linux: (For a Linux VM:)
- Instale o agente ARC.
- Obtenha o arquivo exec_oracle_python.sh(wget --no-check-certificate https://<CP_IP>/downloads/salt/content-accessories/exec_oracle_python.sh) de /opt/vmware/ ucp/.
- Preencha /opt/vmware/ucp/exec_oracle_python.sh com valores absolutos para LD_LIBRARY_PATH, ORACLE_HOME, PYTHON_BIN e TNS_ADMIN.
LD_LIBRARY_PATH: caminho para a biblioteca do Oracle Instant Client. Por exemplo, /opt/vmware/ucp/instantclient_21_4.
ORACLE_HOME: diretório no sistema de arquivos em que o software Oracle está instalado. Por exemplo, /u01/app/oracle/product/19.3.0/dbhome_1/.
PYTHON_BIN: caminho para o executável do Python. Por exemplo, /usr/bin/python.
TNS_ADMIN: variável de ambiente que aponta para o diretório no qual os arquivos de configuração do SQL*Net estão localizados. Por exemplo, /u01/app/oracle/product/19.3.0/dbhome_1/network/admin.
- Ative o plug-in Oracle DB.
Active MQ 5.16 e versões posteriores
Para ativar o Active MQ 5.16 e versões posteriores, conclua as seguintes etapas:
Vá para /opt/activemq/apache-activemq-5.16.0/webapps/api/WEB-INF/classes/jolokia-access.xml
Remova ou comente as seguintes linhas:
<cors> <strict-checking/> </cors>
Reinicie o serviço do Active MQ.
Microsoft SQL Server
A conta de usuário deve ter as seguintes permissões para monitorar o serviço de aplicativo do Microsoft SQL Server com o Telegraf.
USE master; GO CREATE LOGIN [telegraf] WITH PASSWORD = N'mystrongpassword'; GO GRANT VIEW SERVER STATE TO [telegraf]; GO GRANT VIEW ANY DEFINITION TO [telegraf]; GO