SlideShare ist ein Scribd-Unternehmen logo
Oracle Workshop I

                   Session Tracing




                        H. Ciganek

 03.08.2007                                             1




                           Agenda

• Tracing
• Tracing in eigener und fremder Session
• Tracing in der Webanwendung (mehrere Session)
• Diagnostisches Ereignis + Levels für Tracing
• Trace Analyzer (TRCANLZR)




 03.08.2007         Oracle Workshop - Session Tracing   2




                                                            1
Tracing - Definition
Tracing      Ablaufverfolgung zur (Performance-) Analyse oder Fehlersuche

Oracle SQL Tracing
• Identifikation der Top SQL Abfragen
• Explain Plan
• Call summary (parse, execute, fetch)
• I/O für Objekte
• Werte für Bind Variables
• CBO Statistiken
• Hot Blocks
• Wait Events
• Latches



03.08.2007                 Oracle Workshop - Session Tracing                  3




                  Tracing – gängige Befehle

(set autotrace on)

alter system|session set sql_trace=true;

exec dbms_session.set_sql_trace(true);

exec dbms_support.start_trace_in_session (sid, serial#);

exec dbms_system.set_sql_trace_in_session (sid, serial#, sql_trace);

exec dbms_monitor.session_trace_enable (session_id, serial#, waits, binds);

exec dbms_monitor.client_id_trace_enable (client_id, waits, binds);


Neu bei 10gR2
exec dbms_monitor.SERV_MOD_ACT_TRACE_ENABLE(SERVICE_NAME, MODULE_NAME,
   ACTION_NAME, WAITS, BINDS, INSTANCE_NAME);

Trace-Datei      Server Verzeichnis        Parameter USER_DUMP_DEST

03.08.2007                 Oracle Workshop - Session Tracing                  4




                                                                                  2
Tracing in eigener Session
Metalink Note: 376442.1
-- 1. Einstellungen ---------------------------
alter session set timed_statistics   = true;
alter session set statistics_level   = all;
alter session set max_dump_file_size = unlimited;

-- 2. Tracing starten --------------------------
alter session set events '10046 trace name context forever,level 12';

-- 3. Trace-File Name abfragen -----------------
oradebug setmypid
oradebug tracefile_name

-- 4. >> Hier Abfragen zum Tracen absetzen ------
Select * from ......

-- 5. Tracing beenden ---------------------------
alter session set events '10046 trace name context off';

-- 6. Traceanalyzer starten ---------------------



03.08.2007                               Oracle Workshop - Session Tracing                           5




                         Tracing in fremder Session
Metalink Note: 1058210.6
-- 1. Einstellungen ------------------------------------------------------
alter system set timed_statistics   = true       SCOPE=BOTH;
alter system set statistics_level   = all        SCOPE=BOTH;
alter system set max_dump_file_size = unlimited SCOPE=BOTH;
--2. Processe abfragen ---------------------------------------------------
select   s.paddr,s.username, p.pid,p.spid
  from   v$session s, v$process p
 where   s.paddr=p.addr
   and   s.username = 'TEST1';
                                                             /*
                                PADDR            USERNAME                              PID SPID
                           ---------------- ------------------------------ ---------- ------------
                               000007FF8F2E05C8 TEST1                                  15 7176
                                                             */
-- 3a. Process einbinden mit Oracle Prozess Id ---------------------------
oradebug setorapid &PID
-- 3b. Process einbinden mit Betriebsystem Prozess Id --------------------
oradebug setospid &SPID
-- 4. Tracing starten ----------------------------------------------------
oradebug event 10046 trace name context forever, level 12
-- 5. Trace-File Name abfragen -------------------------------------------
oradebug tracefile_name
-- 6. >> Hier die Anwendung oder Maske in der fremder Session benutzen ---
-- 7. Tracing ausschalten ------------------------------------------------

oradebug event 10046 trace name context off
-- 8. Traceanalyzer starten ----------------------------------------------
03.08.2007                               Oracle Workshop - Session Tracing                           6




                                                                                                         3
Webanwendung Tracing – Teil 1
Metalink Note: kein
-- 0. Vorbereitung ---------------------------------------------------------
-- 0.A – Neuen Oracle Service extra für Tracing erstellen ->
alter system set service_names='INTDEV05.int.lidl.net','TRACE_INTDEV05.int.lidl.net' SCOPE=BOTH;
-- 0.B – Extra Eintrag mit neuem Service in TNSNAMES.ORA
-- 0.C – Zusätzliche Konfiguration des AppServer für neuen Service
-- 0.D – UDUMP täglich entleeren    dbms_scheduler

-- 1.   Einstellungen --------------------------------------------------------
alter   system set timed_statistics   = true       SCOPE=BOTH;
alter   system set statistics_level   = all        SCOPE=BOTH;
alter   system set max_dump_file_size = unlimited SCOPE=BOTH;

-- 2. Tracing starten ------------------------------------------------------
exec dbms_monitor.SERV_MOD_ACT_TRACE_ENABLE ('TRACE_INTDEV05.int.lidl.net', BINDS =>
   TRUE);


-- 3. Tracing abfragen -----------------------------------------------------
select * from DBA_ENABLED_TRACES ;



03.08.2007                           Oracle Workshop - Session Tracing                             7




                 Webanwendung Tracing – Teil 2
-- 3. >> Hier die Webanwendung benutzen -------------------------------------
..........

-- 4. Optional Tracing ausschalten ------------------------------------------

--Exec dbms_monitor.SERV_MOD_ACT_TRACE_DISABLE ('TRACE_INTDEV05.int.lidl.net');

-- Metalink Note: 280543.1
-- 5. Tracefiles Mergen --- >> dbms_scheduler -------------------------------
host trcsess output=test1.trc service=TRACE_INTDEV05.int.lidl.net               *.trc


-- 6. Traceanalyzer starten -------------------------------------------------




03.08.2007                           Oracle Workshop - Session Tracing                             8




                                                                                                       4
Event 10046
Metalink Note: 21154.1
Event 10046 = diagnostisches Ereignis für SQL_TRACE Aktionen
Levels:
• Level 1 = default - alle Aktivitäten bis Trace Session ist gestoppt
      • Äquivalent zu: alter session set sql_trace=true;
• Level 4 = Level 1 + Werte für bind Variables
• Level 8 = Level 1 + Wait Events
• Level 12 = Level 4 + Level 8
Syntax:
alter session set events '10046 trace name context forever, level 12';

oder
Exec dbms_support.start_trace_in_session(sid, serial#, waits, binds);

....


03.08.2007                    Oracle Workshop - Session Tracing                   9




                  Trace Analyzer - TRCANLZR
Note: 224270.1

Das Tool für Bereitstellung und Interpretation der Trace-Files
Ablauf:
• Auslesen der SQL Trace-Dateien generiert von EVENT 10046 mit Level 1, 4, 8,
  oder 12
• Parsen der Trace-Datei - Auswählen, Verarbeiten, and Speichern der relevanten
  Informationen ins Staging Repository
• Erstellug des HTML-Reports lokal ähnlich wie mit TKPROF oder
  TRCSUMMARY




03.08.2007                    Oracle Workshop - Session Tracing               10




                                                                                      5
Trace Analyzer Handhabung

1. Report wird auf dem Server generiert
sqlplus <usr>/<pwd>
exec trca$i.trace_analyzer('<Trace Dateiname>');

2. Report wird lokal beim Entwickler generiert
sqlplus <usr>/<pwd>
Start trcanlzr.sql <Trace Dateiname>;
Beispiel:
start trcanlzr.sql test1.trc
...generating report
Abgelaufen: 00:00:00.09

Trace Analyzer Report "trcanlzr_0_43.html" has been created in
      F:ORACLEADMININTDEV05UDUMP
Abgelaufen: 00:00:20.76

Abgelaufen: 00:00:00.37
...copying report
...report "trcanlzr_0_43.html" has been copied into local directory
...exiting now (hit enter key)


03.08.2007                     Oracle Workshop - Session Tracing      11




                      Trace Analyzer Report




03.08.2007                     Oracle Workshop - Session Tracing      12




                                                                           6
Trace Analyzer Objekte
TABLES
TRCA$_TRACE,           TRCA$_AUDIT_ACTIONS
TRCA$_IDLE_EVENT,      TRCA$_CALL_SUMMARY
TRCA$_WAIT,            TRCA$_BIND
TRCA$_ERROR,           TRCA$_GAP
TRCA$_XCTEND,          TRCA$_STAT
TRCA$_CALL,            TRCA$_CURSOR
TRCA$_TABLES,          TRCA$_CURSOR_TABLES
TRCA$_PLAN_TABLE,      TRCA$_EXEC_SUMMARY
TRCA$_WAIT_SUMMARY,    TRCA$_STAT_SUMMARY
TRCA$_HOT_BLOCK,       TRCA$_CURSOR_WAIT_LATCH
TRCA$_EXTENTS,         TRCA$_IND_PARTITIONS
TRCA$_TAB_PARTITIONS, TRCA$_INDEXES
TRCA$_CURSOR_WAIT_SEGMENT

PACKAGES
TRCA$D – Hauptpaket
TRCA$I – Explain plans, segment statistics

VIEW
TRCA$_CURSOR_V




03.08.2007                              Oracle Workshop - Session Tracing                                13




                            Installation TRCANLZR
cmd
installTRCA INTDEV05

ABLAUF
-----------------------------------------------------------------------------------------------------------
new   2:     DATAFILE 'H:ORACLEORADATAINTDEV05TRCA01.dbf'
Tablespace created.

Specify TRCANLZR password
Enter value for trcanlzr_password:   test

Specify Host String including @ prefix (i.e.: @CERBDEV)
Enter value for host_string:   @INTDEV05
Below are the list of online tablespaces in this database.
Decide which tablespace you wish to create the Trace Analyzer tables and indexes.

TABLESPACE_NAME                  CONTENTS
------------------------------   ---------
TEMP                             TEMPORARY
TRCA                             PERMANENT

Specify TRCANLZR user's default tablespace
Enter value for default_tablespace:   TRCA
Specify TRCANLZR user's temporary tablespace.
Enter value for temporary_tablespace:   TEMP


03.08.2007                              Oracle Workshop - Session Tracing                                14




                                                                                                              7
Deinstallation TRCANLZR
cmd
deinstallTRCA INTDEV05




03.08.2007               Oracle Workshop - Session Tracing   15




                                                                  8

Weitere ähnliche Inhalte

Was ist angesagt?

Der oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerterDer oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerterGunther Pippèrr
 
Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...
Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...
Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...NETWAYS
 
OSMC 2008 | Nagios & OTRS Integration by Jens Bothe
OSMC 2008 | Nagios & OTRS Integration by Jens BotheOSMC 2008 | Nagios & OTRS Integration by Jens Bothe
OSMC 2008 | Nagios & OTRS Integration by Jens BotheNETWAYS
 
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataIntroduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataGunther Pippèrr
 
OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...
OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...
OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...NETWAYS
 
Monitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_healthMonitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_healthGerhard Lausser
 
Auswirkung und Ursachen schnell erfassen - Business-Service-Management
Auswirkung und Ursachen schnell erfassen - Business-Service-ManagementAuswirkung und Ursachen schnell erfassen - Business-Service-Management
Auswirkung und Ursachen schnell erfassen - Business-Service-ManagementRobert Sieber
 
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios Ulrike Schwinn
 
DOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFS
DOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFSDOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFS
DOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFSJomaSoft
 
Rex Linuxtag 2012
Rex Linuxtag 2012Rex Linuxtag 2012
Rex Linuxtag 2012inovex GmbH
 
PostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreibenPostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreibenHans-Jürgen Schönig
 
nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins
nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins
nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins Christian Kauhaus
 
Oracle12c für Entwickler
Oracle12c für EntwicklerOracle12c für Entwickler
Oracle12c für Entwickleroraclebudb
 

Was ist angesagt? (14)

Der oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerterDer oracle dba_und_seine_passwoerter
Der oracle dba_und_seine_passwoerter
 
Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...
Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...
Nagios Conference 2007 | Monitoring von Logfiles mit check_logfiles by Gerhar...
 
OSMC 2008 | Nagios & OTRS Integration by Jens Bothe
OSMC 2008 | Nagios & OTRS Integration by Jens BotheOSMC 2008 | Nagios & OTRS Integration by Jens Bothe
OSMC 2008 | Nagios & OTRS Integration by Jens Bothe
 
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataIntroduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
 
OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...
OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...
OSMC 2014: Monitoring von Netzwerkkomponenten mit check_nwc_health | Gerhard ...
 
Monitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_healthMonitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_health
 
Auswirkung und Ursachen schnell erfassen - Business-Service-Management
Auswirkung und Ursachen schnell erfassen - Business-Service-ManagementAuswirkung und Ursachen schnell erfassen - Business-Service-Management
Auswirkung und Ursachen schnell erfassen - Business-Service-Management
 
Explain explain
Explain explainExplain explain
Explain explain
 
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
 
DOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFS
DOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFSDOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFS
DOAG2018 / Oracle DB erfolgreich betreiben auf SPARC/LDoms/Solaris/ZFS
 
Rex Linuxtag 2012
Rex Linuxtag 2012Rex Linuxtag 2012
Rex Linuxtag 2012
 
PostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreibenPostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreiben
 
nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins
nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins
nagiosplugin - eine Python-Biblioth­ek für Monitoring-Plug­ins
 
Oracle12c für Entwickler
Oracle12c für EntwicklerOracle12c für Entwickler
Oracle12c für Entwickler
 

Andere mochten auch (17)

Internet, tu agencia de viajes
Internet, tu agencia de viajesInternet, tu agencia de viajes
Internet, tu agencia de viajes
 
The wrong call fundamental particles
The wrong call fundamental particlesThe wrong call fundamental particles
The wrong call fundamental particles
 
Algo sobre gravitacion ingles
Algo sobre gravitacion inglesAlgo sobre gravitacion ingles
Algo sobre gravitacion ingles
 
Fisicaimpulsiva2daparteingles
Fisicaimpulsiva2daparteinglesFisicaimpulsiva2daparteingles
Fisicaimpulsiva2daparteingles
 
Presentacion mascotas i
Presentacion mascotas iPresentacion mascotas i
Presentacion mascotas i
 
Proposal
ProposalProposal
Proposal
 
Fisicaimpulsivaingles
FisicaimpulsivainglesFisicaimpulsivaingles
Fisicaimpulsivaingles
 
Anisotropicbriefreferencetotheindex
AnisotropicbriefreferencetotheindexAnisotropicbriefreferencetotheindex
Anisotropicbriefreferencetotheindex
 
Web 2.0 intro
Web 2.0 introWeb 2.0 intro
Web 2.0 intro
 
Intrinsic and-structuring-element
Intrinsic and-structuring-elementIntrinsic and-structuring-element
Intrinsic and-structuring-element
 
Blogs som portfolio
Blogs som portfolioBlogs som portfolio
Blogs som portfolio
 
Læreplanstema: Sociale kompetencer
Læreplanstema: Sociale kompetencerLæreplanstema: Sociale kompetencer
Læreplanstema: Sociale kompetencer
 
Qr koder & AR 1.uv 5.-6.klasse
Qr koder & AR 1.uv 5.-6.klasseQr koder & AR 1.uv 5.-6.klasse
Qr koder & AR 1.uv 5.-6.klasse
 
Hans wilsdorf and rolex
Hans wilsdorf and rolexHans wilsdorf and rolex
Hans wilsdorf and rolex
 
Trucos y consejos youtube
Trucos y consejos youtubeTrucos y consejos youtube
Trucos y consejos youtube
 
Why Location is not important for coffee shop owners?
Why Location is not important for coffee shop owners?Why Location is not important for coffee shop owners?
Why Location is not important for coffee shop owners?
 
How to get more sales for your coffee
How to get more sales for your coffeeHow to get more sales for your coffee
How to get more sales for your coffee
 

Ähnlich wie Oracle workshop sessiontracing

Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Informatik Aktuell
 
Oracle 11g - Neuerungen im Überblick
Oracle 11g - Neuerungen im ÜberblickOracle 11g - Neuerungen im Überblick
Oracle 11g - Neuerungen im ÜberblickGFU Cyrus AG
 
Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)Ulrike Schwinn
 
Automatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloudAutomatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloudTrivadis
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sFromDual GmbH
 
What's new in SQL und PL/SQL in 12.2
What's new in SQL und PL/SQL in 12.2What's new in SQL und PL/SQL in 12.2
What's new in SQL und PL/SQL in 12.2Ulrike Schwinn
 
Oracle Text 12c New Features
Oracle Text 12c New FeaturesOracle Text 12c New Features
Oracle Text 12c New FeaturesUlrike Schwinn
 
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus Thiel
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus ThielOSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus Thiel
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus ThielNETWAYS
 
Oracle12c für Entwickler
Oracle12c für EntwicklerOracle12c für Entwickler
Oracle12c für EntwicklerCarsten Czarski
 
Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?
Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?
Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?Marc Müller
 
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?Marc Müller
 
Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)Ulrike Schwinn
 
Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln OPITZ CONSULTING Deutschland
 
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Trivadis
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Ulrike Schwinn
 
OSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebOSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebNETWAYS
 
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißReal Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißOPITZ CONSULTING Deutschland
 
Praesentation TYPO3Camp Berlin Speed mit Extbase
Praesentation TYPO3Camp Berlin Speed mit ExtbasePraesentation TYPO3Camp Berlin Speed mit Extbase
Praesentation TYPO3Camp Berlin Speed mit ExtbaseStefan Frömken
 
APEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebAPEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebNiels de Bruijn
 
Qualitätssicherung für APEX Anwendungen.pdf
Qualitätssicherung für APEX Anwendungen.pdfQualitätssicherung für APEX Anwendungen.pdf
Qualitätssicherung für APEX Anwendungen.pdfOliver Lemm
 

Ähnlich wie Oracle workshop sessiontracing (20)

Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
 
Oracle 11g - Neuerungen im Überblick
Oracle 11g - Neuerungen im ÜberblickOracle 11g - Neuerungen im Überblick
Oracle 11g - Neuerungen im Überblick
 
Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)
 
Automatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloudAutomatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloud
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA's
 
What's new in SQL und PL/SQL in 12.2
What's new in SQL und PL/SQL in 12.2What's new in SQL und PL/SQL in 12.2
What's new in SQL und PL/SQL in 12.2
 
Oracle Text 12c New Features
Oracle Text 12c New FeaturesOracle Text 12c New Features
Oracle Text 12c New Features
 
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus Thiel
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus ThielOSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus Thiel
OSMC 2008 | Monitoring von Messaging Systemen mit Nagios by Markus Thiel
 
Oracle12c für Entwickler
Oracle12c für EntwicklerOracle12c für Entwickler
Oracle12c für Entwickler
 
Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?
Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?
Karlsruher Entwicklertag 2016 - Monitoring 2.0: Alles im Lot?
 
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
 
Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)
 
Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln
 
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
 
OSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebOSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
 
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißReal Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
 
Praesentation TYPO3Camp Berlin Speed mit Extbase
Praesentation TYPO3Camp Berlin Speed mit ExtbasePraesentation TYPO3Camp Berlin Speed mit Extbase
Praesentation TYPO3Camp Berlin Speed mit Extbase
 
APEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebAPEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & Betrieb
 
Qualitätssicherung für APEX Anwendungen.pdf
Qualitätssicherung für APEX Anwendungen.pdfQualitätssicherung für APEX Anwendungen.pdf
Qualitätssicherung für APEX Anwendungen.pdf
 

Oracle workshop sessiontracing

  • 1. Oracle Workshop I Session Tracing H. Ciganek 03.08.2007 1 Agenda • Tracing • Tracing in eigener und fremder Session • Tracing in der Webanwendung (mehrere Session) • Diagnostisches Ereignis + Levels für Tracing • Trace Analyzer (TRCANLZR) 03.08.2007 Oracle Workshop - Session Tracing 2 1
  • 2. Tracing - Definition Tracing Ablaufverfolgung zur (Performance-) Analyse oder Fehlersuche Oracle SQL Tracing • Identifikation der Top SQL Abfragen • Explain Plan • Call summary (parse, execute, fetch) • I/O für Objekte • Werte für Bind Variables • CBO Statistiken • Hot Blocks • Wait Events • Latches 03.08.2007 Oracle Workshop - Session Tracing 3 Tracing – gängige Befehle (set autotrace on) alter system|session set sql_trace=true; exec dbms_session.set_sql_trace(true); exec dbms_support.start_trace_in_session (sid, serial#); exec dbms_system.set_sql_trace_in_session (sid, serial#, sql_trace); exec dbms_monitor.session_trace_enable (session_id, serial#, waits, binds); exec dbms_monitor.client_id_trace_enable (client_id, waits, binds); Neu bei 10gR2 exec dbms_monitor.SERV_MOD_ACT_TRACE_ENABLE(SERVICE_NAME, MODULE_NAME, ACTION_NAME, WAITS, BINDS, INSTANCE_NAME); Trace-Datei Server Verzeichnis Parameter USER_DUMP_DEST 03.08.2007 Oracle Workshop - Session Tracing 4 2
  • 3. Tracing in eigener Session Metalink Note: 376442.1 -- 1. Einstellungen --------------------------- alter session set timed_statistics = true; alter session set statistics_level = all; alter session set max_dump_file_size = unlimited; -- 2. Tracing starten -------------------------- alter session set events '10046 trace name context forever,level 12'; -- 3. Trace-File Name abfragen ----------------- oradebug setmypid oradebug tracefile_name -- 4. >> Hier Abfragen zum Tracen absetzen ------ Select * from ...... -- 5. Tracing beenden --------------------------- alter session set events '10046 trace name context off'; -- 6. Traceanalyzer starten --------------------- 03.08.2007 Oracle Workshop - Session Tracing 5 Tracing in fremder Session Metalink Note: 1058210.6 -- 1. Einstellungen ------------------------------------------------------ alter system set timed_statistics = true SCOPE=BOTH; alter system set statistics_level = all SCOPE=BOTH; alter system set max_dump_file_size = unlimited SCOPE=BOTH; --2. Processe abfragen --------------------------------------------------- select s.paddr,s.username, p.pid,p.spid from v$session s, v$process p where s.paddr=p.addr and s.username = 'TEST1'; /* PADDR USERNAME PID SPID ---------------- ------------------------------ ---------- ------------ 000007FF8F2E05C8 TEST1 15 7176 */ -- 3a. Process einbinden mit Oracle Prozess Id --------------------------- oradebug setorapid &PID -- 3b. Process einbinden mit Betriebsystem Prozess Id -------------------- oradebug setospid &SPID -- 4. Tracing starten ---------------------------------------------------- oradebug event 10046 trace name context forever, level 12 -- 5. Trace-File Name abfragen ------------------------------------------- oradebug tracefile_name -- 6. >> Hier die Anwendung oder Maske in der fremder Session benutzen --- -- 7. Tracing ausschalten ------------------------------------------------ oradebug event 10046 trace name context off -- 8. Traceanalyzer starten ---------------------------------------------- 03.08.2007 Oracle Workshop - Session Tracing 6 3
  • 4. Webanwendung Tracing – Teil 1 Metalink Note: kein -- 0. Vorbereitung --------------------------------------------------------- -- 0.A – Neuen Oracle Service extra für Tracing erstellen -> alter system set service_names='INTDEV05.int.lidl.net','TRACE_INTDEV05.int.lidl.net' SCOPE=BOTH; -- 0.B – Extra Eintrag mit neuem Service in TNSNAMES.ORA -- 0.C – Zusätzliche Konfiguration des AppServer für neuen Service -- 0.D – UDUMP täglich entleeren dbms_scheduler -- 1. Einstellungen -------------------------------------------------------- alter system set timed_statistics = true SCOPE=BOTH; alter system set statistics_level = all SCOPE=BOTH; alter system set max_dump_file_size = unlimited SCOPE=BOTH; -- 2. Tracing starten ------------------------------------------------------ exec dbms_monitor.SERV_MOD_ACT_TRACE_ENABLE ('TRACE_INTDEV05.int.lidl.net', BINDS => TRUE); -- 3. Tracing abfragen ----------------------------------------------------- select * from DBA_ENABLED_TRACES ; 03.08.2007 Oracle Workshop - Session Tracing 7 Webanwendung Tracing – Teil 2 -- 3. >> Hier die Webanwendung benutzen ------------------------------------- .......... -- 4. Optional Tracing ausschalten ------------------------------------------ --Exec dbms_monitor.SERV_MOD_ACT_TRACE_DISABLE ('TRACE_INTDEV05.int.lidl.net'); -- Metalink Note: 280543.1 -- 5. Tracefiles Mergen --- >> dbms_scheduler ------------------------------- host trcsess output=test1.trc service=TRACE_INTDEV05.int.lidl.net *.trc -- 6. Traceanalyzer starten ------------------------------------------------- 03.08.2007 Oracle Workshop - Session Tracing 8 4
  • 5. Event 10046 Metalink Note: 21154.1 Event 10046 = diagnostisches Ereignis für SQL_TRACE Aktionen Levels: • Level 1 = default - alle Aktivitäten bis Trace Session ist gestoppt • Äquivalent zu: alter session set sql_trace=true; • Level 4 = Level 1 + Werte für bind Variables • Level 8 = Level 1 + Wait Events • Level 12 = Level 4 + Level 8 Syntax: alter session set events '10046 trace name context forever, level 12'; oder Exec dbms_support.start_trace_in_session(sid, serial#, waits, binds); .... 03.08.2007 Oracle Workshop - Session Tracing 9 Trace Analyzer - TRCANLZR Note: 224270.1 Das Tool für Bereitstellung und Interpretation der Trace-Files Ablauf: • Auslesen der SQL Trace-Dateien generiert von EVENT 10046 mit Level 1, 4, 8, oder 12 • Parsen der Trace-Datei - Auswählen, Verarbeiten, and Speichern der relevanten Informationen ins Staging Repository • Erstellug des HTML-Reports lokal ähnlich wie mit TKPROF oder TRCSUMMARY 03.08.2007 Oracle Workshop - Session Tracing 10 5
  • 6. Trace Analyzer Handhabung 1. Report wird auf dem Server generiert sqlplus <usr>/<pwd> exec trca$i.trace_analyzer('<Trace Dateiname>'); 2. Report wird lokal beim Entwickler generiert sqlplus <usr>/<pwd> Start trcanlzr.sql <Trace Dateiname>; Beispiel: start trcanlzr.sql test1.trc ...generating report Abgelaufen: 00:00:00.09 Trace Analyzer Report "trcanlzr_0_43.html" has been created in F:ORACLEADMININTDEV05UDUMP Abgelaufen: 00:00:20.76 Abgelaufen: 00:00:00.37 ...copying report ...report "trcanlzr_0_43.html" has been copied into local directory ...exiting now (hit enter key) 03.08.2007 Oracle Workshop - Session Tracing 11 Trace Analyzer Report 03.08.2007 Oracle Workshop - Session Tracing 12 6
  • 7. Trace Analyzer Objekte TABLES TRCA$_TRACE, TRCA$_AUDIT_ACTIONS TRCA$_IDLE_EVENT, TRCA$_CALL_SUMMARY TRCA$_WAIT, TRCA$_BIND TRCA$_ERROR, TRCA$_GAP TRCA$_XCTEND, TRCA$_STAT TRCA$_CALL, TRCA$_CURSOR TRCA$_TABLES, TRCA$_CURSOR_TABLES TRCA$_PLAN_TABLE, TRCA$_EXEC_SUMMARY TRCA$_WAIT_SUMMARY, TRCA$_STAT_SUMMARY TRCA$_HOT_BLOCK, TRCA$_CURSOR_WAIT_LATCH TRCA$_EXTENTS, TRCA$_IND_PARTITIONS TRCA$_TAB_PARTITIONS, TRCA$_INDEXES TRCA$_CURSOR_WAIT_SEGMENT PACKAGES TRCA$D – Hauptpaket TRCA$I – Explain plans, segment statistics VIEW TRCA$_CURSOR_V 03.08.2007 Oracle Workshop - Session Tracing 13 Installation TRCANLZR cmd installTRCA INTDEV05 ABLAUF ----------------------------------------------------------------------------------------------------------- new 2: DATAFILE 'H:ORACLEORADATAINTDEV05TRCA01.dbf' Tablespace created. Specify TRCANLZR password Enter value for trcanlzr_password: test Specify Host String including @ prefix (i.e.: @CERBDEV) Enter value for host_string: @INTDEV05 Below are the list of online tablespaces in this database. Decide which tablespace you wish to create the Trace Analyzer tables and indexes. TABLESPACE_NAME CONTENTS ------------------------------ --------- TEMP TEMPORARY TRCA PERMANENT Specify TRCANLZR user's default tablespace Enter value for default_tablespace: TRCA Specify TRCANLZR user's temporary tablespace. Enter value for temporary_tablespace: TEMP 03.08.2007 Oracle Workshop - Session Tracing 14 7
  • 8. Deinstallation TRCANLZR cmd deinstallTRCA INTDEV05 03.08.2007 Oracle Workshop - Session Tracing 15 8