현 시점 기준 31일 전까지 유의미한 ALERT LOG 조회
WITH VW_MSG_TYPE AS (
SELECT 1 MESSAGE_TYPE , 'UNKNOWN' TYPE_NAME FROM DUAL
UNION ALL
SELECT 2 MESSAGE_TYPE , 'INCIDDENT_ERROR' TYPE_NAME FROM DUAL
UNION ALL
SELECT 3 MESSAGE_TYPE , 'ERROR' TYPE_NAME FROM DUAL
UNION ALL
SELECT 4 MESSAGE_TYPE , 'WARNING' TYPE_NAME FROM DUAL
UNION ALL
SELECT 5 MESSAGE_TYPE , 'NOTIFICATION(정상적 알림)' TYPE_NAME FROM DUAL
UNION ALL
SELECT 6 MESSAGE_TYPE , 'TRACE' TYPE_NAME FROM DUAL
)
, VW_MSG_LEVEL AS (
SELECT 1 MESSAGE_LEVEL , 'CRITICAL (긴급)' LEVEL_NAME FROM DUAL
UNION ALL
SELECT 2 MESSAGE_LEVEL , 'SEVERE (심각)' LEVEL_NAME FROM DUAL
UNION ALL
SELECT 3 MESSAGE_LEVEL , 'IMPORTANT (중요)' LEVEL_NAME FROM DUAL
UNION ALL
SELECT 16 MESSAGE_LEVEL, 'NORMAL' LEVEL_NAME FROM DUAL
)
SELECT 'PIGWDB' AS DB_NAME -- DB명
, TO_CHAR(ORIGINATING_TIMESTAMP,'YYYYMMDD HH24:MI:SS') AS ORIG_TIMESTAMP
, A.MESSAGE_TYPE
, B.TYPE_NAME
, A.MESSAGE_LEVEL
, C.LEVEL_NAME
, A.PROBLEM_KEY
, A.MESSAGE_TEXT
FROM V$DIAG_ALERT_EXT A
, VW_MSG_TYPE B
, VW_MSG_LEVEL C
WHERE A.MESSAGE_TYPE = B.MESSAGE_TYPE (+)
AND A.MESSAGE_LEVEL = C.MESSAGE_LEVEL(+)
AND C.MESSAGE_LEVEL IN (1,2,3) -- NORMAL 빼고
AND A.ORIGINATING_TIMESTAMP >= SYSDATE - 31
ORDER BY ORIGINATING_TIMESTAMP DESC;
'새싹 DBA > Scripts' 카테고리의 다른 글
[오라클] 유저 패스워드 조회 (0) | 2024.12.30 |
---|---|
[오라클] 실제 테이블 row 수를 count 하는 테이블 생성 (0) | 2024.11.25 |
[오라클] 파티션 테이블 테이블스페이스 변경, 인덱스 리빌드 (0) | 2024.10.11 |
[오라클] undo tablespace 관리 (0) | 2024.10.07 |
[오라클] 인덱스 PK 재생성 (0) | 2024.09.13 |