# LOG e Estrutura das Tabelas

## Visão Geral

Esta seção descreve como funciona o **Log da Aplicação do Suricato Face** e apresenta a **estrutura das tabelas utilizadas pelo sistema**.

Os logs permitem acompanhar o funcionamento da aplicação, identificar erros e apoiar análises técnicas. Já a estrutura de tabelas define como o Suricato Face organiza, controla e registra o processamento de pessoas, crachás e operações relacionadas ao reconhecimento facial.

## Regra de Negócio

Para o correto funcionamento do log da aplicação e do processamento de dados, é obrigatório:

* Existência do arquivo de configuração `log4j2.xml`.
* Permissão de escrita na pasta onde os arquivos de log são gerados.
* Execução correta da aplicação Suricato Face.
* Banco de dados configurado e acessível.
* Existência das views e tabelas listadas na estrutura de banco de dados.
* Processos do Suricato Face em execução para geração de registros.

Sem essas condições, o registro de logs ou o controle de processamento poderá não ocorrer corretamente.

## Log da Aplicação – Suricato Face

O log da aplicação é configurado por meio do arquivo:

```
log4j2.xml
```

Esse arquivo define onde e como os logs serão registrados.

#### Appender Console

O **Appender Console** é utilizado apenas para **debug e análise**.

Quando a aplicação é executada em modo console, os logs são exibidos diretamente na tela.

Para executar a aplicação nesse modo, utilize o comando:

```
java -jar suricato_face.jar -Dloader.main=br.com.telematica.suricato.face.Main
```

#### Appender RollingFile

O **Appender RollingFile** é responsável por registrar logs do tipo **INFO**.

* Todos os logs INFO são gravados no arquivo:

  ```
  suricato-vv.info.log
  ```
* O arquivo é reciclado em **11 arquivos**, cada um com **10 MB**.

#### Appender RollingFile – ErrorLogFile

O **Appender RollingFile – ErrorLogFile** registra logs do tipo **ERROR**.

* Todos os logs ERROR são gravados no arquivo:

  ```
  suricato-vv.error.log
  ```
* O arquivo é reciclado em **11 arquivos**, cada um com **10 MB**.

## Estrutura de Tabelas

A seguir estão descritas as views e tabelas utilizadas pelo Suricato Face.

#### View que retorna lista de crachá válido de Colaborador e Visitante

| VHISTORICOCRACHAFACE |
| -------------------- |
| PESSOA               |
| CRACHA               |
| PLANTA               |
| CODIN                |

#### Tabela de controle dos registros processados

| TBFACEPESSOACONTROLE |
| -------------------- |
| IDPESSOA             |
| CRACHA               |
| CODIPLAN             |
| CODICOLE             |

#### Tabela com a fila para processamento do Suricato-Player

| TBFACEPESSOAFILA |
| ---------------- |
| CODIGO           |
| IDPESSOA         |
| CRACHA           |
| CODIPLAN         |
| CODICOLE         |
| EQUIPAMENTO      |
| OPERACAO         |

#### Tabela com o histórico de processamento

| TBFACEPESSOAHISTORICO |
| --------------------- |
| INCLUSAO              |
| CODIGO                |
| IDPESSOA              |
| CRACHA                |
| CODIPLAN              |
| CODICOLE              |
| EQUIPAMENTO           |
| OPERACAO              |
| STATUS                |
| OBSERVACAO            |

## Guia Rápido de Uso

1. Verificar o arquivo `log4j2.xml`.
2. Executar a aplicação em modo console quando necessário para debug.
3. Consultar os arquivos `suricato-vv.info.log` e `suricato-vv.error.log`.
4. Monitorar o processamento por meio das tabelas de controle, fila e histórico.

## Glossário

* **Appender:** Componente responsável por definir onde e como os logs serão gravados.
* **RollingFile:** Tipo de appender que cria novos arquivos de log automaticamente quando o tamanho máximo é atingido.
* **Suricato-Player:** Serviço responsável pelo processamento das operações relacionadas ao reconhecimento facial.

## FAQ – Perguntas Frequentes

<details>

<summary>Onde encontro os logs da aplicação?</summary>

Os logs são gerados nos arquivos `suricato-vv.info.log` e `suricato-vv.error.log`, conforme definido no `log4j2.xml`.

</details>

<details>

<summary>Quando devo usar o Appender Console?</summary>

Apenas para debug e análise, executando a aplicação em modo console.

</details>

<details>

<summary>Por que não vejo registros nas tabelas de histórico?</summary>

Verifique se o serviço está em execução e se há registros sendo processados na fila.

</details>

<details>

<summary>O que acontece quando o arquivo de log atinge 10 MB?</summary>

O arquivo é reciclado automaticamente, mantendo até 11 arquivos.

</details>

<details>

<summary>Os logs ERROR substituem os logs INFO?</summary>

Não. Cada tipo de log é gravado em seu respectivo arquivo.

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://software-telematica-com.gitbook.io/suricato-docs/central-tecnica/instalacao-e-configuracao-de-servicos-do-suricato/instalacao-e-configuracao-do-suricato-face/log-e-estrutura-das-tabelas.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
