一天的过程运行详细信息

时间:2019-10-08 11:36:29

标签: plsql oracle11g

请让我知道是否可以提供所有有效过程中该天特定过程被调用的“次数”的详细信息。

1 个答案:

答案 0 :(得分:0)

您可以使用自己的日志记录技术。例如,首先您可以在所需过程的相同模式下创建表。然后,在该调用的过程中,在begin语句结束之前,在end语句之后,您可以将日志插入到自己新创建的日志表中。

CREATE TABLE SCHEMA.LOGTABLE
(
   DATECOLUMN    DATE DEFAULT SYSTIMESTAMP,
   PROCNAME      VARCHAR2 (200 CHAR),
   TABLENAME     VARCHAR2 (200 CHAR),
   MESSAGE       VARCHAR2 (1000 CHAR),
   LOGSEQUENCE   NUMBER
);


CREATE OR REPLACE PROCEDURE SCHEMA.PROCNAME IS
BEGIN
INSERT INTO SCHAME.LOGTABLE(DATECOLUMN,
                        PROCNAME,
                        TABLENAME,
                        MESSAGE,
                        LOGSEQUENCE)
    VALUES (SYSTIMESTAMP,
            'SCHEMA.PROCNAME',
            'SCHEMA.TABLENAME',
            'Proc STARTED',
            NULL,
            SCHEMA.SEQ_SISTEM_LOG.NEXTVAL);

    COMMIT;


.....

INSERT INTO SCHAME.LOGTABLE(DATECOLUMN,
                        PROCNAME,
                        TABLENAME,
                        MESSAGE,
                        LOGSEQUENCE)
    VALUES (SYSTIMESTAMP,
            'SCHEMA.PROCNAME',
            'SCHEMA.TABLENAME',
            'Proc ENDED',
            NULL,
            SCHEMA.SEQ_SISTEM_LOG.NEXTVAL);

   COMMIT;
END;