Getting your bind variables back
- Get a heap dump.
- For the pipeline:
- Hook up jconsole to the instance
- select com.sun.management
- select operations
- click on dumpHeap. The dump will be local to java instance you connected to, put in a file name, and click true.
- Transfer that file back to your computer
- Open up the heap dump in Netbeans
- Go to Profile -> Load Heap Dump
- Select your heap dump
- Find your statements with OQL:
- For prepared statements use:
select {instance: sql, content: sql.sqlObject.odbc_sql.toString()} from oracle.jdbc.driver.T2CPreparedStatement sql - For callable statements (i.e. stored procedures) use:
select {instance: sql, content: sql.sqlObject.odbc_sql.toString()} from oracle.jdbc.driver.T2CCallableStatement sql
- For the prepared statements, take a look at the content. The content should be the sql you are looking for.
- You're going to have to look through the bind variables in the T2C*Statement. Usually called lastBound* or boundInt, boundLong, etc...
{"serverDuration": 48, "requestCorrelationId": "7bca7cf31d61484b"}