Eu gostaria de gerar um arquivo de log contendo todas as consultas SQL enviadas pelo ArcGIS Server (ArcSDE) ao banco de dados Oracle. Tem algum jeito de fazer isso? Estou usando o Oracle 11g e o ArcGIS Server 10.0 no Windows. ArcSDE é usado em conexão direta.
arcgis-10.0
arcgis-server
sql
oracle-11g
log
yo_haha
fonte
fonte
Respostas:
Na verdade, existem várias maneiras de rastrear qualquer conexão ArcSDE. As chamadas entre o aplicativo cliente e o cliente ArcSDE são registradas no arquivo SDE Trace, entre o cliente e o servidor ArcSDE no arquivo SDE Intercept, o servidor ArcSDE registra certos eventos no serviço ou no log de conexão direta e as chamadas do banco de dados são registradas os arquivos de log do DBMS.
Os arquivos do ArcSDE Trace registram todas as chamadas feitas para o cliente ArcSDE. Esses arquivos geralmente são grandes e barulhentos. Veja o SDETraceLoc e SDETraceMode na ajuda do dbinit . Esses valores também podem ser definidos como variáveis de ambiente antes de você iniciar o aplicativo, isso funciona para aplicativos e conexões diretas.
Os arquivos do ArcSDE Intercept são geralmente mais úteis. Eles mostrarão quanto tempo está sendo gasto em que chamada. Uma palavra de cautela, porém, a SDE elabora um conceito de fluxos. Certos comandos (como inserções, atualizações e exclusões) configuram informações no fluxo e, em seguida, execute o comando. Normalmente, o número do fluxo é o primeiro número inteiro após o comando no arquivo de interceptação. Isso pode ficar confuso se você tiver muitos fluxos (eu já vi até 26 fluxos). Você pode consultar SDEIntercept e SDEInterceptLoc na ajuda do dbinit ou este artigo da KB nos arquivos SDE Intercept para obter mais informações e exemplos.
Os arquivos de log do serviço ArcSDE, na pasta% SDE_HOME% \ etc, ou os arquivos de log de conexão direta, nas pastas% SDE_HOME% \ etc ou% TEMP%, contêm informações gerais sobre o que está acontecendo com o serviço ou a conexão. A quantidade de informações registradas pode ser aumentada com a variável SDEVerbose ( ajuda do dbinit ).
Arquivos de log e rastreamentos do DBMS são muito úteis. Mas eles fornecem apenas parte da imagem. Além disso, alguns bancos de dados (como Oracle), na verdade, não incluem todos os tipos de erros no rastreamento do DBMS. Existem várias maneiras de ativar o rastreamento SQL, o comentário de Devdatta acima contém links para mais informações.
Outros links: Aprofundando - Solucionando problemas de erros de geoprocessamento ao usar dados do ArcSDE
fonte