Debug_endpoints
Introdução
É um módulo que possui endpoints para verificar a corretude de um método numérico.
Visão geral
Os membros da equipe que estavam fazendo manutenção nos métodos numéricos precisavam de uma forma de validar as alterações que eles estavam fazendo, então foram criados endpoints que servem como consulta para verificar se o método numérico está produzindo o mesmo resultado que sua versão anterior. Exemplo: Um membro da equipe está alterando o método Sigma, e precisa consultar se essas alterações fizeram o método detectar mais ou menos inconsistências. Para isso, o membro da equipe irá utilizar o endpoint de debug para o método sigma, e o retorno da requisição irá mostrar quantas inconsistências o método sigma da produção encontrou. Daí, o membro pode comparar com o resultado do método sigma que ele está alterando.
Endpoints
Cada método possui um código associado, esse código deve ser passado na requisição caso queira executar ele individualmente. Abaixo estão listados os códigos de cada método:
- 0: filter_null
- 1: iqr_modificado,
- 2: sigma_modificado,
- 3: sigma,
- 4: tukeys_fence,
- 5: zscore_e,
- 6: zscore_mme,
- 7: zscore_modificado,
- 8: zscore_padrao,
- 9: derivada_limite_inferior,
- 10: sliding_window_d_mad,
- 11: sliding_window_d_sn,
- 12: sliding_window_mad
É possível passar datas como argumento na requisição, para facilitar a consulta. Exemplo de requisição:
curl -X GET "http://localhost:7788/debug/run_method_regua/17900000?method=4&data_inicio=2019-11-01&data_fim=2019-12-01"
- /run_method_pcd/{station_code}
- Resumo: Executa um dos métodos numéricos listados e retorna as inconsistências PCD
- Descrição: Esse endpoint recebe uma estação, um número correspondente a um método, uma data de início e uma data fim. O retorno será um dataframe com data e hora das inconsistências marcadas como inconsistentes na cota PCD
- /run_method_regua/{station_code}
- Resumo: Executa um dos métodos numéricos listados e retorna as inconsistências Regua
- Descrição: Esse endpoint recebe uma estação, um número correspondente a um método, uma data de início e uma data fim. O retorno será um dataframe com data e hora das inconsistências marcadas como inconsistentes na cota Regua.
- /get_entradas/cota_horaria_regua/{station_code}
- Resumo: Retorna uma cópia das entradas que vão para os métodos de detecção de inconsistência
- /get_entradas/cota_horaria_pcd/{station_code}
- Resumo: Retorna uma cópia das entradas que vão para os métodos de detecção de inconsistência
- /get_saidas/cota_horaria_regua/{station_code}
- Resumo: Calcula as inconsistências detectadas pelo banco da mesma forma que o backend faz internamente
- /get_saidas/cota_horaria_pcd/{station_code}
- Resumo: Calcula as inconsistências detectadas pelo banco da mesma forma que o backend faz internamente