Oracle ログの確認方法 (plsql)
PL/SQLでは、次の方法でOracleログを確認できます。
- DBMS_OUTPUT
- 行を追加
BEGIN
DBMS_OUTPUT.PUT_LINE('This is a log message.');
END;
- UTL_FILE
- 改行を入れる
DECLARE
log_file UTL_FILE.FILE_TYPE;
BEGIN
log_file := UTL_FILE.FOPEN('LOG_DIRECTORY', 'log_file.log', 'W');
UTL_FILE.PUT_LINE(log_file, 'This is a log message.');
UTL_FILE.FCLOSE(log_file);
EXCEPTION
WHEN UTL_FILE.INVALID_PATH OR UTL_FILE.INVALID_FILEHANDLE THEN
DBMS_OUTPUT.PUT_LINE('Failed to open or close the log file.');
END;
- ネイティブ
- イベント
- V$DIAG_TRACE_FILE_CONTENTS
ALTER SESSION SET EVENTS 'TRACE[SQL_TRACE] LEVEL 12';
これにより SQL トレースが有効になり、ログ情報はトレースファイルに書き込まれます。
- DBMS モニタ
BEGIN
DBMS_MONITOR.SESSION_TRACE_ENABLE(session_id => 123, serial_num => 456, waits => TRUE, binds => TRUE);
END;
指定されたセッションのSQLトレースを有効にします。
Oracle ログを表示するには、EXECUTE 権限や INSERT 権限など、適切な権限が必要です。