1-loggin:= See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.1-initialisation:=Description: It is possible to initialize a log context with 1, 2 or 3 parameters.

1. The first section (use it for log a code name)
2. A specific log level for this context (use it when you want debug a specific part of you application )
3. A Boolean: TRUE for use a "Log out transactional" features FALSE if not.

If context is not initialized:
· Section: dynamic pl/plsql call stack
· Level: ERROR
· Log in a transaction See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.1-initialisation:plog.init ;=Description: A standard
Exemple: pCTX PLOG.LOG_CTX := PLOG.init ; \n

prototype:\nfunction init( pSECTION IN TLOG.LSECTION%type, pLEVEL IN TLOG.LLEVEL%type, pUSE_PIPE IN BOOLEAN) RETURN LOG_CTX;\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.1-initialisation:plog.init(pSECTION);=Description: Without default parameter
Exemple: pCTX PLOG.LOG_CTX := PLOG.init ('firstSection'); \n

prototype:function init( pSECTION IN TLOG.LSECTION%type, pLEVEL IN TLOG.LLEVEL%type, pUSE_PIPE IN BOOLEAN)RETURN LOG_CTX;\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.1-initialisation:plog.init(pSECTION, pLEVEL);=Description: For debug mode
Exemple: pCTX PLOG.LOG_CTX := PLOG.init ('firstSection', PLOG.LDEBUG); \n

prototype:function init( pSECTION IN TLOG.LSECTION%type, pLEVEL IN TLOG.LLEVEL%type, pUSE_PIPE IN BOOLEAN)RETURN LOG_CTX;\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.1-initialisation:plog.init(pSECTION, pLEVEL, TRUE|FALSE);=Description: for "Log out transactional" features
Exemple: pCTX PLOG.LOG_CTX := PLOG.init ('firstSection', PLOG.LDEBUG, FALSE);\n

prototype:function init( pSECTION IN TLOG.LSECTION%type, pLEVEL IN TLOG.LLEVEL%type, pUSE_PIPE IN BOOLEAN)RETURN LOG_CTX;\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:=Description: LOG4PLSQL log level


plog.error('Text');  LERROR  The ERROR level designates error events that might still allow the application to continue running.
plog.warn ('Text');  LWARN  The WARN level designates potentially harmful situations
plog.info ('Text');  LINFO  The INFO level designates informational messages that highlight the progress of the application at coarse-grained level.
plog.debug('Text');  LDEBUG  The DEBUG Level designates fine-grained informational events that are most useful to debug an application.
Note: error>warn>info>debug


See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.error('Log Text');=Description: The ERROR level designates error events that might still allow the application to continue running.\n
Exemple:plog.error('Text'); \n
prototype:procedure error( pTEXTE IN TLOG.LTEXTE%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.error(pCTX, 'Log Text');=Description: The ERROR level designates error events that might still allow the application to continue running.\n
Exemple:plog.error(pCTX, 'Text'); \n
prototype:procedure error( pCTX IN OUT NOCOPY LOG_CTX, pTEXTE IN TLOG.LTEXTE%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.warn('Log Text');=Description: The WARN level designates potentially harmful situations\n
Exemple: plog.warn('Text');\n
prototype:procedure warn( pTEXTE IN TLOG.LTEXTE%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.warn(pCTX, 'Log Text');=Description: The WARN level designates potentially harmful situations\n
Exemple: plog.warn(pCTX, 'Text');\n
prototype:procedure warn( pCTX IN OUT NOCOPY LOG_CTX, pTEXTE IN TLOG.LTEXTE%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.info('Log Text');=Description: The INFO level designates informational messages that highlight the progress of the application at coarse-grained level.\n
Exemple: plog.info('Text');\n
prototype:procedure info( pTEXTE IN TLOG.LTEXTE%type);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.info(pCTX, 'Log Text');=Description: The INFO level designates informational messages that highlight the progress of the application at coarse-grained level.\n
Exemple: plog.info(pCTX, 'Text');\n
prototype:procedure info( pCTX IN OUT NOCOPY LOG_CTX, pTEXTE IN TLOG.LTEXTE%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.debug('Log Text');=Description: The DEBUG Level designates fine-grained informational events that are most useful to debug an application.\n
Exemple: plog.debug('Text');\n
prototype:procedure debug( pTEXTE IN TLOG.LTEXTE%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.2-use:plog.debug(pCTX, 'Log Text');=Description: The DEBUG Level designates fine-grained informational events that are most useful to debug an application.\n
Exemple: plog.debug(pCTX, 'Text');\n
prototype:procedure debug( pCTX IN OUT NOCOPY LOG_CTX, pTEXTE IN TLOG.LTEXTE%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:=See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Level Management:=It is possible to dynamically increase with setLevel the level of log. A call to setLevel without parameter repositions the levels has that specified in the package.
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Level Management:plog.getLevel(pCTX);=Description: return a level.\n
Exemple: PLOG.getLevel(pCTX);\n
prototype:function getLevel( pCTX IN OUT NOCOPY LOG_CTX);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Level Management:plog.setLevel(pCTX, PLOG.LLEVEL);=Description: increase a current level, it nice for debug a code part.\n
Exemple: PLOG.setLevel (pCTX, PLOG.LDEBUG);\n
prototype:procedure setLevel( pCTX IN OUT NOCOPY LOG_CTX, pLEVEL IN TLOG.LLEVEL%type);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Section Management:=By default a section is a PL/SQL call stack. By is possible to specify a hierarchical log node.
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Section Management:plog.getSection(pCTX);=Description: Retrun a section string.\n
Exemple: PLOG.getSection(pCTX);\n
prototype:function getSection( pCTX IN OUT NOCOPY LOG_CTX);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Section Management:plog.setBeginSection(pCTX, 'NewSubSectionName');=Description: for create a new node in hierarchy.\n
Exemple: PLOG.SetBeginSection (pCTX, 'Test1');\n
prototype:procedure setBeginSection( pCTX IN OUT NOCOPY LOG_CTX, pSECTION IN TLOG.LSECTION%type);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Section Management:plog.setEndSection(pCTX, 'EndEDSubSectionName')=Description: for close a node in hierarchy.\n
Exemple: PLOG.SetEndSection (pCTX, 'Test1');\n
prototype:procedure setEndSection( pCTX IN OUT NOCOPY LOG_CTX, pSECTION IN TLOG.LSECTION%type);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Transaction Management:=Log in transaction have some problems:
- If you rollback a transaction you log message is rollback in same time
- If you code is very long operation isn't possible to view a progression.

LOG4PLSQL have features that bypass a transactional problem. This features use a DBMS_PIPE oracle package for logging a message.See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Transaction Management:plog.getTransactionMode(pCTX);=Description: return a Boolean TRUE if your use "Log out transactional" features FALSE if not. \n
Exemple: PLOG.getTransactionMode(pCTX);\n
prototype:function getTransactionMode( pCTX IN OUT NOCOPY LOG_CTX);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 1-loggin:1.3-Dynamique Parameter:Transaction Management:plog.setTransactionMode(pCTX, TRUE|FALSE);=Description: For set transactional mode (TRUE: Log out transactional, FALSE: Log in transaction).\n
Exemple: PLOG.setTransactionMode(pCTX,FALSE);\n
prototype:procedure setTransactionMode( pCTX IN OUT NOCOPY LOG_CTX, inTransaction IN boolean);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:=See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:background process:=See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:background process:plog.background_Log;=Description: Start a pl/sql background_Log.\n
Exemple: exec plog.background_Log;\n
prototype:procedure background_Log( timeout IN INTEGER);\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:background process:plog.background_Log_stop;=Description: Stop a pl/sql backgroud_Log.\n
Exemple: exec PLOG.background_Log_stop;\n
prototype:procedure background_Log_stop;\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:purge:=Clean database log table
See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:purge:plog.purge=Description: \n
Exemple: PLOG.purge ;\n
prototype:procedure purge\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:purge:plog.purge(pCTX );=Description: \n
Exemple: PLOG.purge (pCTX);\n
prototype:procedure purge( pCTX IN OUT NOCOPY LOG_CTX);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net 2-administration:purge:plog.purge(pCTX, TheDate );=Description: delete a last week log \n
Exemple: PLOG.purge (pCTX, sysdate - 7 );\n
prototype:procedure purge( pCTX IN OUT NOCOPY LOG_CTX, theDate DATE);\n\n\n
See:LOG4PLSQL : http://log4plsql.sourceforge.net