я это сделал когда работал в банке с суровыми админами, которые верили, что разрабам нечего делать на операционной системе даже тестовых серверов и прав нам недавали, а благодаря этому можно были из скул консоли работать как с обычным шелом — тут же видеть результаты выполнения.
Во всех остальных случаях Вы безусловно правы и этот велосипед ненужен :) он только для дев инстансов, но обладает своим шармом
Скажите, а в XE можно из триггера просто писать информацию в log_YYYY_MM_DD.txt?
Просто заводить отдельную таблицу нерационально — информации много, а ковырять лог требуется максимум раз в полгода.
Если да, то как это можно сделать?
PACKAGE BODY backtrace
IS
g_path CONSTANT VARCHAR2 (1000) := 'LOGS_HOME'; — directory
PROCEDURE put_line (p_value IN VARCHAR2)
IS
BEGIN
IF UTL_FILE.is_open (g_file)
THEN
UTL_FILE.fclose (g_file);
END IF;
UTL_FILE.put_line (p_value, v_tmp);
IF UTL_FILE.is_open (g_file)
THEN
UTL_FILE.fclose (g_file);
END IF;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
Мде… я уже публиковал на хабре почти два года назад свое решение c таймаутом и пайплайнед, но оно выпилилось, когда отрубили ссылки: xt-r.com/2010/11/oracle-svn-git-etc.html
Вызов shell из Oracle альтернативный метод