O Servidor HTTP Apache, também conhecido como Apache httpd, é um software de servidor Web comumente usado. Sua ampla utilização se deve ao seu recurso fácil e personalizável e ao seu código-fonte aberto.
Se você estiver usando o Apache, é fundamental monitorar seu desempenho para estar ciente dos problemas de degradação e dos gargalos. Use nosso plug-in e veja tendências de desempenho em tempo real e métricas históricas, tudo em um único painel. Este documento detalha:
Métricas de monitoramento de desempenho
Solicitações por segundo
req_per_sec
records the total number of HTTP requests the web server is processing per second.
Trabalhadores ocupados
Use the metric busy_workers
to get the total number of processes actively processing an HTTP request
Trabalhadores ociosos
idle_workers
is the total number of idle workers/idle processes waiting for an HTTP request. If you have very few or no idle processes, it means your server is using up all the processes and new requests have to be on hold until the older requests are completed.
Tempo de atividade
The metric tempo de atividade
gets the total amount of time the server has been up and running.
Bytes por segundo
bytes_per_sec
records the total amount of data the web server is transferring per second.
Carga da CPU
Use the metric cpu_load
and get the total percentage of CPU used by the web server.
Bytes por solicitação
The average number of bytes being transferred per HTTP request is obtained using the metric bytes_per_req
.
Total de acessos
The total number of accesses on the server is monitored using the metric total_accessess
.
Pré-requisitos
- This is a Python-based plugin supported from Python versions 2.7 and above. For version 2.7, we use
urllib2
module and for version 3.0 and above, we useurllib
module for monitoring the web server.
Configuração do Apache
Siga as etapas abaixo para configurar seu servidor Web para monitorar seu desempenho. Independentemente do sistema que você estiver usando, certifique-se de salvar um backup do arquivo de configuração antes de fazer alterações nele; caso você precise reverter para uma versão anterior.
- Edite o arquivo de configuração do módulo de status: /etc/apache2/mods-enabled/status.load
- Find the below line and make sure it is uncommented LoadModule status_Module /usr/lib/apache2/modules/mod_status.so
- Edite o arquivo de configuração do módulo de status: /etc/apache2/mods-enabled/status.conf
- The below line allows access to the Status page from localhost using the URI /server-status <Location /server-status>
SetHandler server-status
Require local
</Location> - To restrict access to authenticated users and to specific IP addresses:
erver-status> Status do servidor SetHandlerAuthUserFile /passwordlocationAuthType BasicAuthNameExigir usuário - Make sure the ExtendedStatus is enabled to track additional data about the currently executing requests per worker. ExtendedStatus ativado
- Reinicie o servidor
- Edit the ports configuration file: Para Ubuntu/Debian: Edit /etc/apache2/ports.confPara Centos/Redhat: Edit /etc/httpd/conf/httpd.conf
- Check for the line
Listen 80
. Change port from 80 to the desired port. - To make the server accept connections on the port for only specific interfaces, change
Listen 90
toOuça domain.com:90
- Salve o arquivo e reinicie o servidor
- Enable SSL support on Apache default virtual host file, found in the following location: Para Ubuntu/Debian: sudo vi /etc/apache2/sites-enable/000-default.confPara Centos/Redhat: sudo vi /etc/httpd/conf.d/ssl.conf
- Edit the virtual host file to support SSL in port 443 Para Ubuntu/Debian:
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile <File Name>
SSLCertificateKeyFile <Key>
</VirtualHost>
Para Centos/Redhat:
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# SSLProtocol all -SSLv2
# SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!SEED:!IDEA
SSLCertificateFile <File Name>
SSLCertificateKeyFile <Key>
</VirtualHost> - Run the below commands to enable SSL mode Para Ubuntu/Debian: sudo a2enmod sslPara Centos/Redhat: sudo yum install mod_ssl
- Reinicie o servidor
Instalação do plug-in
- Configure o Apache conforme mencionado acima para monitorar seus atributos de desempenho.
- Baixe e instale a versão mais recente do agente Linux do Site24x7 no servidor onde você planeja executar o plug-in. Se ele for instalado com êxito, você verá um monitor de servidor Linux no Painel de controle do Site24x7. Isso confirma que o agente consegue se comunicar com nosso data center.
- Download the "apache_monitoring.py" and the "apache_monitoring.cfg" file from our Repositório do GitHub wget https://raw.githubusercontent.com/site24x7/plugins/master/apache_monitoring/apache_monitoring.py && sed -i "1s|^.*|#! $(which python3)|" apache_monitoring.pywget https://raw.githubusercontent.com/site24x7/plugins/master/apache_monitoring/apache_monitoring.cfg
- Update the file with your Status URL for monitoring apache. By default, we have enabled it to be:
http://localhost:80/server-status?auto
- Crie uma pasta com o nome "apache_monitoring", no diretório de plug-ins do agente Linux do Site24x7 "/opt/site24x7/monagent/plugins/" e coloque o " apache_monitoring.py" em "/opt/site24x7/monagent/plugins/apache_monitoring/"
O agente executará automaticamente o plug-in em cinco minutos e enviará dados de desempenho ao data center do Site24x7.
Manually execute the plugin script using the following command and verify its output:
python apache_monitoring.py
Exibir dados no Site24x7 Web Client
- Faça login e vá para Servidor > Plug-ins > clique no nome do monitor de plug-ins.
- Você poderá visualizar os gráficos de desempenho nas várias métricas do seu servidor.
Manipulação de erros
S.No | Mensagem de erro | Motivo |
---|---|---|
1 | Error_code : Erro de URL [Errno -2] Nome ou serviço desconhecido | Nome de host inválido |
2 | Error_code : URL Error [Errno 1] _ssl.c:510: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol | Se o URL de Status do Apache não for configurado para HTTPS |
3 | Error_code : Erro HTTP 404 | URL de status inválido |
4 | Error_code : Erro HTTP 400 | Número de porta inválido |
Contribuição do plug-in
Sinta-se à vontade para contribuir com nosso plug-in e apresentar sugestões ou feedbacks na nossa comunidade.
Artigos relacionados
- Plug-ins prontos para serem usados – monitore toda a sua pilha de aplicativos com nossa extensa lista de integrações
- Monitoramento de servidores - Fique por dentro das interrupções do servidor e dos problemas de desempenho
- Redis - Monitore as métricas de desempenho de seus bancos de dados do Redis
- MySQL - Monitore métricas de desempenho de seus bancos de dados MySQL
- Processo zombie - Analise o desempenho do seu servidor de processo Zombie
- Nagios – execute milhares de plug-ins Nagios no Site24x7 sem a necessidade de executar um servidor Nagios
- Monitoramento de script personalizado – crie plug-ins personalizados do Linux e do Windows e monitore os atributos de que você precisa
- Repositório do GitHub - Confira nossas mais de 50 integrações de plug-ins