~~ODT~~
Consulta de Timers
Possibilita aos usuários buscar informações sobre os timers cadastrados. Os timers são responsáveis por executar periodicamente nos sistemas as tarefas a ele associadas.
Esse caso de uso é usado pelos administradores dos sistemas.
Descrição do Caso de Uso
Este caso de uso inicia quando o usuário acessa a opção: SIGAdmin → Portal da Administração → Suporte Técnico → Consultar Recursos do Sistema → Consultar Timers.
Ao acessar este caso de uso é possível cadastrar um novo timer, para isso são apresentados os seguintes dados:
- Classe*: Formato - pacote.nomedaclasse. Tipo - TEXTO. Nome completo da classe.
- Servidor*: Tipo - TEXTO. O nome da máquina que está executando o servidor de aplicação JBoss.
- Ativa*: Tipo - TEXTO. São apresentadas as opções
SIM/NÃO
. - Configurações de Periodicidade
- Expressão*: Tipo - TEXTO.
O sistema permite visualizar uma listagem dos timers com as seguintes informações:
- Classe: Tipo - TEXTO. Representa a tarefa a ser executada pelo timer.
- Repetição: Tipo - TEXTO. Informa a periodicidade em que a tarefa será executada.
- Última execução: Formato - DD/MM/AAAA HH:MM:SS. Tipo - DATA.
- Servidor: Tipo - TEXTO. Servidor da última execução.
- Status: Tipo - TEXTO. Informa se o timer está
PARADO, ATIVO
ou AGENDADO.
Para cada timer, tem-se as opções de executar tarefa, se tiver com o status PARADO
, AGENDADO
ou de interromper tarefa, se estiver com status ATIVO
.
Ver Execuções:
- Tarefa: Tipo - TEXTO.
- Tipo de repetição: Tipo - TEXTO.
- Tempo: Tipo - TEXTO.
- Última Execução: Formato - DD/MM/AAAA HH:MM:SS. Tipo - DATA.
- Servidor Restrição: Tipo - TEXTO.
- Servidor Execução: Tipo - TEXTO.
- Execuções Encontradas
- Início da Execução: Formato - DD/MM/AAAA HH:MM:SS. Tipo - DATA.
- Fim da Execução: Formato - DD/MM/AAAA HH:MM:SS. Tipo - DATA.
- Servidor: Tipo - TEXTO.
- Status: Tipo - TEXTO.
Para cada execução encontrada é possível verificar o log:
- Data/Hora: Formato - DD/MM/AAAA HH:MM:SS. Tipo - DATA.
- Texto: Tipo - TEXTO.
- Nível: Tipo - TEXTO.
Alterar possibilita ao usuário configurar o timer:
- Classe*: Formato - pacote.nomedaclasse. Tipo - TEXTO.
- Servidor:*: Tipo - TEXTO. Servidor de execução.
- Ativa*: Tipo - TEXTO. São apresentadas as opções
SIM/NÃO
. - Configurações de Periodicidade
- Expressão*: Tipo - TEXTO.
Também existe a opção de remover timer.
O caso de uso é finalizado.
Principais Regras de Negócio
Não se aplica.
Resoluções/Legislações Associadas
Não se Aplica
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.ufrn.comum.dominio.LogServidor | sistemas_comum.infra.log_servidor |
br.ufrn.arq.tasks.TarefaTimer | sistemas_comum.infra.registro_timer |
Plano de Teste
Sistema: SIGAdmin
Módulo: Portal Admin
Link(s): Suporte Técnico → Consultar Resursos dos Sistemas → Consultar Timers
Usuário: david, gleydson, andrejadson
Papel que usuário deve ter: AdminPapeis.ADMINISTRADOR_SIGADMIN, AdminPapeis.SUPORTE_SISTEMAS
Cenários de Teste
Ver lista de timers, cadastrar novos timers, editar timers, ver logs dos timers.
Dados para o Teste
Como configurar o timer:
A expressão de periodicidade possui o mesmo formato utilizado pelo CRON
. Ela é composta pelos seguintes 7 itens separados por espaços em branco, em ordem: Segundos, Minutos, Horas, Dia do mês, Mês, Dia da semana, Ano
. Para cada item, utilizamos um valor numérico ou então operadores para flexibilizar o cronograma.
Os operadores são o *
, o ?
, o -
e a /
. O *
significa todos, ou qualquer. O ?
significa nenhum ou não se aplica. O -
indica um intervalo de valores e o /
indica incremento.
Assim, se desejarmos que uma tarefa seja executada todos os dias, às 15:00h, devemos utilizar a seguinte expressão: * 0 15 * * ? *
, ou seja, quaisquer segundos, aos 0 minutos, às 15 horas, de qualquer dia do mês, qualquer mês, não importa o dia da semana, qualquer ano.
Caso seja necessário que uma tarefa seja executada a cada 30 minutos, apenas de segunda a sexta, usamos * */30 * ? MON-FRI *
, ou seja, quaisquer segundos, quaisquer minutos, mas com incrementos de 30 minutos, qualquer hora, não importa o dia do mês, de segunda a sexta, em qualquer ano.
O ano é o único campo opcional. Não se pode definir ao mesmo tempo o dia do mês e o dia da semana. Se definirmos um, o outro deverá ser ?
.