Scheduler job'larının çalışma geçmişini ve hatalarını izle
OracleSchedulerKomut
-- 1) Son calismalar: sure, CPU, hata kodu ve mesaji
SELECT owner, job_name, status, error#,
TO_CHAR(actual_start_date,'YYYY-MM-DD HH24:MI:SS') AS started,
run_duration, cpu_used,
SUBSTR(additional_info, 1, 200) AS info
FROM dba_scheduler_job_run_details
WHERE owner = 'MUSTERI_APP'
ORDER BY actual_start_date DESC
FETCH FIRST 20 ROWS ONLY;
-- 2) Son 24 saatte basarisiz olanlar (tum DB):
SELECT owner, job_name, error#, actual_start_date, SUBSTR(errors, 1, 300) AS errors
FROM dba_scheduler_job_run_details
WHERE status <> 'SUCCEEDED'
AND log_date > SYSTIMESTAMP - INTERVAL '1' DAY
ORDER BY log_date DESC;
-- 3) Su an calisanlar:
SELECT owner, job_name, session_id, running_instance, elapsed_time, cpu_used
FROM dba_scheduler_running_jobs;
-- 4) Yasam dongusu olaylari (ENABLE/DISABLE/RUN/STOP...):
SELECT log_date, owner, job_name, operation, status
FROM dba_scheduler_job_log
WHERE owner = 'MUSTERI_APP'
ORDER BY log_date DESC
FETCH FIRST 20 ROWS ONLY;
-- Log saklama suresi (gun): EXEC DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE('log_history', '30');Ne yapar?
Scheduler log view'larından her çalışmanın başlangıç zamanını, süresini, CPU kullanımını, durumunu ve hata mesajını; çalışan job'ları ve job yaşam döngüsü olaylarını listeler.
Ne zaman kullanılır?
Gece işi çalışmadı/uzun sürdü şikayetinde, job'ların SLA takibinde, izleme sistemine (OEM/Zabbix/Prometheus) hata kuralı tanımlarken.
Dikkat
Salt okunur; lisans gerektirmez. Varsayılan log saklama 30 gündür ve logging_level OFF olan job'lar kayıt üretmez. ERRORS kolonu 12c+ ile gelir; eski sürümlerde ADDITIONAL_INFO'ya bak. RAC'ta RUNNING_INSTANCE işin hangi node'da koştuğunu gösterir.