Governo de Minas Gerais

1. Visão da Ferramenta CLI

O pacote CLI do Extrator expõe os mesmos controles da interface gráfica em forma de comandos npm: você instala o artefato offline (.tgz), executa as tarefas via `extrator-esus` e tem logs, atualizações e uploads acessíveis para automação.

  • Módulos instalados: listados por `extrator-esus list-modules` com status e versão.
  • Atualizações centralizadas: `check-updates` e `update-core` lidam com artefatos do core e de módulos, com cache configurável.
  • Integração com Filhos de Minas: os mesmos endpoints são usados via `send-filhos` depois que as `requiredSettings` estiverem preenchidas.

2. Configurações

Use `config-get` e `config-set` para ajustar os campos sensíveis:

extrator-esus config-set --module filhos_de_minas --set baseUrl=https://filhos.example.com/api
extrator-esus config-set --module __global__ --set core.updateUrl=https://updates.example.com/core

O CLI respeita o tipo dos campos (`sensitive`, `required` etc.), mascarando senhas no output e persistindo tudo em config/modules-config.json.

Exemplo de visualização de configurações via CLI

Figura: Visualização das configurações do módulo via linha de comando.

3. Recuperando os dados do DW

No CLI, o comando equivalente à tela de importação é:

extrator-esus run --module filhos_de_minas

Você pode adicionar `--page`, `--pageSize` e `--filter` para controlar a paginação e os filtros que são aplicados ao processar os registros do DW.

Use `local-list --module filhos_de_minas` para simular a visão da tabela local e `local-clear` para limpar antes de iniciar um novo lote.

4. Operações de envio

Após preencher os `requiredSettings` e aceitar os termos (`termsAccepted=true`), envie os itens pendentes com:

extrator-esus send-filhos

Use `--limit` para controlar quantos itens são enviados por lote e combine `check-updates`/`run` para garantir que o módulo esteja atualizado antes do upload.

5. Logs e monitoramento

O CLI possui comandos equivalentes aos painéis da GUI:

  • extrator-esus logs --module filhos_de_minas --action send.item – resumo de batches e entradas de log com filtros de status, ação, mensagem ou ID do lote.
  • extrator-esus log-messages --module filhos_de_minas --action send.api_error – lista as mensagens distintas registradas para ajudar a reproduzir o filtro “Mensagem”.
  • extrator-esus sqlite --sql "<consulta>" – consulta direta ao banco local (db.sqlite ou extrator-local.db).

Combine filtros como --status error e --message para investigar falhas sem abrir a interface.

6. Fluxo resumido

O ciclo padrão no CLI é este:

  1. Instalar/atualizar o CLI – use o `.tgz` e execute npm i -g /caminho/extrator-pec-esus-{versao}.tgz.
  2. Configurar o módulo – preencha `baseUrl`, `core.updateUrl`, credenciais e `termsAccepted=true` via `config-set`.
  3. Sincronizar dados – rode `run --module filhos_de_minas` para processar o lote atual.
  4. Enviar ao Filhos de Minas – execute `send-filhos` e monitore `logs`/`log-messages` caso algo falhe.

Para limpar tudo e recomeçar, use `extrator-esus uninstall`, que remove o banco, configs e downloads mantendo o binário para que você possa reinstalar com `npm install -g`.