Introdução
Este documento descreve como instalar o AppDynamics Apache Web Server Agent em um sistema Red Hat Enterprise Linux com um aplicativo de exemplo.
Pré-requisitos
Requisitos
-
Um servidor HTTP Apache (httpd) em execução ou serviço Apache em contêiner no RHEL
-
Acesso root ou sudo para instalação e configuração
-
Um AppDynamics Controller (SaaS ou Local)
-
Credenciais de acesso (Nome da conta, Chave de acesso, Host do controlador)
Componentes Utilizados
-
OS: RHEL 8.x
-
Servidor HTTP Apache: 2.4
-
Agente Apache do AppDynamics: 24.x (Linux de 64 bits)
-
Ferramentas opcionais: Docker, scripts bash para automação
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Informações de Apoio
O AppDynamics Apache Agent permite a visibilidade das solicitações HTTP de entrada e propaga cabeçalhos de correlação de transação para camadas de back-end como agentes Java ou Node.js. Essa configuração é especialmente útil para observar a rastreabilidade completa de transações em arquiteturas distribuídas.
Configurar
Passo 1: Instalar o agente
- Visite Downloads do AppDynamics.
- Selecione Web Server Agent for Linux 64-bit.
- Faça download do arquivo .tgz para o servidor de destino ou contexto de compilação do Docker.
Passo 2: Incorporar configuração no Apache
Tip: Certifique-se de alterar os detalhes do trecho de código com os valores corretos.
# Loading AppD agent SDK
LoadFile /opt/appdynamics-sdk-native/sdk_lib/lib/libzmq.so.5
LoadFile /opt/appdynamics-sdk-native/sdk_lib/lib/libappdynamics_native_sdk.so
# Loading the AppD agent shared library for Apache 2.4
LoadModule appdynamics_module /opt/appdynamics-sdk-native/WebServerAgent/Apache/libmod_appdynamics.so
# Set agent settings here
# Hostname or IP of the AppD controller (using provided controller)
AppDynamicsControllerHost "XXXX"
# AppD account name
AppDynamicsAccountName "XXXX"
# AppD access key
AppDynamicsAccessKey "XXXX"
# Application name
AppDynamicsApplication "XXXX"
# Tier name
AppDynamicsTier "XXXX"
# Node name
AppDynamicsNode "XXXX"
# Enabling web server monitoring
AppDynamicsEnabled ON
# Port to connect with the controller
AppDynamicsControllerPort 443
# Setting SSL on
AppDynamicsControllerSSL ON
# Enabling auto-launch of the appD proxy
AppDynamicsLaunchProxy ON
Em seguida, atualize a configuração principal do Apache para incluir este arquivo:
echo "Include conf.d/appdynamics_agent.conf" >> /etc/httpd/conf/httpd.conf
Tip: Arquivo Dockerde exemplo. Consulte o link Github para obter o aplicativo de amostra completo em Related Information. Se você estiver usando qualquer outra versão do agente Apache AppDynamics, o Dockerfile precisará ser modificado de acordo.
#Sample Dockerfile
# Start from the Red Hat Universal Base Image with Apache httpd 2.4
FROM --platform=linux/amd64 registry.access.redhat.com/ubi8/httpd-24
# installed required software
USER root
RUN dnf -y update
RUN dnf -y install tar wget nano net-tools procps
# (Optional) Copy your custom web content into the default document root.
COPY index.html /var/www/html/index.html
# Disable the SSL configuration for testing currently. Import the certificate if using SSL
#(rename it so it won't be loaded)
RUN mv /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.disabled
# Add ServerName directive to suppress the warning
RUN echo "ServerName localhost" >> /etc/httpd/conf/httpd.conf
# AppDynamics configuration
# Copying the custom config file for AppD agent
COPY ./appdynamics_agent.conf /etc/httpd/conf/appdynamics_agent.conf
# Expose HTTP port 8080
EXPOSE 8080
WORKDIR /appd
#Copy the agent files
COPY ./appdynamics-sdk-native-nativeWebServer-64bit-linux-24.11.0.2449.tgz ./
# Extracting the file downloaded
RUN tar -xzvf appdynamics*.tgz -C /opt
# Specifying the path for the required libraries
#ENV LD_LIBRARY_PATH="/opt/appdynamics-sdk-native/sdk_lib/lib/"
ENV LD_LIBRARY_PATH="/opt/appdynamics-sdk-native/sdk_lib/lib/:$LD_LIBRARY_PATH"
# Including the appdynamics config file into the original httpd configuration
RUN echo "Include /etc/httpd/conf/appdynamics_agent.conf" >> /etc/httpd/conf/httpd.conf
# Running apache agent installation script
RUN /opt/appdynamics-sdk-native/install.sh
# Running the httpd server in foreground
CMD ["/usr/sbin/httpd", "-DFOREGROUND"]
Passo 3: Reiniciar o HTTPD
Se estiver sendo executado no servidor, reinicie o processo httpd; no caso do Docker, ele é cuidado ao iniciar o contêiner quando ele inicia o apache com o agente.
sudo systemctl restart httpd
Verificar
Passo 1: Inicie seu aplicativo
Acesse o servidor Apache em um navegador:
http://:80/
Ou via Docker
http://localhost:8080/
Passo 2: Ir para o Painel do AppDynamics
-
Faça logon no AppDynamics Controller.
-
Navegue atéApplications > Hello_World_Apache.
-
Procure métricas e mapas de fluxo em 5 minutos.

Troubleshooting
Problema
|
Possível causa
|
Resolução
|
Falha ao reiniciar o Apache
|
Caminho incorreto para mod_appdynamics.so
|
Validar caminho e permissões do arquivo
|
Nenhuma métrica no AppDynamics
|
Configuração de controlador incorreta
|
Verifique novamente Chave de acesso, Host, Nome da conta
|
Os logs do Apache não mostram as atividades do agente
|
O módulo não está sendo carregado
|
Verificar logs de erros httpd; verificar linha LoadModule
|
Logs não gerados
|
Logs/ pasta ou permissões ausentes
|
Verificar <diretório_instalação_agente>/logs
|
Informações Relacionadas
Precisa de mais assistência?
Se você tiver alguma dúvida ou estiver tendo problemas, crie um tíquete de suporte com estes detalhes:
- Detalhes do erro ou captura de tela:forneça uma mensagem de erro específica ou uma captura de tela do problema.
- Comando usado: especifique o comando exato que você estava executando quando o problema ocorreu.
- Logs de agentes do Apache: forneça os logs de agentes de <diretório_instalação_agente>/logs, se gerados.