Alert log ve trace dosyalarına özel mesajlar yazdırma

22 Ara by Ahmet Duruöz

Alert log ve trace dosyalarına özel mesajlar yazdırma

Veritabanlarınızda çalıştırdığınız prosedürler, fonksiyonlar ya da trigger gibi nesnelerin içerisinden alert log ve ya trace dosyalarına özel mesajlar yazdırabilirsiniz. Bu işlem için SYS.dbms_system paketi içerisindeki ksdwrt prosedürünü kullanabilirsiniz.

Prosedür iki parametre ile çalışmaktadır. Aşağıdaki dest ile belirtilen parametre mesajın nereye yazılacağını , msg parametresi de yazılacak mesaj içeriğini berlitmektedir.

dbms_system.ksdwrt(dest IN BINARY_INTEGER,msg IN VARCHAR2);

dest parametresi için olası değerler aşağıdaki gibidir :

  • – 1 : mesaj sadece varsayılan trace dosyasına yazılır.
  • – 2 : mesaj sadece alert log dosyasına yazılır.
  • – 3 : mesaj hem trace hem de alert log dosyasına yazılır.

SYS haricinde bir kullanıcı ile çalıştırılacak ise paket için execute ayrıcalığı verilmelidir.

SQL> grant execute on dbms_system to aduruoz;

Grant succeeded.

Örnek :

exec sys.dbms_system.ksdwrt(3,sysdate||' ORA-20001: Test mesajidir, dikkate almayiniz. '||SYS_CONTEXT('USERENV', 'CURRENT_SCHEMA'));

Alert log dosyasına aşağıdaki gibi bir mesaj yazılacaktır.

Fri Dec 22 14:58:00 2023
22-DEC-23 ORA-20001: Test mesajidir, dikkate almayiniz. ADURUOZ

 

Loading

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir