Journal des messages d'erreur dans la procédure stockée Oracle
Nous avons l'intention de configurer une procédure stockée à exécuter comme un lot de travail quotidien à l'aide de SGBD Oracle planificateur de paquet. Nous aimerions savoir quelle serait la meilleure façon de connecter un message d'erreur quand il ya une erreur s'est produite. Est connecté à une table temporaire d'une option? ou est-il une meilleure option. Merci à l'avance.
OriginalL'auteur | 2009-10-14
Vous devez vous connecter pour publier un commentaire.
Vous dire que vous n'avez pas beaucoup de contrôle sur la DB de l'environnement pour installer la journalisation des paquets - si c'est le cas, alors vous serez limité à l'interrogation de l'information dans le dba_scheduler_job_run_details et dba_scheduler_job_log système de points de vue - vous serez en mesure de voir l'historique des exécutions ici. Les exceptions non gérées apparaîtra dans la ADDITIONAL_INFO colonne. Si vous avez besoin d'un avis, vous pouvez interroger ces points de vue et de générer des e-mail.
OriginalL'auteur dpbradley
Si vous décidez de rouler vos propres journalisation et connectez-vous à une table, vous pouvez aller de l' Autonome Transaction route.
Autonome s'agit d'une Opération qui peut être engagée indépendamment de la transaction en cours, vous êtes en.
De cette façon, vous pouvez vous connecter et valider toutes les informations que vous souhaitez ajouter à votre tableau de journaux indépendamment de la réussite ou de l'échec de votre procédure stockée ou lot de fabrication de processus parent de transaction.
Alors si vous l'appeler comme cela, vous pouvez toujours recevoir des messages engage à ce que votre journal de tableau, même si vous avez une défaillance et de restaurer votre transaction:
Vous pouvez la ranger avec les exceptions qui font sens pour votre code, mais c'est l'idée générale, les données écrites dans les appels à SP_LOG persiste, mais le parent transaction peut encore être annulée.
create table PROCESSING_LOG( MESSAGE_DATE timestamp, MESSAGE_TEXT varchar2(4000) );
OriginalL'auteur David Mann
Vous pouvez utiliser log4plsql http://log4plsql.sourceforge.net/et modifier le choix plus tard par les modifications de la configuration pas à des modifications de code
La log4plsql page donne une liste des différents endroits, il peut se connecter.
Il dépend de la façon dont les applications et les systèmes sont surveillés dans votre environnement, si il y a un moyen standard de sapin exemple une entreprise, j'ai travaillé ajouter utilisé irc pour de la surveillance, vous souhaitez peut-être une fonction qui appelle à cela.
OriginalL'auteur Mark
qui dépend de comment vous allez traiter avec des erreurs: si vous avez juste besoin d'être informé, le courriel est la meilleure option, si vous avez besoin pour poursuivre manuellement le processus de l'erreur, la table est le bon choix.
vérifier UTL_SMTP paquet.
OriginalL'auteur Henry Gao