Je suis nouveau sur DBMS_PROFILER. Tous les exemples que j'ai vus utilisent une simple procédure de niveau supérieur pour démontrer l'utilisation du profileur, et à partir de là obtenir tous les numéros de ligne etc. Je déploie tout le code dans les paquets, et j'ai beaucoup de mal à remplir ma session de profil le plsql_profiler_units avec des données utiles. La plupart de mes courses ressemblent à ceci:Oracle DBMS_PROFILER affiche seulement Anonymous dans les tableaux de résultats
RUNID RUN_COMMENT UNIT_OWNER UNIT_NAME SECS PERCEN
----- ----------- ----------- -------------- ------- ------
5 Test <anonymous> <anonymous> .00 2.1
Profiler
5 Test <anonymous> <anonymous> .00 2.1
Profiler
5 Test <anonymous> <anonymous> .00 2.1
Profiler
Je viens intégré les appels à la dbms_profiler.start_profiler, flush_data et stop_profiler selon tous les exemples. La principale différence est que mon code est dans un paquet, et appelle dans un autre paquet. Avez-vous besoin de profiler chaque procédure stockée dans votre pile d'appels? Si oui, cela rend cet outil un peu inutile!
J'ai vérifié http://www.dba-oracle.com/t_plsql_dbms_profiler.htm pour des indices, entre autres sites similaires.
Quelle est la version de base de données? Il est possible que si le compilateur d'optimisation fait quelque chose comme du code en ligne, il devient impossible de réconcilier les mesures du code optimisé restructuré avec la source d'origine. –
C'est Oracle 10.2g –