Monday, December 2, 2013

Useful monitoring scripts


DECLARE
V_USER VARCHAR2(200);
V_INSTANCE VARCHAR2(200);
V_MACHINE   VARCHAR2(200);
V_TERMINAL    VARCHAR2(200);
V_PROGRAM   VARCHAR2(200);
CURSOR SES_CU
      IS
SELECT USERNAME,
 DECODE (INST_ID, 1,'PROD1',
2,'PROD2') CONNECTED_INSTANCE,
MACHINE,
TERMINAL,
PROGRAM
 FROM GV$SESSION
 WHERE MACHINE NOT IN('OR-21','OR-22','MYDOMAIN\OR-21','MYDOMAIN\OR-22');
----**************----
BEGIN
    OPEN SES_CU;
LOOP
    FETCH SES_CU INTO  V_USER,V_INSTANCE,V_MACHINE,V_TERMINAL,V_PROGRAM;
    EXIT WHEN SES_CU%NOTFOUND;
    DBMS_OUTPUT.PUT_LINE(' User ' || V_USER || ' is current connected to node -- ' ||  V_INSTANCE || ' from machine (' ||   V_MACHINE || ') using program ' || V_PROGRAM  );
END LOOP;
END;


-------------------------------



create or replace view FARHAT.INSTANCE_MON AS
SELECT USERNAME,
 DECODE (INST_ID, 1,'PROD1',
2,'PROD2') CONNECTED_INSTANCE,
CASE  WHEN MACHINE  like 'MYDOMAIN%' THEN 'MYDOMAIN'
WHEN MACHINE like 'WORK%' THEN 'WORKGROUP'
         ELSE 'UnKnown'
         END DOMAIN,
TERMINAL,
PROGRAM
FROM GV$SESSION
WHERE MACHINE NOT IN('OR-21','OR-22','MYDOMAIN\OR-21','MYDOMAIN\OR-22');






No comments:

Post a Comment