ALT(预警)

1. Alert简介

Alert是一种Oracle系统中的一种机制,它可以监视系统数据库,在规定的情况下给规定用户一个通知,通知可以是邮件或者其他形式,在标注的系统和客户化系统中都是可以定义使用的

2.  Alert定义

Alert有两种类型,一种是Event Alert。事件型的Alert会即时发出消息,另一种是Periodic Alert.周期性根据预定义周期检查数据库,然后发出消息。

2.1 Alert Action

Oracle Alert会在以上两种给给定情况下check数据库,检查时发出的与预定义不符合的情况叫做一个Exception,检查之后发生的预定义动作叫做Action。

Action在Oracle有四种:

(1)   发送E-mail消息

(2)   提交一个并发请求

(3)   运行一个SQL脚本(只有客户化表和开放接口板才存在该种情况)

(4)   运行一个系统脚本

2.2 Alert基本步骤

标准Alert Guide中开发Alert的7个基本步骤:

(1)调查研究

(2)定义Alert

(3)定义反应(Action)

(4)定义反应集(Action Set)

(5)测试Alert

(6)查看历史纪录

(7)编写文档

 

3. Event Alert

         事件型Alert可以监视数据库,即时做出反应。对数据库insert和update操作可以进行监控,一个定义在Event Alert中的查询语句(select SQL statement)和定义的反应(Action)作为数据库事件的结果。

 

3.1调查&准备

         1、安装客户化应用,创建客户化应用和设置Mail List,对于客户华表,需要注册表和列到Oralce系统中

          ad_dd.register_table('CUX','CUX_PO_AUTOMSGS','T');

ad_dd.register_column('CUX','CUX_PO_AUTOMSGS','PO_HEADER_ID',1,'NUMBER',15,'N','N');

 

        2、使用Oracle EBS Alert前提条件需求启动三个并发管理器:
             1.工作流代理接收器服务
             2.工作流邮件程序服务
             3.工作流文档 Web 服务 - 服务

              设置工作流系统管理--》Oralce Application管理器--》工作流

                 

 

           选择“Notification Mailers”对的图标

                

 

            打开“Edit”按钮,设置电邮服务器IP或名称,及电邮帐户和密码,输入完成,单击“Apply”保存设置(以下仅为举例)

                

 

3.2定义Alert

      用户:sysadmin

       职责:Alert Manager

       菜单:Alert>>Define

       

 

    关键的属性设置

  Application: 选择Alert的应用,取决于要对那个应用使用Alert

         Name: Alert的标识,唯一

        Periodic/Event: 选择Alert的类型,只能二选一,这里选Event

         Event Detail>>Application: 注册表的应用

         Event Detail>>Table: 注册的表

         Event Detail>>After Insert: 是否对insert 进行监控

         Event Detail>>After Update: 是否对update 进行监控

    Select Statement: 返回结果的select 语句

    Verify: 验证Select语句

    Alert Detail: Alert的细节设置

             

 

      其中Oracle ID 固定选择APPS, OU就是需要控制的OU,一般情况要选择某一个组织,input和output就是Select语句中的参数,input参数以“:”开头(常用的有 :ROWID, :MAILID, :ORG_ID, :DATE_LAST_CHECKED),output参数以“&”开头,会自动解析到类表里

 

 

 

 

3.3定义Action

  Action Level为Detail的意思是,如果前面的SQL返回n条记录,那么将发n封mail。这里的Text引用了output 变量。

 

3.4定义Action Set

Action set是把一系列的Action放在一个集合里

   

 

3.5测试

1、查看一下对应生成的触发器,方法:

SELECT t.owner, t.trigger_name, t.trigger_type, t.triggering_event

FROM all_triggers t

WHERE t.table_owner = 应用简称

         AND t.table_name = 表名

     2、模拟登陆来测试

        BEGIN 

apps.fnd_global.apps_initialize( user_id      => X,
                                               resp_id      => X,
                                               resp_appl_id => X);
             mo_global.set_policy_context( p_access_mode => 'S',
                                         p_org_id => org_id);
 
                  COMMIT;
              END;

       3、查看历史记录

            

 

 

 

        4、查看发出的邮件

             

4. Periodic Alert

周期型的定义和事件型定义基本一致,系统check方式不一样。

Frequency: check的周期 ,  Start Time: 开始时间, End Time:结束时间,  其他与Event型基本一致

    

5. 扩展

    定义Action时,Actions类型除了最常用的Message, 还有Concurrent Program并发程序、Operating System Script操作系统脚本、SQL Statement  Script SQL语句程序三种,本文档以message类型为例。

  

 

 

 

 

 

 

 

 

 

posted @ 2016-08-10 14:17  旺仔丶小馒头  阅读(339)  评论(0编辑  收藏  举报