Oracle оповещение о вакансиях - PullRequest
       18

Oracle оповещение о вакансиях

2 голосов
/ 26 сентября 2011

Я бегу оракулом 11g. Я пытаюсь настроить уведомление по электронной почте о работе.

BEGIN
 DBMS_SCHEDULER.add_job_email_notification (
  job_name         =>  'JOB_COLLECT_SESS_DATA',
  recipients       =>  'kaushik.guha@bmo.com',
  events           =>  'job_failed'/*,
  filter_condition => ':event.error_code=600'*/);
END;
/

И я получаю:

PLS-00302: component 'ADD_JOB_EMAIL_NOTIFICATION' must be declared

Это какая-то проблема, связанная с привилегиями?

Ответы [ 2 ]

1 голос
/ 28 сентября 2011

Я настроил Perl-скрипт, который периодически запускается как задание cron, которое выводит предупреждения при возникновении ошибок в заданиях СУБД. Поскольку мой crontab имеет настройку MAILTO=<email@domain.com>, все предупреждения будут отправлены мне по электронной почте.

my $dbh  = ... # set up a database connection using DBI
my $jobs = $dbh->selectall_arrayref("SELECT * FROM USER_JOBS", { Slice=>{}});

for my $job ( @$jobs ) {
    if ($job->{NEXT_DATE} eq '01-JAN-4000') {
        warn "DBMS-Job $job->{WHAT} is currently stopped.\n";
        warn "Last running at: $job->{LAST_DATE} $job->{LAST_SEC}\n";
    }
    elsif ( $job->{FAILURES} ) {
        warn "DBMS-Job $job->{WHAT} has failures.\n";
        warn "Last running at: $job->{LAST_DATE} $job->{LAST_SEC}\n";
    }
    else {
        warn "DBMS-Job $job->{WHAT} is broken.\n";
        warn "Last running at: $job->{LAST_DATE} $job->{LAST_SEC}\n";
    }
}
1 голос
/ 27 сентября 2011

Эта функция существует в 11.2 , но не в 11.1 .

Вы можете воспроизвести эту функцию, создав другую работу, которая просматривает статусы работы:1007 *

select *
from dba_scheduler_job_run_details
where job_name = 'JOB_COLLECT_SESS_DATA'
    and status = 'FAILED'
    and additional_info like 'ORA-00600%'
order by log_id desc;

Этот запрос работает по крайней мере для некоторых ошибок.Но ошибки ORA-00600 всегда особенные и могут не всегда отображаться в этой таблице, насколько мне известно.Вы хотите проверить это тщательно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...