Análise de Lights Out

Quando um cadastro resulta em uma exceção, após o grupo de exceção ser criado e todas as exceções serem inseridas ele passará por uma análise de Lights Out.

Uma exceção será analisada pelo Lights Out quando:

  • Um grupo de exceções tiver todos os tratamentos biométricos finalizados

    • Nesse caso, a análise e tratamento de Lights Out são sincronizados com o tratamento na API.

  • Quando um cadastro é terminado no Cluster do GBDS, gera uma exceção e o grupo de exceção possui target BIOGRAPHIC

    • Nesse caso, o GBDS Cluster irá marcar o grupo de exceção como READY para a análise de Lights Out na coluna lights_out_status em gbds.exception_group e a análise é feita de maneira assincrona na API depois

    • O grupo de exceção pode ter uma ou mais exceções.

Thread de Lights Out

Para analisar grupos de exceção para Lights Out, a API terá uma thread de serviço que irá executar na API classificada como LEADER na tabela gbds.apis quando:

  • gbds.lightsout.enabled for true

  • E os grupos de exceção estiverem marcados como READY na coluna lights_out_status da tabela gbds.exception_group

A API irá se comportar como LEADER apenas se o hostname e porta configurados forem iguais aos descritos na tabela gbds.apis

Análise de Lights Out

Dado que a API classificada como LEADER está rodando e um grupo de exceção marcado como READY foi selecionado para análise, os requisitos para que esse grupo seja tratado automaticamente são:

  • O grupo de exceção deve ser de cadastro (enroll)

  • O grupo de exceção não deve ter conflito de ID de chaves em suas transações (entrante incluso)

    • Chaves configuradas em gbds.lightsout.enroll.unify.weakKeys não são consideradas

  • O grupo de exceção deve ter dados biográficos coincidentes entre todas suas transações (os IDs biográficos são configuráveis)

    • As chaves biográficas que devem coincidir são configuradas em gbds.lightsout.enroll.unify.matchBiographics

    • Para que coincidam, valor e ID devem ser iguais (acentos não são diferenciados no valor)

Tratamento de Lights Out

O grupo será tratado automaticamente uma vez que todos os requisitos anteriores forem cumpridos

KEEP

Serão mantidas:

  • Todas as transações

  • Todas as chaves

  • Todos os biográficos de todas as transações

    • Se houver um conflito em ID biográfico, será mantido o valor da última transação

  • Todas as labels são inclusas

  • O usuário de tratamento será lightsout

  • O comentário de tratamento de grupo será definido para Lights out automatic treatment

O grupo de exceção terá o critério usado salvo para referência futura, podendo ser (nonConflitantKeys, weakKeys, matchedBiographics)

Busca de LightsOut

O status de um tratamento de Lights Out pode ser buscado da Base de Dados Relacional utilizando a query:

Para agrupar os tratamentos por status

SELECT eg.lights_out_status, COUNT(*)
FROM gbds.exception_group eg
group by eg.lights_out_status;

Para checar um grupo individualmente, buscando a linha inteira através do GGUID:

SELECT * FROM gbds.exception_group eg WHERE eg.gguid = 'xxxx';

Reprocessamento

Para enviar um grupo de exceção para análise de Lights Out basta mudar o status do grupo na tabela gbds.exception_group através da query (alterando o GGUID para o correspondente):

UPDATE gbds.exception_group SET lights_out_status = 'READY' WHERE gguid = 'xxxx';

Configurações

As configurações do Banco de Dados para Lights Out são:

Configuração
Tipo
Valor padrão
Descrição

gbds.lightsout.enabled

API

true

Valor responsável por habilitar o Lights Out

gbds.lightsout.enroll.unify.weakKeys

API

-

Lista separada por vírgulas que define as chaves fracas (não serão consideradas na checagem de chaves)

gbds.lightsout.enroll.unify.matchBiographics

API

-

Lista separada por vírgulas que define quais biográficos deverão coincidir chave e valor (acentos não são considerados)

Atualizado

Isto foi útil?