24 June 2008

Trace for a specific user in Oracle APPS

Oracle Applications Trace for a specific user. This describes the method for running a trace for a specific user in Oracle application. The Oracle Applications modules impacted are the JTF Framework packages like iSupport, iSupplier etc. This method enables us to trace self service applications and debug user specific error logging issues.
How to create a Database Trace for a specific user.
This is to explain how to to create a database trace for a specific user. This process can be used to trace any action, anywhere in Oracle Applications and be very useful for the Self-Service Web Applications as there is no utility defined like in the Forms.
a. First make sure the necessary profile has the proper permissions. 1. Log onto the Applications Forms with the Application Developer Responsibility 2. Navigate to the Profile menu 3. Query up the profile name "FND_INIT_SQL" 4. In the bottom block of the form, make sure that ALL checkboxes are checked
Typically, you will have to enable the checkboxes under "User Access" to make it "Visible" and "Updatable".
b. Now switch to the System Administrator Responsibility
1. Navigate to - Profile - System 2. On the "Find System Profile Values" form, make sure the checkboxes for "User" and "Profiles with no Values" are checked 3. Beside the "User" checkbox, use the LOV to select the user who's activity you need to trace 4. In the "Profile" field, enter the following profile and click the button: 'Initialization SQL Statement - Custom' 5. In the "System Profile Values" form, enter the following in the User Field: (This is one line and all single quotes)
begin fnd_ctl.fnd_sess_ctl('','','TRUE','TRUE','LOG','ALTER SESSION SET EVENTS=''10046 TRACE NAME CONTEXT FOREVER, LEVEL 12'' tracefile_identifier=''OracleSupport'''); end;
6. DO NOT SAVE THE PROFILE YET
7. In another browser window, login as the user you are going to trace and prepare to reproduce the problem 8. Once you are ready to reproduce the problem, go back to the Applications Forms and Save the profile change 9. Reproduce the problem 10. Back in the Applications form, set profile to null so it does not trace anymore and Save the change 11. The trace will be located in the user_dump_dest. To find location run the following in SQL*Plus: select value from v$parameter where name = 'user_dump_dest'; 12. The trace file will have current date/time and can be identified with the word OracleSupport in it.

No comments: