| Cliente | Razão social / CNPJ | Contato | Conexão Oracle | Monitor | Última exportação |
|---|
| Executável | Tipo | Título / área | Descrição | SQLs | Execuções |
|---|
(escolha um arquivo à esquerda)
Relacionamentos
Cruza os metadados extraídos com o SQL que o banco realmente executou. Ex.: quem grava na tabela PCPEDC, o que o package FATURAMENTO faz, quais rotinas mexem em estoque.
O Oracle guarda o SQL recente em V$SQL, um cache que se perde
com o tempo. O monitor lê esse cache de tempos em tempos e acumula tudo
aqui, com o executável e a linha que emitiu cada comando.
Exige que o usuário da conexão enxergue as views V$
(SELECT_CATALOG_ROLE).
MODULE da sessão. Versões do mesmo executável
aparecem agrupadas. "SQL direto" = comandos enviados pelo programa
sem passar por rotina PL/SQL.documentacao_do_sistema).
Usado pela tela Pesquisar para redigir a resposta em cima do que a busca encontrou. A chave fica guardada neste servidor. Sem ela, a pesquisa continua funcionando — apenas sem o texto corrido.
deepseek-chat responde direto; deepseek-reasoner
raciocina mais antes de responder, custando mais tempo e tokens.
O Claude Code se conecta neste sistema por MCP e consulta os metadados extraídos enquanto você desenvolve: estrutura de tabelas, código PL/SQL, relações entre objetos e busca no código. Copie os comandos abaixo e execute no terminal da máquina onde o Claude Code roda.
claude-mcp, sem senha —
acessa a API apenas por token e pode ser revogado sem afetar seu login.
claude mcp list
vsystems-extrator: ... - ✔ Connected.vsystems no Oracle
O extrator conecta no Oracle do cliente com um usuário somente leitura. Ele não cria
objetos nem altera dados: lê o dicionário (tabelas, colunas, constraints, índices,
fontes PL/SQL, DDL) e o cache de SQL (V$SQL, V$SQL_PLAN, V$SESSION)
para o monitor. Peça ao DBA do cliente para executar o script abaixo como SYS ou SYSTEM.
-- Extrator de Metadados VSystems - usuario de leitura
-- Troque a senha antes de executar. Em Oracle 12c+ multitenant,
-- execute conectado no PDB do Winthor (ALTER SESSION SET CONTAINER = nome_do_pdb).
CREATE USER vsystems IDENTIFIED BY "TroqueEstaSenha#2026"
DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP
QUOTA 0 ON USERS;
-- entrar no banco
GRANT CREATE SESSION TO vsystems;
-- dicionario de dados completo (DBA_TABLES, DBA_TAB_COLUMNS, DBA_CONSTRAINTS,
-- DBA_INDEXES, DBA_SOURCE, DBA_DEPENDENCIES...)
GRANT SELECT ANY DICTIONARY TO vsystems;
-- views de desempenho (V$SQL, V$SQLAREA, V$SQL_PLAN, V$SESSION, V$VERSION)
-- e DBMS_METADATA.GET_DDL de objetos de outros schemas
GRANT SELECT_CATALOG_ROLE TO vsystems;
-- a senha nao pode expirar: o monitor coleta sozinho, 24h por dia
CREATE PROFILE vsystems_perfil LIMIT
PASSWORD_LIFE_TIME UNLIMITED
FAILED_LOGIN_ATTEMPTS UNLIMITED;
ALTER USER vsystems PROFILE vsystems_perfil;
-- caso o usuario ja exista e esteja bloqueado/expirado:
-- ALTER USER vsystems ACCOUNT UNLOCK;
-- ALTER USER vsystems IDENTIFIED BY "TroqueEstaSenha#2026";
-- cada consulta deve devolver um numero, sem ORA-00942
SELECT COUNT(*) FROM dba_objects;
SELECT COUNT(*) FROM dba_source;
SELECT COUNT(*) FROM v$sql;
SELECT COUNT(*) FROM v$sql_plan;
SELECT COUNT(*) FROM v$session;
SELECT DBMS_METADATA.GET_DDL('TABLE', 'PCPEDC', 'WINT') FROM dual;
CREATE SESSION | conectar no banco |
SELECT ANY DICTIONARY | dicionário DBA_*: estrutura, comentários, fontes PL/SQL, dependências |
SELECT_CATALOG_ROLE | views V$ (SQL executado, planos, sessões) e DDL via DBMS_METADATA |
QUOTA 0 | garante que o usuário não grava nada |
PASSWORD_LIFE_TIME UNLIMITED | evita a coleta parar por senha expirada (ORA-28001) |
- Banco acessível por IP/VPN: cadastre o IP e a porta (normalmente 1521) na conexão do cliente. O firewall do cliente precisa liberar a porta do listener para o IP do servidor
ext.vsystems.com.br. - Banco atrás de NAT (o comum): use o túnel reverso do cliente: uma máquina da rede do cliente mantém uma conexão SSH de saída para
ext.vsystems.com.br:22, e o Oracle passa a ser alcançado comolocalhost:PORTA_DO_TUNEL. Nenhuma porta de entrada precisa ser aberta no cliente.
- Cadastre o cliente em Clientes → Novo cliente com os dados de conexão e teste.
- Faça a primeira exportação (aba Exportação) para ter a estrutura do banco.
- Ligue o Monitor para começar a capturar os SQLs executados.