Entidade LOGS_DADOS

RTLOG.LOGS_DADOS

Descrição

Os logs de dados registram quaisquer alterações nos dados do sistema com os seguintes objetivos:

Atributos

AtributoDomínioRegrasDescrição
IDID(18)Rqd PK AK ID:
Chave de indentificação do registro na base local. Mesmo registros originados em outras bases receberão um ID local. Para saber o ID original de registros provenientes de outras bases, consultar o atributo ORIGINAL_ID.

ORIGINAL_IDID(18)Rqd ID Origem:
ID do log original. Será igual ao ID do log no nodo de origem.
DATA_HORADATE_TIMERqd AK Data/hora:
Data e hora em que o log foi registrado. Esta informação refere-se ao momento em que o registro foi salvo localmente e não significa que seja igual ao do local de origem.

Valor padrão = [SYSDATE]
DATA_ORIGEMDATE_TIMERqd AK Data/hora na origem:
Indica a hora em que o registro foi gerado no base original (atributo DATA_HORA da base original)
Este valor é replicado sem alterações para todas as bases.

Valor padrão = [SYSDATE]
COMANDOTEXTRqd Comando:
Comando DML ou DDL executado. Comandos de INSERT, UPDATE e DELETE gerados pelas entidades são armazenados simplesmente pelas letras "I", "U" ou "D" (os comandos DML são automaticamente montados utilizando os parâmetros e pelos atributos TABELA e REGISTRO_ID).

Operações de DML ou DDL serão registradas com o respectivo comando "nativo" e parâmetros informados como "?" no comando serão substituídos pelo respectivo parâmetro posicional registrado na lista de parâmetros.

O comando especial "H", se refere a um histórico do registro, normalmente capturado através de algum processo de migração de dados históricos. Este tipo de comando é replicado mas não altera os dados do sistema.
PARAMETROSTEXT_LONGParametros:
Relação de parâmetros a serem utilizados pelo respectivo comando. A forma com que os parâmetros são serializados depende do comando.

Para comandos "I" e "U" (insert e update), os parâmetros são formados por uma lista de linhas no formato COLUNA=VALOR, sendo que o VALOR é codificado (UrlEncoded).

Para comandos "D" (delete), não há parâmetros informados. O ID do registro excluído segue na coluna REGISTRO_ID.

Para os comandos nativos, (onde os parâmetros são representados por "?" no comando), os parâmetros são formados por uma lista de linhas no formato TIPO=VALOR, sendo que TIPO é definido pelo SqlTypes convencionado padrão abaixo e o VALOR é codificado (UrlEncoded).
VALORES_ANTIGOSTEXT_LONGValores antigos:
Lista dos valores anteriores para os atributos da entidade. Nas operações de DELETE, é formado por uma lista de CHAVE=VALOR. Nas operações de UPDATE, segue a mesma ordem dos parâmetros informados para o comando.
TABELAUPPER(80)Tabela:
Nome da tabela que gerou o DML. Obrigatório para comando "I", "U" ou "D".
REGISTRO_IDID(18)AK ID do registro:
ID do registro que originou o DML. Obrigatório para comando "I", "U" ou "D".
NODO_ORIGEMUPPERNodo de origem:
Identificação (nome global) do nodo que originou a operação (M, M.2, etc.).
USUARIOLOGIN(40)Usuário:
Usuário da sessão que gerou esta informação.
USUARIO_AUTORIZADORLOGIN(40)Usuário autorizador:
Quando informado, indica o usuário que autorizou a execução da operação. Este atributo é utilizado nas operações que exigem autorização de terceiros.
IPTEXT(40)IP:
Endereço IP de onde veio a requisição que gerou este LOG.
TRANSACAO_IDID(18)AK Transação:
Identifica a transação que originou este LOG. Note que logs vinculados a transações não encerradas podem ser utilizados para auditoria mas não podem ser considerados para efeito de replicação e/ou históricos (journaling).
Este vínculo será realizado apenas quando o DML/DDL tenha sido executado dentro de uma transação explícita.
REQUISICAO_IDBIG_INTEGER(18)Requisicao:
Número utilizado para identificar a requisição de gerou este log. Este número pode ser utilizado para separar os logs gerados por uma determinada requisição dos outros logs.
SESSAO_IDTEXT(40)Sessão:
Chave de identificação da sessão que gerou o registro.
TEMPOINTEGERTempo:
Tempo em milissegundos que durou o evento registrado pelo LOG. Utilizado apenas nas operações onde isso pode ser medido.
FILAOPCAO(1)AK Fila:
Indica a fila onde se encontra este registro. Quando o LOG é registrado, a fila dependerá do sistema estar configurado para utilizar replicação e da respectiva tabela necessitar ser replicada.

Valores permitidos:
  • A - A - Comandos locais a serem replicados - O registro foi originado neste servidor e está aguardando para ser enviado para o node pai (se houver).
    Quando não existe node pai, todos os registros originados localmente são gravados na fila F.
  • B - B - Comandos externos não processados - O registro foi originado externamente e ainda não foi processado (executado) localmente.
  • E - E - Erros (conflitos) - O registro representa um comando originado externamente (era da fila B) que ao ser processado causou um erro.
  • F - F - Comandos finalizados - O registro já foi processado localmente e também já foi propagado para o servidor pai.
    Estes registros passam a ser disponibilizados para serem baixados pelos nodes filhos.
  • N - N - Não replicar - O registro foi gerado localmente e não deve ser replicado.
  • X - X - Transação abortada - Indica que o registro fazia parte de uma transação que não foi encerrada com sucesso e por isso não deve ser replicado.
    A fila "X" é originada por registros na fila "A" vinculados a uma transação que foi abortada. Sempre que uma transação é abortada, os respectivos registros são alterados para a fila "X".
MENSAGEM_ERROTEXTMensagem de erro:
Para DMLs na fila 'E', informa a mensagem do erro que ocorreu quando este DML foi aplicado

Regras

Compactar(data_inicial, data_final)

O procedimento de compactação permite resumir vários registros de UPDATE em um único registro. Os parâmetros e valores antigos são mesclados de forma que todas as alterações do período são representadas em um único registro.

Descrição textual

Monta uma descrição textual para a operação. Nas operações de INSERT, apenas informa os novos atributos. Nas operações de UPDATE, informa valor anterior/posterior e na operação de DELETE não informa nada.

Migrar logs(tabela, registro_id)

Procedimento utilizado para migrar informações que estão no LOG para os LOGS_DADOS.