Ir para o conteúdo

Histórico de Eventos

O Vinyl registra a execução do evento na tabela de histórico de eventos. Os seguintes eventos são registrados:

  • Eventos executados em segundo plano, sejam agendados ou iniciados por um usuário.
  • Qualquer evento que gere uma exceção.
  • Qualquer evento que leve mais de 10 segundos para ser executado.

O histórico de eventos está disponível para administradores por meio do IDE > Monitoring. O histórico de eventos também está disponível para desenvolvedores de forma programática por meio do objeto de dados públicos EventHistory. O objeto de dados públicos EventHistory expõe as seguintes colunas:

  • EventHistoryId - Número inteiro crescente monotonicamente.
  • ContextId - Identificador exclusivo que pode ser usado para correlacionar eventos que ocorrem em uma única operação, como uma regra CRUD de negócios. Este valor é acessível a regras usando a função de tempo de execução event('contextid') mvSQL.
  • TableId - A tabela na qual o evento foi invocado.
  • EventName - O nome do evento invocado.
  • Result - O resultado do evento. Os valores possíveis incluem Sucesso, Erro e Cancelado.
  • StartedOn - A data e hora em que o evento foi invocado.
  • CompletedOn - A data e hora em que o evento terminou, com sucesso ou não.
  • Duration - A duração da execução do evento em milissegundos. Como muitos campos de carimbo de data/hora SQL não têm precisão de milissegundos, esse número pode ser diferente do valor derivado da subtração de StartedOn de CompletedOn.
  • RanAsUserId - O identificador do usuário principal sob o qual o evento foi executado. Este valor é acessível às regras por meio da função de tempo de execução who('userid') mvSQL.
  • Bindings - Critérios de ligação usados para recuperar a linha na qual o evento foi executado. Os critérios são serializados usando codificação de URL (por exemplo, Nome1=Valor1&Nome2=Valor2). As vinculações não estão disponíveis para todos os eventos.
  • Exception - Mensagem de exceção se o evento falhou como resultado de uma exceção. Este valor é acessível para manipuladores de falha de ação usando a função de tempo de execução mvSQL event('exception').
  • SessionId - No caso de um evento iniciado pelo usuário, o identificador da sessão do usuário. No caso de um evento agendado, um identificador de sessão efêmera. Este valor é acessível a regras usando a função de tempo de execução session() mvSQL.
  • RowId – Identificador exclusivo da linha na qual o evento foi invocado. No caso de uma regra CRUD comercial, isso se refere ao identificador da linha de destino. Este valor é acessível às regras usando a função de tempo de execução event('rowid') mvSQL.
  • SourceRowId - Identificador exclusivo para a linha de origem de inserção e atualização do CRUD comercial. Este valor é acessível para regras CRUD de negócios usando a função de tempo de execução event('source.rowid') mvSQL.

Nota

A entrada é gravada no histórico de eventos após a execução do evento. Como consequência, o evento em si não pode acessar sua entrada no histórico.