Cenário da vida real
Visão geral
Esta seção apresenta um exemplo prático e real, passo a passo, de como o monitoramento web pode ser usado.
O monitoramento web do Zabbix será usado para monitorar o frontend do Zabbix. O objetivo é determinar se ele está disponível, se fornece o conteúdo correto e com que rapidez ele funciona. Para isso, várias etapas são necessárias, incluindo verificar a disponibilidade da primeira página, fazer login com nome de usuário e senha, verificar se o login foi bem-sucedido, fazer logout e confirmar o logout.
Cenário
Adicionar um novo cenário web
- Acesse Data collection > Hosts.
- Escolha um host e clique em Web na linha desse host.
- Clique em Create web scenario.

-
No formulário do novo cenário, na aba Scenario, preencha os seguintes campos:
- Name: Frontend check.
- Update interval: 1m.
- Attempts: 1.
- Agent: Zabbix.
Na seção Variables, adicione os seguintes pares nome-valor: {user}: suas credenciais existentes de usuário do Zabbix;{password}: suas credenciais existentes de usuário do Zabbix.
Por motivos de segurança, é recomendável criar um usuário separado com permissões mínimas para uso em monitoramento.
Opcionalmente, vá para a aba Tags e adicione tags do cenário web.
Você pode usar tags de cenário web para identificar rapidamente items e triggers relacionados ou pesquisar nos dados coletados.
Por exemplo, tags adequadas para este tutorial são component: web-scenario e/ou target: frontend.
Configurar etapas do cenário web
Alterne para a aba Steps e defina as etapas para o cenário.
Após configurar cada etapa, clique no botão Add.
Observe que o frontend do Zabbix usa redirecionamento JavaScript ao fazer login, portanto o login deve ocorrer primeiro, e os recursos disponíveis após o login só podem ser verificados nas etapas seguintes. Além disso, a etapa de login deve usar a URL completa para o arquivo index.php.
Campos comuns para todas as etapas
Além dos campos específicos de cada etapa, preencha os seguintes campos comuns para cada etapa descrita abaixo:
- URL: a URL do frontend do Zabbix (
http://<server_ip_or_name>/zabbix/index.php(para Apache) ouhttp://<server_ip_or_name>/index.php(para Nginx)). Para a etapa 3 do cenário web, use uma URL diferente, conforme descrito abaixo. - Timeout: 15s.
- Required status codes: 200.
Etapa 1 do cenário web
Verifique se a primeira página responde corretamente, retorna o código de status HTTP 200 e contém o texto Zabbix SIA.
Preencha os seguintes campos:
- Name: First page.
- Timeout: 15s.
- Required string: Zabbix SIA.
- Os campos comuns para todas as etapas.

Etapa 2 do cenário web
Faça login no frontend do Zabbix usando as macros (variáveis) definidas na aba Scenario: {user} e {password}.
Preencha os seguintes campos:
- Name: Login.
- Na seção Post fields, adicione os seguintes pares nome-valor:
- name:
{user}; - password:
{password}; - enter: Sign in.
- name:
- Os campos comuns para todas as etapas.
Selecione a caixa de seleção Follow redirects.

Etapa 3 do cenário web
Após fazer login, verifique o sucesso procurando uma string visível somente quando o usuário está autenticado, por exemplo, Administration.
Preencha os seguintes campos:
- Name: Login check.
- URL: a URL para a qual o usuário é redirecionado após o login (por exemplo, http://127.0.0.1/zabbix/zabbix.php?action=dashboard.view).
- Na seção Variables, adicione o par nome-valor
{csrf_token}:regex:([0-9a-z]{64}). Essa variável capturará o valor do token CSRF atribuído para reutilização na etapa 4 do cenário web. - Required string: Administration.
- Os campos comuns para todas as etapas.

Etapa 4 do cenário web
Depois que a acessibilidade e o login do frontend tiverem sido verificados, adicione uma etapa de logout - caso contrário, o banco de dados do Zabbix ficará poluído com muitos registros de sessão abertos.
Preencha os seguintes campos:
- Name: Logout.
- Na seção Post fields, adicione os seguintes pares nome-valor:
- reconnect: 1;
- _csrf_token:
{csrf_token}.
- Os campos comuns para todas as etapas.
Marque a caixa de seleção Follow redirects.
Esta etapa usa a variável {csrf_token} obtida na etapa 3 do cenário web.

Etapa 5 do cenário web
Para confirmar o logout, verifique a string Username.
Preencha os seguintes campos:
- Name: Logout check.
- Required string: Username.
- Os campos comuns para todas as etapas.

Configuração completa dos passos
Uma configuração completa dos passos de um cenário web deve ser semelhante a esta:

Verifique os resultados
Salve o cenário de monitoramento web concluído.
Quando o cenário web é criado, novos itens de monitoramento web são adicionados automaticamente para monitoramento.
O cenário será adicionado ao host. Para ver as informações do cenário web, vá para Monitoring > Hosts, localize o host na lista e clique no hiperlink Web na última coluna.

Clique no nome do cenário para ver estatísticas detalhadas:
