Skip to content

[11] Caso de Uso: Verificação de coletores

Elves Rodrigues edited this page May 10, 2023 · 1 revision

Os coletores podem deixar de funcionar com o tempo, uma vez que os sites mudam suas estruturas frequentemente. Por isso, é importante ter um meio de verificar se o coletor especificado está funcionando corretamente para o sistema.

Esta seção descreve um mecanismo disponível para essa finalidade, que permite verificar se um coletor é funcional de forma manual ou automática (por meio de tentativa de coleta).

Obs.: Atualmente, esse recurso está em revisão, na PR 8016. Ou seja, não se encontra na branch master.

Testando um coletor

O botão "Testar", na figura abaixo, que se encontra na página de detalhes do coletor, permite executar o mesmo em modo teste.

image

Ao iniciar execução em modo teste, a interface mudará conforme a imagem abaixo:

image

Como pode-se notar, há um tempo máximo (configurável pela variável RUNTIME_OF_CRAWLER_TEST em interface/settings.py), que um teste irá executar. Um coletor pode não precisar de todo este tempo, e a execução em modo teste do coletor irá terminar antes.

A imagem abaixo mostra o resultado da execução em modo teste, onde o “Status de Funcionamento” indica se o coletor se encontra funcional ou não.

image

Funcionamento

Ao fim da execução em modo teste, todos os dados gerados pelo coletor são removidos do sistema de arquivos. Mas antes, é realizada uma checagem de funcionalidade do coletor. Em particular, o coletor será considerado funcional se durante a execução ele tenha coletado ao menos um dado, seja arquivo ou página. Embora essa abordagem seja simples, ela é efetiva e poderá servir de base para implementações mais complexas futuramente.

O status de funcionamento de um coletor é atualizado sempre que há uma alteração no mesmo, seja através de sua execução normal ou quando ele é editado. Nesse último caso, o status do coletor ficará definido como Não testado, uma vez que, naturalmente, ele não foi executado após a alteração. Contudo, ao ser executado, seja via modo teste ou por coleta normal, seu status final indicará será Funcional ou Não funcional.