Rastreamento de acesso a dados
Ola a todos,
Estou precisando encontrar uma maneira de identificar nos clients de uma aplicação todas as transações que estão sendo feitas entre a estação e o servidor, como se fosse um trace, porém o ideal seria conseguir rastrear o acesso aos dados através do driver (OLEDB, ODBC, JDBC etc...) pois assim indiferente do banco de dados que esteja conectado teoricamente eu conseguiria identificar para qual servidor está indo e qual o comando está sendo solicitado.
Alguém ja fez algo do tipo ? Qualquer informação será muito útil !
Obrigado
Estou precisando encontrar uma maneira de identificar nos clients de uma aplicação todas as transações que estão sendo feitas entre a estação e o servidor, como se fosse um trace, porém o ideal seria conseguir rastrear o acesso aos dados através do driver (OLEDB, ODBC, JDBC etc...) pois assim indiferente do banco de dados que esteja conectado teoricamente eu conseguiria identificar para qual servidor está indo e qual o comando está sendo solicitado.
Alguém ja fez algo do tipo ? Qualquer informação será muito útil !
Obrigado
Henrique.gurgacz
Curtidas 0
Respostas
Motta
28/05/2006
Se o driver do client oracle estiver ataulizado pode-se identificar
a estação , o nome da aplicação , o usuário entre outras coisas , a função que faz isto é a userenv .
Vc que rastrear exatamento o que ?
a estação , o nome da aplicação , o usuário entre outras coisas , a função que faz isto é a userenv .
Vc que rastrear exatamento o que ?
GOSTEI 0
Henrique.gurgacz
28/05/2006
Olá Mota,
A solução que vc citou acredito que irá funcionar, porém ficarei fechado apenas no Oracle. Oque eu preciso desenvolver é uma aplicação que faça o seguinte:
Digamos que uma empresa tenha uma aplicativo desenvolvido em Clipper, ela usa ODBC para se conectar com Sybase, a aplicação faz a chamada de diversas procedures porém existe diversos comandos SQL dentro do código da aplicação. A empresa precisa urgentemente migrar para um novo banco de dados (digamos o Oracle), porém não tem tempo e nem equipe para formatar todos os comandos SQL da aplicação dentro do formato do novo banco de dados (Oracle). Para essas situações que gostaria de propor um projeto de conclusão de curso que permita identificar solicitações feitas a um banco de dados, meu sistema teria que cancelar essas solicitações ao banco reformatar o comando SQL para um novo banco de dados e direcionar para o servidor correto. Basicamente o trabalho que um driver (ODBC, OLEDB) faz. Com isso qualquer empresa poderia migrar para outros bancos de dados sem se preocupar com alterações dos fontes, teria apenas que fazer um Mirror do banco e usar meu projeto para direcionar os comandos para um novo banco (parametros do meu projeto).
Entendeu o tamanho do meu problema ??? Vc conhece algo do tipo ? Teria alguma direção que acha que eu devo tomar ?
Agradeço pela atenção
________________
Henrique Gurgacz
Curitiba - PR
A solução que vc citou acredito que irá funcionar, porém ficarei fechado apenas no Oracle. Oque eu preciso desenvolver é uma aplicação que faça o seguinte:
Digamos que uma empresa tenha uma aplicativo desenvolvido em Clipper, ela usa ODBC para se conectar com Sybase, a aplicação faz a chamada de diversas procedures porém existe diversos comandos SQL dentro do código da aplicação. A empresa precisa urgentemente migrar para um novo banco de dados (digamos o Oracle), porém não tem tempo e nem equipe para formatar todos os comandos SQL da aplicação dentro do formato do novo banco de dados (Oracle). Para essas situações que gostaria de propor um projeto de conclusão de curso que permita identificar solicitações feitas a um banco de dados, meu sistema teria que cancelar essas solicitações ao banco reformatar o comando SQL para um novo banco de dados e direcionar para o servidor correto. Basicamente o trabalho que um driver (ODBC, OLEDB) faz. Com isso qualquer empresa poderia migrar para outros bancos de dados sem se preocupar com alterações dos fontes, teria apenas que fazer um Mirror do banco e usar meu projeto para direcionar os comandos para um novo banco (parametros do meu projeto).
Entendeu o tamanho do meu problema ??? Vc conhece algo do tipo ? Teria alguma direção que acha que eu devo tomar ?
Agradeço pela atenção
________________
Henrique Gurgacz
Curitiba - PR
GOSTEI 0
Motta
28/05/2006
Os bancos são muitos diferentes ?
Se usa muitas coisas proprietarias ?
Se usa muitas coisas proprietarias ?
GOSTEI 0
Henrique.gurgacz
28/05/2006
Olá Motta,
Muito obrigado pelo interesse em me ajudar...
... Os bancos de dados que vou usar serão diferentes (SQLServer, Oracle, Sybase e talves DB2), porém as bases de dados serão iguais ! Serão réplicas identicas das bases entre os diferentes bancos.
Quanto a coisas proprietarias, não uso nada. Pretendo usar apenas os recursos do banco de dados puro ! Sem nenhuma extensão.
Se achar mais fácil podemos trocar algumas idéias por e-mail...
gurgacz@gmail.com
Att
Henrique Gurgacz
Muito obrigado pelo interesse em me ajudar...
... Os bancos de dados que vou usar serão diferentes (SQLServer, Oracle, Sybase e talves DB2), porém as bases de dados serão iguais ! Serão réplicas identicas das bases entre os diferentes bancos.
Quanto a coisas proprietarias, não uso nada. Pretendo usar apenas os recursos do banco de dados puro ! Sem nenhuma extensão.
Se achar mais fácil podemos trocar algumas idéias por e-mail...
gurgacz@gmail.com
Att
Henrique Gurgacz
GOSTEI 0
Motta
28/05/2006
O que se faz em geral em aplicativos multi bd é não usar nenhum função proprietaria de bd , só usar o parão ansi assim todas as suas queries não precisam de tradução.
Outra coisa que fazem (muito mais complicado) é criar uma camada de acesso ao bd, mas é uma solução muto complexa.
Em geral as linguagens hoje , orientadas a objeto tem o acesso como classe assim mudar o bd é relativamente simples , desde que não se mude as queries.
Outra coisa que fazem (muito mais complicado) é criar uma camada de acesso ao bd, mas é uma solução muto complexa.
Em geral as linguagens hoje , orientadas a objeto tem o acesso como classe assim mudar o bd é relativamente simples , desde que não se mude as queries.
GOSTEI 0