CREATE TABLE errlog
(
err_seq NUMBER GENERATED ALWAYS AS IDENTITY,
err_code INTEGER,
call_stack VARCHAR2 (4000),
err_message VARCHAR2 (4000),
err_backtrace VARCHAR2 (4000),
app_info VARCHAR2 (4000)
)
Table created.
CREATE OR REPLACE PROCEDURE log_error (app_info_in IN VARCHAR2)
IS
l_code INTEGER := SQLCODE;
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
INSERT INTO errlog (err_code,
call_stack,
err_message,
err_backtrace,
app_info)
VALUES (l_code,
DBMS_UTILITY.format_call_stack,
DBMS_UTILITY.format_error_stack,
DBMS_UTILITY.format_error_backtrace,
app_info_in);
COMMIT;
END;
Procedure created.
CREATE OR REPLACE PROCEDURE innermost
IS
l_divisor NUMBER := 0;
BEGIN
DBMS_OUTPUT.put_line (100 / l_divisor);
END;
Procedure created.
CREATE OR REPLACE PROCEDURE inner
IS
BEGIN
innermost;
END;
Procedure created.
CREATE OR REPLACE PROCEDURE uppermost
IS
BEGIN
inner;
EXCEPTION
WHEN OTHERS
THEN
log_error (app_info_in => 'Uppermost Handler');
END;
Procedure created.
BEGIN
uppermost;
END;
Statement processed.
SELECT *
FROM errlog
ORDER BY err_seq
ERR_SEQ | ERR_CODE | CALL_STACK | ERR_MESSAGE | ERR_BACKTRACE | APP_INFO | 1 | -1476 | ----- PL/SQL Call Stack ----- object line frame object handle number size name 0x7a4940230 1 120 anonymous block 0x5ac379fc0 6 192 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR 0x2908119c0 8 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST 0x47d10cd70 2 24 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7763356a8 1517 4872 package body LIVESQL.ORACLE_SQL_EXEC.RUN_BLOCK 0x7763356a8 1617 656 package body LIVESQL.ORACLE_SQL_EXEC.RUN_SQL 0x7763356a8 1716 464 package body LIVESQL.ORACLE_SQL_EXEC.RUN_A_STATEMENT 0x7763356a8 2042 5008 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STATEMENTS 0x7763356a8 2159 2528 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STMTS 0x79ec8c1d8 2594 3712 package body LIVESQL.ORACLE_SQL_SCHEMA.RUN_SAVED_SESSION 0x77ecd3810 361 112 package body LIVESQL.ORACLE_SQL_SCHEMA_PUB.RUN_SAVED_SESSION 0x56ea1fb98 22 1616 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7972b3fc0 2360 936 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.RUN_BLOCK5 0x7972b3fc0 1382 296 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.EXECUTE_PLSQL_CODE 0x7971a85a0 1156 200 package body APEX_180100.WWV_FLOW_EXEC_LOCAL.OPEN_PLSQL_CONTEXT 0x77ed62a58 2217 688 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x77ed62a58 2252 184 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x79ed25550 75 872 package body APEX_180100.WWV_FLOW_PROCESS_NATIVE.PLSQL 0x79ed25550 1152 4560 package body APEX_180100.WWV_FLOW_PROCESS_NATIVE.EXECUTE_PROCESS 0x79edc32a8 2451 2872 package body APEX_ | ORA-01476: divisor is equal to zero ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4 | ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST", line 4 | Uppermost Handler |
---|
TRUNCATE TABLE errlog
Table truncated.
CREATE OR REPLACE PROCEDURE innermost
IS
l_divisor NUMBER := 0;
BEGIN
DBMS_OUTPUT.put_line (100 / l_divisor);
EXCEPTION
WHEN OTHERS
THEN
log_error (
app_info_in => 'Innermost Handler - Value of divisor: ' || l_divisor);
RAISE;
END;
Procedure created.
CREATE OR REPLACE PROCEDURE inner
IS
BEGIN
innermost;
END;
Procedure created.
CREATE OR REPLACE PROCEDURE uppermost
IS
BEGIN
inner;
EXCEPTION
WHEN OTHERS
THEN
log_error (app_info_in => 'Uppermost Handler');
END;
Procedure created.
BEGIN
uppermost;
END;
Statement processed.
SELECT *
FROM errlog
ORDER BY err_seq
ERR_SEQ | ERR_CODE | CALL_STACK | ERR_MESSAGE | ERR_BACKTRACE | APP_INFO | 2 | -1476 | ----- PL/SQL Call Stack ----- object line frame object handle number size name 0x7a4940230 1 120 anonymous block 0x5ac379fc0 6 192 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR 0x19fc8fda8 9 176 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST 0x6fe7690a0 4 24 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER 0x2908119c0 4 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST 0x47d10cd70 2 24 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7763356a8 1517 4872 package body LIVESQL.ORACLE_SQL_EXEC.RUN_BLOCK 0x7763356a8 1617 656 package body LIVESQL.ORACLE_SQL_EXEC.RUN_SQL 0x7763356a8 1716 464 package body LIVESQL.ORACLE_SQL_EXEC.RUN_A_STATEMENT 0x7763356a8 2042 5008 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STATEMENTS 0x7763356a8 2159 2528 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STMTS 0x79ec8c1d8 2594 3712 package body LIVESQL.ORACLE_SQL_SCHEMA.RUN_SAVED_SESSION 0x77ecd3810 361 112 package body LIVESQL.ORACLE_SQL_SCHEMA_PUB.RUN_SAVED_SESSION 0x56ea1fb98 22 1616 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7972b3fc0 2360 936 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.RUN_BLOCK5 0x7972b3fc0 1382 296 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.EXECUTE_PLSQL_CODE 0x7971a85a0 1156 200 package body APEX_180100.WWV_FLOW_EXEC_LOCAL.OPEN_PLSQL_CONTEXT 0x77ed62a58 2217 688 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x77ed62a58 2252 184 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x79ed25550 75 872 package body APEX_180100.WWV_FLOW_PROCESS_ | ORA-01476: divisor is equal to zero | ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 | Innermost Handler - Value of divisor: 0 | 3 | -1476 | ----- PL/SQL Call Stack ----- object line frame object handle number size name 0x7a4940230 1 120 anonymous block 0x5ac379fc0 6 192 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR 0x2908119c0 8 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST 0x47d10cd70 2 24 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7763356a8 1517 4872 package body LIVESQL.ORACLE_SQL_EXEC.RUN_BLOCK 0x7763356a8 1617 656 package body LIVESQL.ORACLE_SQL_EXEC.RUN_SQL 0x7763356a8 1716 464 package body LIVESQL.ORACLE_SQL_EXEC.RUN_A_STATEMENT 0x7763356a8 2042 5008 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STATEMENTS 0x7763356a8 2159 2528 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STMTS 0x79ec8c1d8 2594 3712 package body LIVESQL.ORACLE_SQL_SCHEMA.RUN_SAVED_SESSION 0x77ecd3810 361 112 package body LIVESQL.ORACLE_SQL_SCHEMA_PUB.RUN_SAVED_SESSION 0x56ea1fb98 22 1616 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7972b3fc0 2360 936 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.RUN_BLOCK5 0x7972b3fc0 1382 296 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.EXECUTE_PLSQL_CODE 0x7971a85a0 1156 200 package body APEX_180100.WWV_FLOW_EXEC_LOCAL.OPEN_PLSQL_CONTEXT 0x77ed62a58 2217 688 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x77ed62a58 2252 184 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x79ed25550 75 872 package body APEX_180100.WWV_FLOW_PROCESS_NATIVE.PLSQL 0x79ed25550 1152 4560 package body APEX_180100.WWV_FLOW_PROCESS_NATIVE.EXECUTE_PROCESS 0x79edc32a8 2451 2872 package body APEX_ | ORA-01476: divisor is equal to zero ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 11 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4 | ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 11 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST", line 4 | Uppermost Handler |
---|
TRUNCATE TABLE errlog
Table truncated.
CREATE OR REPLACE PROCEDURE innermost
IS
l_divisor NUMBER := 0;
BEGIN
DBMS_OUTPUT.put_line (100 / l_divisor);
EXCEPTION
WHEN OTHERS
THEN
log_error (
app_info_in => 'Innermost Handler - Value of divisor: ' || l_divisor);
RAISE;
END;
Procedure created.
CREATE OR REPLACE PROCEDURE inner
IS
BEGIN
innermost;
EXCEPTION
WHEN OTHERS
THEN
log_error (app_info_in => 'Inner Handler');
RAISE;
END;
Procedure created.
CREATE OR REPLACE PROCEDURE uppermost
IS
BEGIN
inner;
EXCEPTION
WHEN OTHERS
THEN
log_error (app_info_in => 'Uppermost Handler');
END;
Procedure created.
BEGIN
uppermost;
END;
Statement processed.
SELECT *
FROM errlog
ORDER BY err_seq
ERR_SEQ | ERR_CODE | CALL_STACK | ERR_MESSAGE | ERR_BACKTRACE | APP_INFO | 4 | -1476 | ----- PL/SQL Call Stack ----- object line frame object handle number size name 0x7a4940230 1 120 anonymous block 0x5ac379fc0 6 192 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR 0x19fc8fda8 9 176 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST 0x6fe7690a0 4 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER 0x2908119c0 4 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST 0x47d10cd70 2 24 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7763356a8 1517 4872 package body LIVESQL.ORACLE_SQL_EXEC.RUN_BLOCK 0x7763356a8 1617 656 package body LIVESQL.ORACLE_SQL_EXEC.RUN_SQL 0x7763356a8 1716 464 package body LIVESQL.ORACLE_SQL_EXEC.RUN_A_STATEMENT 0x7763356a8 2042 5008 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STATEMENTS 0x7763356a8 2159 2528 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STMTS 0x79ec8c1d8 2594 3712 package body LIVESQL.ORACLE_SQL_SCHEMA.RUN_SAVED_SESSION 0x77ecd3810 361 112 package body LIVESQL.ORACLE_SQL_SCHEMA_PUB.RUN_SAVED_SESSION 0x56ea1fb98 22 1616 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7972b3fc0 2360 936 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.RUN_BLOCK5 0x7972b3fc0 1382 296 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.EXECUTE_PLSQL_CODE 0x7971a85a0 1156 200 package body APEX_180100.WWV_FLOW_EXEC_LOCAL.OPEN_PLSQL_CONTEXT 0x77ed62a58 2217 688 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x77ed62a58 2252 184 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x79ed25550 75 872 package body APEX_180100.WWV_FLOW_PROCESS_ | ORA-01476: divisor is equal to zero | ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 | Innermost Handler - Value of divisor: 0 | 5 | -1476 | ----- PL/SQL Call Stack ----- object line frame object handle number size name 0x7a4940230 1 120 anonymous block 0x5ac379fc0 6 192 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR 0x6fe7690a0 8 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER 0x2908119c0 4 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST 0x47d10cd70 2 24 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7763356a8 1517 4872 package body LIVESQL.ORACLE_SQL_EXEC.RUN_BLOCK 0x7763356a8 1617 656 package body LIVESQL.ORACLE_SQL_EXEC.RUN_SQL 0x7763356a8 1716 464 package body LIVESQL.ORACLE_SQL_EXEC.RUN_A_STATEMENT 0x7763356a8 2042 5008 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STATEMENTS 0x7763356a8 2159 2528 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STMTS 0x79ec8c1d8 2594 3712 package body LIVESQL.ORACLE_SQL_SCHEMA.RUN_SAVED_SESSION 0x77ecd3810 361 112 package body LIVESQL.ORACLE_SQL_SCHEMA_PUB.RUN_SAVED_SESSION 0x56ea1fb98 22 1616 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7972b3fc0 2360 936 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.RUN_BLOCK5 0x7972b3fc0 1382 296 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.EXECUTE_PLSQL_CODE 0x7971a85a0 1156 200 package body APEX_180100.WWV_FLOW_EXEC_LOCAL.OPEN_PLSQL_CONTEXT 0x77ed62a58 2217 688 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x77ed62a58 2252 184 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x79ed25550 75 872 package body APEX_180100.WWV_FLOW_PROCESS_NATIVE.PLSQL 0x79ed25550 1152 4560 package body APEX_180100.WWV_FLOW_PRO | ORA-01476: divisor is equal to zero ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 11 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 | ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 11 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4 | Inner Handler | 6 | -1476 | ----- PL/SQL Call Stack ----- object line frame object handle number size name 0x7a4940230 1 120 anonymous block 0x5ac379fc0 6 192 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR 0x2908119c0 8 32 procedure SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST 0x47d10cd70 2 24 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7763356a8 1517 4872 package body LIVESQL.ORACLE_SQL_EXEC.RUN_BLOCK 0x7763356a8 1617 656 package body LIVESQL.ORACLE_SQL_EXEC.RUN_SQL 0x7763356a8 1716 464 package body LIVESQL.ORACLE_SQL_EXEC.RUN_A_STATEMENT 0x7763356a8 2042 5008 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STATEMENTS 0x7763356a8 2159 2528 package body LIVESQL.ORACLE_SQL_EXEC.RUN_STMTS 0x79ec8c1d8 2594 3712 package body LIVESQL.ORACLE_SQL_SCHEMA.RUN_SAVED_SESSION 0x77ecd3810 361 112 package body LIVESQL.ORACLE_SQL_SCHEMA_PUB.RUN_SAVED_SESSION 0x56ea1fb98 22 1616 anonymous block 0x7764b2278 1721 88 package body SYS.DBMS_SQL.EXECUTE 0x7972b3fc0 2360 936 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.RUN_BLOCK5 0x7972b3fc0 1382 296 package body APEX_180100.WWV_FLOW_DYNAMIC_EXEC.EXECUTE_PLSQL_CODE 0x7971a85a0 1156 200 package body APEX_180100.WWV_FLOW_EXEC_LOCAL.OPEN_PLSQL_CONTEXT 0x77ed62a58 2217 688 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x77ed62a58 2252 184 package body APEX_180100.WWV_FLOW_EXEC.OPEN_PROCESS_CONTEXT 0x79ed25550 75 872 package body APEX_180100.WWV_FLOW_PROCESS_NATIVE.PLSQL 0x79ed25550 1152 4560 package body APEX_180100.WWV_FLOW_PROCESS_NATIVE.EXECUTE_PROCESS 0x79edc32a8 2451 2872 package body APEX_ | ORA-01476: divisor is equal to zero ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 9 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 11 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4 | ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 9 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 11 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST", line 4 | Uppermost Handler |
---|
TRUNCATE TABLE errlog
Table truncated.
CREATE OR REPLACE PROCEDURE log_error (app_info_in IN VARCHAR2,
reraise_in IN BOOLEAN DEFAULT FALSE)
IS
c_reraise_error_code constant integer := -20177;
l_code INTEGER := SQLCODE;
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
IF l_code <> c_reraise_error_code
THEN
INSERT INTO errlog (err_code,
err_message,
err_backtrace,
app_info)
VALUES (l_code,
DBMS_UTILITY.format_error_stack,
DBMS_UTILITY.format_error_backtrace,
app_info_in);
COMMIT;
END IF;
IF reraise_in
THEN
raise_application_error (
c_reraise_error_code,
'Contact application administrator for assistance.');
END IF;
END;
Procedure created.
CREATE OR REPLACE PROCEDURE innermost
IS
l_divisor NUMBER := 0;
BEGIN
DBMS_OUTPUT.put_line (100 / l_divisor);
EXCEPTION
WHEN OTHERS
THEN
log_error (
app_info_in => 'Innermost Handler - Value of divisor: ' || l_divisor,
reraise_in => TRUE);
END;
Procedure created.
CREATE OR REPLACE PROCEDURE inner
IS
BEGIN
innermost;
EXCEPTION
WHEN OTHERS
THEN
log_error (app_info_in => 'Inner Handler', reraise_in => TRUE);
END;
Procedure created.
CREATE OR REPLACE PROCEDURE uppermost
IS
BEGIN
inner;
EXCEPTION
WHEN OTHERS
THEN
log_error (app_info_in => 'Uppermost Handler');
END;
Procedure created.
BEGIN
uppermost;
END;
Statement processed.
SELECT *
FROM errlog
ORDER BY err_seq
ERR_SEQ | ERR_CODE | CALL_STACK | ERR_MESSAGE | ERR_BACKTRACE | APP_INFO | 7 | -1476 | - | ORA-01476: divisor is equal to zero | ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5 | Innermost Handler - Value of divisor: 0 |
---|
TRUNCATE TABLE errlog
Table truncated.
ALTER SESSION SET PLSQL_CCFLAGS="in_development:TRUE"
Statement processed.
CREATE OR REPLACE PROCEDURE log_error (app_info_in IN VARCHAR2,
reraise_in IN BOOLEAN DEFAULT FALSE)
IS
c_reraise_error_code constant integer := -20177;
l_code INTEGER := SQLCODE;
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
$IF $$in_development
$THEN
DBMS_OUTPUT.put_line (
'Log error at ' || TO_CHAR (SYSDATE, 'YYYY-MM-DD HH24:MI:SS'));
IF app_info_in IS NOT NULL
THEN
DBMS_OUTPUT.put_line ('App info: ' || app_info_in);
END IF;
DBMS_OUTPUT.put_line ('Error code: ' || l_code);
DBMS_OUTPUT.put_line (
'Error message: ' || DBMS_UTILITY.format_error_stack);
DBMS_OUTPUT.put_line (
'Error backtrace: ' || DBMS_UTILITY.format_error_backtrace);
IF reraise_in
THEN
raise_application_error (
-20177,
'Error in Dev: ' || DBMS_UTILITY.format_error_stack);
END IF;
$ELSE
IF l_code <> c_reraise_error_code
THEN
INSERT INTO errlog (err_code,
err_message,
err_backtrace,
app_info)
VALUES (l_code,
DBMS_UTILITY.format_error_stack,
DBMS_UTILITY.format_error_backtrace,
app_info_in);
COMMIT;
END IF;
IF reraise_in
THEN
raise_application_error (
c_reraise_error_code,
'Contact application administrator for assistance.');
END IF;
$END
END;
Procedure created.
BEGIN
uppermost;
END;
Statement processed.
Log error at 2019-05-14 15:46:52
App info: Innermost Handler - Value of divisor: 0
Error code: -1476
Error message: ORA-01476: divisor is equal to zero
Error backtrace: ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 5
Log error at 2019-05-14 15:46:52
App info: Inner Handler
Error code: -20177
Error message: ORA-20177: Error in Dev: ORA-01476: divisor is equal to zero ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR", line 26 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 9
Error backtrace: ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR", line 26 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 9 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 4
Log error at 2019-05-14 15:46:52
App info: Uppermost Handler
Error code: -20177
Error message: ORA-20177: Error in Dev: ORA-20177: Error in Dev: ORA-01476: divisor is equal to zero ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR", line 26 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNERMOST", line 9 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR", line 26 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 8
Error backtrace: ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.LOG_ERROR", line 26 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.INNER", line 8 ORA-06512: at "SQL_IVXFHJTXAWJTKOKTIMMYKCZDX.UPPERMOST", line 4
SELECT *
FROM errlog
ORDER BY err_seq
no data found