Чтобы гарантировать, что вы регистрируете каждый вызов apex_mail.send
, создайте процедуру-оболочку (или пакет), которая регистрирует вызов и использует вашу оболочку только при отправке писем.
например:
create or replace package my_mail as
procedure send( ... );
...
end;
/
create or replace package body my_mail as
procedure send( ... ) as
begin
insert into log_table (column list) values (parameter value list);
...
<additional custom code>
...
apex_mail.send( ... );
end;
...
end;
/
В качестве дополнительного преимущества использования вашей собственной оболочки вы можете добавить дополнительные функции, такие как автоматическая перезапись адреса получателя на тестовый адрес в среде разработки или UAT, чтобы вы случайно не спамили реальным пользователям тестовыми данными.