Hi, It's right, the 3.1.3 version have a bug in Log4JbackgroundProcess. I put in sourceforge.net a version 3.1.3.1.
I thinck is OK now. Regards, Guillaume Moulard -----Message d'origine----- De : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Envoyé : mercredi 11 mai 2005 14:27 À : [email protected] Objet : RE: [log4plsql] Problem using Log4j feature. The problem is due to a bug in the listener thread. messages in the pipe are not written and read in the same way, hance reading in the pipe throws a SQLException. Code from package plog ------------------------ DBMS_PIPE.pack_message(pID); -- SEQUENTIAL ID DBMS_PIPE.pack_message(pLDATE); -- TIMESTAMP OF LOG STATEMENT DBMS_PIPE.pack_message(MOD(pLHSECS,100)); -- HUNDREDTHS OF SECONDS FOR TIMESTAMP DBMS_PIPE.pack_message(pLLEVEL); -- LOG LEVEL DBMS_PIPE.pack_message(pLSECTION); -- LOG SECTION - ANALOGUE TO LOG4J Logger NAME DBMS_PIPE.pack_message(LLTEXTE); -- LOG MESSAGE DBMS_PIPE.pack_message(pLUSER); -- CALLING USER DBMS_PIPE.pack_message('SAVE_IN_LOG'); -- MESSAGE TYPE? DBMS_PIPE.pack_message(PMDC.getKeyString); -- MAPPED DOMAIN CONTEXT KEYS FOR LOG4J DBMS_PIPE.pack_message(PMDC.getValueString); -- MAPPED DOMAIN CONTEXT VALUES FOR LOG4J DBMS_PIPE.pack_message(PMDC.getSeparator); -- MAPPED DOMAIN CONTEXT SEPARATOR FOR LOG4J Code from ReaderLogDataBase.sqlj -------------------------------- long piped_ID ; String piped_LDATE ; long piped_LHSECS ; int piped_LLEVEL ; String piped_LSECTION ; String piped_LTEXTE ; String piped_LUSER ; String piped_COMMAND = "WAIT"; ... #sql [ctx] { CALL DBMS_PIPE.unpack_message(:out piped_ID)} ; #sql [ctx] { CALL DBMS_PIPE.unpack_message(:out piped_LDATE)}; #sql [ctx] { CALL DBMS_PIPE.unpack_message(:out piped_LLEVEL)}; #sql [ctx] { CALL DBMS_PIPE.unpack_message(:out piped_LSECTION)}; #sql [ctx] { CALL DBMS_PIPE.unpack_message(:out piped_LTEXTE)}; #sql [ctx] { CALL DBMS_PIPE.unpack_message(:out piped_LUSER)}; #sql [ctx] { CALL DBMS_PIPE.unpack_message(:out piped_COMMAND)}; piped_LDATE must be of type Date and pLHSECS is not retrieved. -----Message d'origine----- De : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Envoyé : mardi 10 mai 2005 19:41 À : [email protected] Objet : RE: [log4plsql] Problem using Log4j feature. In addition to my previous message I have written this procedure and it works well. So it shows that the message is actually written to the pipe. declare s integer ; id number; ldate date; lhsecs number; lhlevel number; lsection varchar2(2000); ltext varchar2(2000); luser varchar2(30); begin plog.error('erreur toto'); s := dbms_pipe.receive_message('LOG_PIPE',1); dbms_output.put_line(to_char(s)); dbms_pipe.unpack_message(id); dbms_pipe.unpack_message(ldate); dbms_pipe.unpack_message(lhsecs); dbms_pipe.unpack_message(lhlevel); dbms_pipe.unpack_message(lsection); dbms_pipe.unpack_message(ltext); dbms_pipe.unpack_message(luser); dbms_output.put_line(id||' '||ldate||' '||lhsecs||' '||lhlevel||' '||lsection||' '||ltext||' '||luser); end; -----Message d'origine----- De : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Envoyé : mardi 10 mai 2005 18:50 À : [email protected] Objet : [log4plsql] Problem using Log4j feature. Hi all, I try to use the log4j feature with log4plsql. Unfortunetly, the listener process seems not to receive messages from the DBMS_PIPE. Here is a fragment of the listener's ouput : --------------------------------------------------------------------------- 2005-05-10 17:29:03,382 INFO [main] backgroundProcess.Run (Run.java:62) - start log4plsql.properties: ./properties/log4plsql.xml 2005-05-10 17:29:03,388 DEBUG [main] backgroundProcess.Run (Run.java:63) - log4j .properties : /ulis/users/ulisu9/Log4plsql/properties/log4j.xml 2005-05-10 17:29:03,430 DEBUG [main] backgroundProcess.ReaderThread (ReaderThrea d.java:40) - ReaderLogDataBase : Connect 2005-05-10 17:29:03,461 DEBUG [main] backgroundProcess.ReaderLogDataBase (Reader LogDataBase.sqlj:78) - Start logSource:source1 dbURI:jdbc:oracle:thin:@127.0.0.1 :1542:PRODU9 dbUser:ulog dbPass:ulog pipeName:LOG_PIPE 2005-05-10 17:29:04,207 INFO [main] backgroundProcess.ReaderLogDataBase (Reader LogDataBase.sqlj:85) - Startup logSource:source1 dbURI:jdbc:oracle:thin:@127.0.0 .1:1542:PRODU9 dbUser:ulog dbPass:ulog pipeName:LOG_PIPE 2005-05-10 17:29:04,355 DEBUG [main] backgroundProcess.DynamicLevel (DynamicLeve l.java:34) - Level Creation name:OFF level:99999 syslogEquiv:10 ..... 2005-05-10 17:29:48,999 DEBUG [Thread-1] backgroundProcess.ReaderLogDataBase (Re aderLogDataBase.sqlj:147) - Start Log4j Backgroung fetching 2005-05-10 17:29:49,002 DEBUG [Thread-1] backgroundProcess.ReaderLogDataBase (Re aderLogDataBase.sqlj:169) - DBMS_PIPE.receive_message:1 2005-05-10 17:29:49,003 DEBUG [Thread-1] backgroundProcess.ReaderLogDataBase (Re aderLogDataBase.sqlj:210) - Nbr line read in logSource:source1 : 0 --------------------------------------------------- You can see that the DBMS pipe name is the default and that's the same in the PLOGPARAM package. By inserting some debug code to the PLOG.LOG procedure I noticed that it actually writes to the pipe (the following code is executed and ret is 0). ret := DBMS_PIPE.send_message(pCTX.DBMS_PIPE_NAME); IF RET <> 0 then raise_application_error(ERR_CODE_DBMS_PIPE, MES_CODE_DBMS_PIPE || RET); END IF; But the "DBMS_PIPE.receive_message:1" message seems to mean that the listener process finds no message in the pipe. Am I right ? Do you know where it comes from ? ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_ids93&alloc_id281&op=ick _______________________________________________ Log4plsql-all-info mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/log4plsql-all-info log4plsq : http://log4plsql.sourceforge.net ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_ids93&alloc_id281&op=ick _______________________________________________ Log4plsql-all-info mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/log4plsql-all-info log4plsq : http://log4plsql.sourceforge.net ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_ids93&alloc_id281&op=ick _______________________________________________ Log4plsql-all-info mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/log4plsql-all-info log4plsq : http://log4plsql.sourceforge.net ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_idt12&alloc_id344&op=click _______________________________________________ Log4plsql-all-info mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/log4plsql-all-info log4plsq : http://log4plsql.sourceforge.net
