Bonjour a tous,
Ce que je souhaite faire est relativement simple (sauf avec oracle et quand on est pas soi-meme dba![]()
j'aimerai recuperer toutes les requetes executees par un utilisateur (utilise uniquement par une application specifique) pour faire du reengineering de l'application en question (dont je n'ai pas le code et je voudrais savoir ou elle "tappe" dans la base de donnees)
pour faire ca j'ai essayer un trigger :
j'obtiens bien un fichier de trace .trc dont le contenu ne me satisfait pas du tout
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Create or replace trigger trigger_webdfe AFTER LOGON ON database begin if user = 'webdfe' execute immediate 'alter session set sql_trace = true'; end if; end;
monfichier.trc
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
ORACLE_HOME = /oracle/9i
System name: AIX
Node name: ****
Release: ****
Version: ****
Machine: ****
Instance name: LEOBASE_F
Redo thread mounted by this instance: 1
Oracle process number: 8
Unix process pid: 876686, image: oracle@leo (TNS V1-V3)qqun pourrait m'expliquer ou est le probleme ?*** SESSION ID7.9789) 2005-03-10 16:27:37.276
Skipped error 4098 during the execution of SYSDBA.TRIGGER_WEBDFE
*** 2005-03-10 16:27:37.305
ksedmp: internal or fatal error
ORA-04098
j'ai commencer par une commande du style :
mais cela n'est pas utilisable sachant que l'application se deco/reconnecte a chaque requete executee et que donc le serial est incremente a chaque fois et le sid change aussi parfois...
Code : Sélectionner tout - Visualiser dans une fenêtre à part EXECUTE DBMS_SYSTEM.SET_SQL_TRACE_IN_SESION(SID,SERIAL#,BOOLEAN)
MERCI D'AVANCE POUR VOTRE AIDE !!!!!!!!!!!!!!!!!!!!!!!!))
Partager