Professional Documents
Culture Documents
dat -u 1 5
find / -name *.aud -mtime +1 -exec rm {} ;
Dear Customer
None of the Processes consuming CPU resources and idle %,load average are lookin
g good.
There are no issues found. Alert should clear during next EM collection. No acti
on required. Placing under 'Solution Offered' and awaiting for EM to clear.
@SO,
Thanks,
Jayender.
None of the processes consuming high cpu and average idle% is good,
waiting for EM to close the SR.
To check Active Blockout List.
==============================,
/usr/local/git/bin/em-blackout-cmd -o list
To find Top 10 CPU consuming processes
=======================================
ps -eo pid,user,cpu,%cpu,s,comm,time | sort -nrk 4 | head -10
ps -e -o pcpu -o pid -o user -o args | sort -k 1 | tail
Grouping OS users for identifying most impacted user
===================================================
ps -ef|awk '{print $1 }'|sort|uniq -c |sort
Please, check for defunct processes.
ps -ef | grep defunct
ps -efl|egrep 28154
select USER_NAME,EMAIL_ADDRESS from apps.fnd_user where USER_NAME='UNICENTER';
select piece,sql_text from v$sqltext where HASH_VALUE = &hash and ADDRESS ='&add
r' order by piece;
select process,status,count(1) from gv$session where process='20497' group by p
rocess,status
select sid,serial#,module from v$session where process='20497' and status='INAC
TIVE';
select home_url from apps.icx_parameters;(To clear cocurrent request from frunt
end)
========================================================
You can select the top process using the following criteria, process that is con
suming more than 80% of CPU and you can run the command below
- to see since when this processes are running and the accumulative CPU TIME in
mmmm:ss (minutes:seconds).
ps aux |grep -E "PID|9281|9494|5829|6299|8075|20437|23891|24774|24807|24874|2509
6|25979|30277|31584"|grep -v grep
ps aux |grep -E "PID|13661|4182|16590|14525|14781|12466|32325|16325|18297|28026|
26990|27870|28388|7892|16519|15340|13917|15196"|grep -v grep
select USER_NAME,EMAIL_ADDRESS from apps.fnd_user where USER_NAME='SDENDUKURI';
Must followed
==============
set head off
set verify off
set echo off
set pages 1500
set linesize 100
set lines 120
prompt
prompt Details of SID / SPID / Client PID
prompt ==================================
select /*+ CHOOSE*/
'Session Id.............................................: '||s.sid,
'Serial Num..............................................: '||s.serial#,
'User Name ..............................................: '||s.username,
'Session Status .........................................: '||s.status,
'Client Process Id on Client Machine ....................: '||'*'||s.process||'*
' Client,
'Server Process ID ......................................: '||p.spid Server,
'Sql_Address ............................................: '||s.sql_address,
'Sql_hash_value .........................................: '||s.sql_hash_value,
'Schema Name ..... ......................................: '||s.SCHEMANAME,
'Program ...............................................: '||s.program,
'Module .................................................: '|| s.module,
'Wait Event ........................................ ...: '||w.EVENT,
'Action .................................................: '||s.action,
'Terminal ...............................................: '||s.terminal,
'Client Machine .........................................: '||s.machine,
'CLIENT_IDENTIFIER ......................................: '||s.CLIENT_IDENTIFIE
R,
'LAST_CALL_ET ...........................................: '||s.last_call_et,
'S.LAST_CALL_ET/3600 ....................................: '||s.last_call_et/360
0
from v$session s, v$process p, v$session_wait w
where p.addr=s.paddr and
s.sid=nvl('&sid',s.sid) and
p.spid=nvl('&spid',p.spid) and
nvl(s.process,-1) = nvl('&ClientPid',nvl(s.process,-1)) and
s.sid=w.sid;
=========================================================================
cpu with sql text Lokesh Query
===============================
set head off
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++
common query
=================
set head off
set verify off
set echo off
set pages 1500
set linesize 100
set lines 120
prompt
'||'*'||s.pro
'||p.spid Ser
'||s.sql_addr
'||s.sql_hash
'||(select NA
'||s.SCHEMANA
'||s.program,
'|| s.module,
'||s.action,
'||s.terminal
'||s.machine,
'||w.EVENT,
'||s.last_cal
'||s.last_cal
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++
Lokesh Given Session Details with Name of the Owner of the session
==================================================================
set head off
set verify off
set echo off
set pages 1500
set linesize 100
set lines 120
prompt
prompt Details of SID / SPID / Client PID
prompt ==================================
select /*+ CHOOSE*/
'Session Id.............................................: '||s.sid,
'Serial Num..............................................: '||s.serial#,
'User Name ..............................................: '||s.username,
pid,
f60webmx,
sid,
serial#;
,cd /ptsadmin/common/OHSMON
if no output from script..
------------------------------------------------=================================
use in case of form session-o/f60webx
================================
col program for a15
col machine for a15
col terminal for a15
col sid for 9999
col serial# for 9999999
col action for a40
set lines 152
select s.sid,
s.serial#,
'*'||s.process||'*' Client,
p.spid Server,
s.sql_address,
s.sql_hash_value,
s.username,
s.program || s.module,
s.action,
s.terminal,
s.machine,
s.status,
--s.last_call_et
s.last_call_et/3600
from gv$session s, gv$process p
where p.addr=s.paddr and
s.sid=nvl('&sid',s.sid) and
p.spid=nvl('&spid',p.spid) and
nvl(s.process,-1) = nvl('&ClientPid',nvl(s.process,-1));
Siebel check
=============
s.sid=nvl('&sid',s.sid) and
p.spid=nvl('&spid',p.spid) and
nvl(s.process,-1) = nvl('&ClientPid',nvl(s.process,-1)) and
s.sid=w.sid;
For RAC
------========
set head off
set verify off
set echo off
set pages 1500
set linesize 100
set lines 120
prompt
prompt Details of SID / SPID / Client PID
prompt ==================================
select /*+ CHOOSE*/
'Session Id.............................................: '||s.sid,
'Serial Num..............................................: '||s.serial#,
'User Name ..............................................: '||s.username,
'Session Status .........................................: '||s.status,
'Instance_ID ............................................: '||s.INST_ID,
'Client Process Id on Client Machine ....................: '||'*'||s.process||'*
' Client,
'Server Process ID ......................................: '||p.spid Server,
'Sql_Address ............................................: '||s.sql_address,
'Sql_hash_value .........................................: '||s.sql_hash_value,
'Schema Name ..... ......................................: '||s.SCHEMANAME,
'Program ...............................................: '||s.program,
'Module .................................................: '|| s.module,
'Action .................................................: '||s.action,
'Terminal ...............................................: '||s.terminal,
'Client Machine .........................................: '||s.machine,
'LAST_CALL_ET (Seconds in wait) .........................: '||s.last_call_et,
'S.LAST_CALL_ET/3600 ....................................: '||s.last_call_et/360
0,
'Wait EVENT is ..........................................: '||w.EVENT,
'P1 Value is ............................................: '||w.P1,
'P2 Valse is ............................................:' ||w.P2,
'Wait Time is ...........................................:' ||w.WAIT_TIME,
'Wait State is ..........................................:' ||w.STATE,
'SQL text is ............................................: '||t.sql_text
from gv$session s, gv$process p,gv$sqlarea t,gv$session_wait w
where p.addr=s.paddr and
p.INST_ID=s.INST_ID and
s.sid=nvl('&sid',s.sid) and
p.spid=nvl('&spid',p.spid) and
s.sql_address =t.address and
s.INST_ID=t.INST_ID and
s.sql_hash_value =t.hash_value and
s.INST_ID=w.INST_ID and
w.sid=s.sid and
nvl(s.process,-1) = nvl('&ClientPid',nvl(s.process,-1));
============================================================================
For cpu utilization : If idle % is 0 or very less.. check with below query
===========================================================================
DISK I/0'S
==========
set lines 300
prompt SESSIONS PERFORMING HIGH I/O > 50000
select p.spid, s.sid,s.process cli_process, s.status,t.disk_reads, s.last_call_e
t/3600 last_call_et_Hrs,
s.action,s.program,lpad(t.sql_text,30) "Last SQL"
from v$session s, v$sqlarea t,v$process p
where s.sql_address =t.address and
s.sql_hash_value =t.hash_value and
p.addr=s.paddr and
t.disk_reads > 10000
order by t.disk_reads desc;
check the proceses which are dispayed by this and act accordingly
=============================================================
set head off
set verify off
set echo off
set pages 1500
set linesize 100
set lines 120
prompt
prompt Details of SID / SPID / Client PID
prompt ==================================
select /*+ CHOOSE*/
'Session Id.............................................: '||s.sid,
'Serial Num..............................................: '||s.serial#,
'User Name ..............................................: '||s.username
,
'Session Status .........................................:
'Client Process Id on Client Machine ....................:
cess||'*' Client,
'Server Process ID ......................................:
ver,
'Sql_Address ............................................:
ess,
'Sql_hash_value .........................................:
_value,
'Action Performed by Session.............................:
ME from AUDIT_ACTIONS where ACTION=s.command),
'Schema Name ..... ......................................:
ME,
'||s.status,
'||'*'||s.pro
'||p.spid Ser
'||s.sql_addr
'||s.sql_hash
'||(select NA
'||s.SCHEMANA
'Program ...............................................:
'Module .................................................:
'Action .................................................:
'Terminal ...............................................:
'||s.program,
'||s.module,
'||s.action,
'||s.terminal
,
'Client Machine .........................................: '||s.machine,
'LAST_CALL_ET ...........................................: '||s.last_cal
l_et,
'S.LAST_CALL_ET/3600 ....................................: '||s.last_cal
l_et/3600
from gv$session s, gv$process p
where p.addr=s.paddr and
s.sid=nvl('&sid',s.sid) and
p.spid=nvl('&spid',p.spid) and
nvl(s.process,-1) = nvl('&ClientPid',nvl(s.process,-1));
blockin sid
or,job spid
apps client pid
ty || chr(10) ||
'Program................................: ' || Fcp.User_C
oncurrent_Program_Name || chr(10) ||
'Time so far ...........................: ' ||trunc((sysd
ate-Fcr.actual_start_date)*24*60,2)||' min'|| chr(10) ||
'Avg execution time in 30 days.........: ' || trunc(AVG_T
IME,2) ||' min' || chr(10) ||
'Max execution time in 30 days..........: ' || trunc(MAX_
TIME,2) ||' min' || chr(10) ||
'Fastest execution Time in 30 days......: ' ||trunc( MIN_
TIME,2) || ' min' || chr(10) ||
'Number of executions in last 30 days...: ' ||occurance |
| chr(10) ||
'ClientPID..............................: ' || Fcr.OS_PRO
CESS_ID || chr(10) ||
'ServerPID..............................: ' || Fcr.ORACLE
_PROCESS_ID || chr(10) ||
'Arguments passed to the program .......: ' ||Fcr.argumen
t_text
from apps.Fnd_Concurrent_Requests Fcr,
apps.Fnd_Concurrent_Programs_vl Fcp,
apps.Fnd_Oracle_Userid O,
apps.Fnd_Concurrent_Processes P,
apps.Fnd_Concurrent_Queues_vl Q,
apps.Fnd_User,(select
concurrent_program_id
,count(concurrent_program_id) occurance
,min(actual_completion_date-actual_start_date)*24*60 MIN_TIME
,max(actual_completion_date-actual_start_date)*24*60 MAX_TIME
, avg(actual_completion_date-actual_start_date)*24*60 AVG_TIME
from apps.fnd_concurrent_requests
where status_code='C' and phase_code='C'and trunc(actual_start_date)>
trunc(sysdate-30)
group by concurrent_program_id
having max(actual_completion_date-actual_start_date)*24*60
>5) CREQ
where Controlling_Manager = Concurrent_Process_ID
And ( P.Concurrent_Queue_ID = Q.Concurrent_Queue_ID AND
P.Queue_Application_ID = Q.Application_ID )
And O.Oracle_Id = Fcr.Oracle_Id and Fcr.ORACLE_PROCESS_ID i
n ('&Server_PID')
And ( Fcr.Program_Application_Id = Fcp.Application_Id
And Fcr.Concurrent_Program_Id = Fcp.Concurrent_Program_Id )
And Requested_By = User_Id
And Phase_Code = 'R' and status_code in ('R','T')
--adding joins with new
and Fcr.Concurrent_Program_Id=CREQ.Concurrent_Program_Id(+)
Order By Q.User_Concurrent_Queue_Name,q.node_name, Actual_Start_Date, Reque
st_Id;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*********************************************************************
CHEXK MAX EXEC TIME IN CASE OF CONC. REQT (from: Subbu )
*******************************************************************
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
set head off
set verify off
set echo off
set pages 1500
set linesize 132
break on row skip 1
prompt Checking for Concurrent program details run by this process id
prompt **************************************************************
prompt
prompt
D
And ( P.Concurrent_Queue_ID = Q.Concurrent_Queu
e_ID AND
P.Queue_Application_ID = Q.Application_ID )
And O.Oracle_Id = Fcr.Oracle_Id and Fcr.ORACLE
_PROCESS_ID in ('&Server_PID')
And ( Fcr.Program_Application_Id = Fcp.Applicati
on_Id
And
Fcr.Concurrent_Program_Id = Fcp.Concurren
t_Program_Id )
And Requested_By = User_Id
And Phase_Code = 'R' and status_code in ('R','T'
)
--adding joins with new
and Fcr.Concurrent_Program_Id=CREQ.Concurrent_Pr
ogram_Id(+)
Order By
Request_Id;
Q.User_Concurrent_Queue_Name,q.node_name, Actual_Start_Date,
Rem Check the related Query and rows being processed by the session involved
Rem ===================================================================
=====
select b.sql_text,a.sid,a.serial#, b.users_executing, b.rows_processed
"ROWS",a.last_call_et/3600 Hrs
from
v$sqlarea b,v$session a
where a.sid=&entersid and a.sql_address=b.address;
RMAN Details
==============
select sid,serial#,context,sofar,totalwork,round(sofar/totalwork*100,2) "%_COMP
LETE"
from v$session_longops
where opname like'%RMAN%' and opname not like '%aggregate%' and totalwork != 0
and sofar <> totalwork;
*****************************
==============================================================
Customer given : Restaurantes Toks SA De CV
********************************************
===================================================================
$ pbrun ohsdba
u sb<sid>
I.
Run the server manager command below to identify the process that is con
suming CPU
$ cd 81/siebsrvr
$ . ./siebenv.sh
if no output
============
cd /dsvmr2/siebel/81/siebsrvr/enterprises/dsvmr2/vmsodsvmr002/log
cd /tqnts2/siebel/81/siebsrvr/enterprises/tqnts2/ausodqnts16/log
ls dsvmr2.vmsodsvmr002.log
ls dore22.vmsodorex006.log
vi dsvmr2.vmsodsvmr002.log
?pid and enter
or
grep pid dsvmr2.vmsodsvmr002.log -> will show the
ServerLog
ProcessCreate 1
0000483f4f5d1856:0
:24
Created multithreaded server process (OS pid = 6768
dRcvr
2012-03-12 04:37
) for CommInboun