error while linking with std::basic_string<...>::basic_string<...>(...)

2010-05-31 Thread Thorsten Schöning
Hello,

I have to challenge the inclusion of Log4cxx in out projects based on
an old Borland Build 5 and 6. We already tried log4cpp but need the
SMTPAppender and rolling FileAppender which are not provided by
log4cpp as we need them.

I first tried the ant build of log4cpp but it doesn't seem to be fully
compatible with the old Borland anymore. I got it compiling after
little changes to build.xml but in the end I'm stuck with a linker
error where Borland just provides an error code.

Afterwards I tried building with my own, newly created project and did
manage to get it to compile and create a static library. I used some
binary distributions of apr to link against because i didn't manage to
get apr built on my own, yet.

When I try to use my own created log4cxx.lib in a test program, I get
a linker error which I don't understand the meaning of. The error is
the following:

[Linker Fehler] Unresolved external 'std::basic_string, std::allocator >::basic_string, std::allocator >(int, int, const 
std::allocator&)' referenced from D:\BENUTZER\TSCHOENING\EIGENE 
DATEIEN\BIBLIOTHEKEN\TRUNK\C++\LOG4CXX\SRC\MAIN\CPP\PROJECT1.LIB|cacheddateformat

The same error sometimes is shown with syslogappender as source class.
Any hints on what might be the error? I think it's maybe related to
LogChar, because the error does change whether or not
LOG4CXX_LOGCHAR_IS_UTF8 or LOG4CXX_LOGCHAR_IS_WCHAR is set. Depending
on the define the error stats basic_stringhttp://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: error while linking with std::basic_string<...>::basic_string<...>(...)

2010-06-07 Thread Thorsten Schöning
Guten Tag Thorsten Schöning,
am Montag, 31. Mai 2010 um 16:15 schrieben Sie:

> [Linker Fehler] Unresolved external 'std::basic_string std::char_traits, std::allocator >::basic_string std::char_traits, std::allocator >(int, int, const
> std::allocator&)' referenced from
> D:\BENUTZER\TSCHOENING\EIGENE
> DATEIEN\BIBLIOTHEKEN\TRUNK\C++\LOG4CXX\SRC\MAIN\CPP\PROJECT1.LIB|cacheddateformat

In case anyone else is bound to an old Borland, like us: The problem
occurs where variables of type LogString are constructed with numeric
characters. Borland doesn't interpret the provided hex codes to be a
wchar_t, like Visual Studio seems to do. There are only a few
statements that were responsible for our error and after changing them
to use the macro and LOG4CXX_STR everything seems to work now. I don't
understand why hex codes are used anyway, because some places have the
character meaning commented right after.

Our changes:

Index: D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/syslogappender.cpp
===
--- D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/syslogappender.cpp
(Revision 1277)
+++ D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/syslogappender.cpp
(Revision 1278)
@@ -285,7 +285,7 @@
 return;
 }
 
-LogString sbuf(1, 0x3C /* '<' */);
+LogString sbuf(1, LOG4CXX_STR('<'));
 StringHelper::toString((syslogFacility | 
event->getLevel()->getSyslogEquivalent()), p, sbuf);
 sbuf.append(1, (logchar) 0x3E /* '>' */);
 if (facilityPrinting)
Index: D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/telnetappender.cpp
===
--- D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/telnetappender.cpp
(Revision 1277)
+++ D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/telnetappender.cpp
(Revision 1278)
@@ -178,7 +178,7 @@
 write(buf);
 buf.clear();
 if (CharsetEncoder::isError(stat)) {
-LogString unrepresented(1, 0x3F /* '?' */);
+LogString unrepresented(1, LOG4CXX_STR('?'));
 LogString::const_iterator 
unrepresentedIter(unrepresented.begin());
 stat = encoder->encode(unrepresented, 
unrepresentedIter, buf);
 buf.flip();
Index: D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/cacheddateformat.cpp
===
--- D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/cacheddateformat.cpp  
(Revision 1277)
+++ D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/cacheddateformat.cpp  
(Revision 1278)
@@ -42,7 +42,7 @@
 /**
  *  Expected representation of first magic number.
  */
-const logchar CachedDateFormat::magicString1[] = { 0x36, 0x35, 0x34, 0 };
+const LogString CachedDateFormat::magicString1 = LOG4CXX_STR("654");
 
 
 /**
@@ -71,7 +71,7 @@
formatter(dateFormat),
millisecondStart(0),
slotBegin(std::numeric_limits::min()),
-   cache(50, 0x20),
+   cache(50, LOG4CXX_STR(' ')),
expiration(expiration1),
previousTime(std::numeric_limits::min()) {
   if (dateFormat == NULL) {
Index: D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/include/log4cxx/helpers/cacheddateformat.h
===
--- D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/include/log4cxx/helpers/cacheddateformat.h
(Revision 1277)
+++ D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/include/log4cxx/helpers/cacheddateformat.h
(Revision 1278)
@@ -62,7 +62,7 @@
   /**
*  Expected representation of first magic number.
*/
-  static const logchar magicString1[];
+      static const LogString magicString1;
 
 
   /**

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: error while linking with std::basic_string<...>::basic_string<...>(...)

2010-06-08 Thread Thorsten Schöning
Guten Tag Curt Arnold,
am Dienstag, 8. Juni 2010 um 05:08 schrieben Sie:

> The hex codes were intentional since they would give the expected
> character value even if compiled using a non-ASCII based encoding like EBCDIC.

Isn't this case already handled by the following in logstring.h?

#if LOG4CXX_CHARSET_EBCDIC
#define LOG4CXX_STR(str) log4cxx::helpers::Transcoder::decode(str)

> I'll try to pull the constants out into preprocessor macros and do a little 
> #if(__BORLANDC__)

Thanks, that would be great!

We found two changes where not necessary:

Index: D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/cacheddateformat.cpp
===
--- D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/cacheddateformat.cpp  
(Revision 1278)
+++ D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/cpp/cacheddateformat.cpp  
(Revision 1279)
@@ -42,7 +42,7 @@
 /**
  *  Expected representation of first magic number.
  */
-const LogString CachedDateFormat::magicString1 = LOG4CXX_STR("654");
+const logchar CachedDateFormat::magicString1[] = { 0x36, 0x35, 0x34, 0 };
 
 
 /**
Index: D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/include/log4cxx/helpers/cacheddateformat.h
===
--- D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/include/log4cxx/helpers/cacheddateformat.h
(Revision 1278)
+++ D:/Benutzer/tschoening/Eigene 
Dateien/Bibliotheken/trunk/C++/log4cxx/src/main/include/log4cxx/helpers/cacheddateformat.h
(Revision 1279)
@@ -62,7 +62,7 @@
   /**
*  Expected representation of first magic number.
*/
-  static const LogString magicString1;
+  static const logchar magicString1[];
 
 
   /**

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: simple stringstream appender

2010-08-16 Thread Thorsten Schöning
Guten Tag Andrej van der Zee,
am Montag, 16. August 2010 um 09:49 schrieben Sie:

> I need an appender that writes to a stringstream. I want to be able to
> access the complete log after my CGI application is finished. How can
> I do this?

> I guess I could use a FileAppender and write to a temporary file and
> after my CGI application finishes read the log from the file. But, I
> prefer a stringstream solution.

Doesn't depends the possibility to use a string stream or file on who
wants to read the log from your CGI application? If it's another
application, how does it get the string stream? Besides that, how
large can your log grow? What are your trying to do with the written
log in general? I would prefer a file from the first thoughts.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



exception std::out_of_range in StringHelper::startsWith

2010-10-12 Thread Thorsten Schöning
Hello,

I get an out_of_range exception everytime I use a logger which name is
longer than the name of the root logger and wonder if anyone else ran
into this problem, too. We use a pretty old Borland Builder 5, may it
be an implementation issue of the stl? Reading how
basic_string::compare works for other implementations the current
startWith should work, in my opinion.

http://www.sgi.com/tech/stl/basic_string.html

I had to make the following changes:

Index: stringhelper.cpp
===
--- stringhelper.cpp(Revision 1652)
+++ stringhelper.cpp(Arbeitskopie)
@@ -79,6 +79,11 @@
 
 bool StringHelper::startsWith(const LogString& s, const LogString& prefix)
 {
+if (s.length() < prefix.length())
+{
+  return false;
+}
+
 return s.compare(0, prefix.length(), prefix) == 0;
 }

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



apr_terminate called too early...

2010-10-15 Thread Thorsten Schöning
Hello,

I have a GUI-application in Borland C++-Builder 5 which I needed to
add logging support using log4cxx. It started fine but I noticed
problems after closing the application. Like others on the net I have
the problem that the application crashes during accessing or deleting
some mutexes during destruction of different objects. Because I didn't
find a real solution or advice what might be the problem, just some
infos on locking problems or stuff like that, I tried to look into
this myself.

What I have found is that apr_terminate is called during
deconstruction of APRInitializer before the access problems or
exceptions occur. This makes sense, because the problem was that some
apr-mutexes where inaccessible in some point during application
shutdown and all those mutexes are owned by apr, if I understood
correctly.

From my point of view I would have expected that apr_terminate is the
last thing called in Log4cxx but it seems that after deconstruction of
APRInitializer and apr_terminate deconstructing objects just continues
with some Loggers, Appenders etc. All of them use mutexes which aren't
available anymore if apr_terminate was called before.

It does seem that theres only one instance of APRInitializer available
during runtime and that apr_initiliaze is called only once, therefore
the one call of apr_terminate I noticed really kills all objects and
memory. I didn't understand how and when APRInitializer is
deconstructed, though.

So, can it be correct that apr_terminate is called before everything
else has finished and all Objects using apr-mutexes released them
properly? If I uncomment apr_terminate, the application seems to
finish properly.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



get method name of logging caller...

2010-10-15 Thread Thorsten Schöning
Hello,

is there any way to get the method name of the logging caller in the
log message? In some places %M is mentioned, but it doesn't seem to
work and is not in the documentation of class PatternLayout. With
log4perl and log4j I'm able to log the whole class path down to a
method and wondered if this is possible using log4cxx, too. Seems one
has to stay with line number, right?

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: apr_terminate called too early...

2010-10-17 Thread Thorsten Schöning
Guten Tag rho...@purplescarab.com,
am Freitag, 15. Oktober 2010 um 22:48 schrieben Sie:

> We ran into the same issue viz-a-vis APRInitializer in the product we
> were building - see 
> http://mail-archives.apache.org/mod_mbox/logging-log4cxx-dev/200901.mbox/%3c4975157f.8070...@purplescarab.com%3e
> for a discussion.

Thanks, I already read this post some months ago, but couldn't
remember anymore and didn't understand it completely. Seems I will
stay with uncommenting apr_terminate, too.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: get method name of logging caller...

2010-10-18 Thread Thorsten Schöning
Guten Tag Curt Arnold,
am Montag, 18. Oktober 2010 um 15:14 schrieben Sie:

> If you are able to see file and line, but not class and method,
> then explore extending __LOG4CXX_FUNC__ to support your compiler.

Thanks for the hint, but even if I do that, I just get what %l would
print, right? It seemed that it combines file and line, but I would
have wanted just the method. LocationInfo::write doesn't seem to print
the method name, either it's provided or not, too. I'm stuck with an old
Borland Builder and pretty sure I already searched for a way to get
the method name quite a while ago and didn't find anything helpful.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: get method name of logging caller...

2010-11-26 Thread Thorsten Schöning
Guten Tag Thorsten Schöning,
am Freitag, 15. Oktober 2010 um 12:53 schrieben Sie:

> is there any way to get the method name of the logging caller in the
> log message? In some places %M is mentioned, but it doesn't seem to
> work and is not in the documentation of class PatternLayout.

Hello,

%M is not mentioned in the docs of PatternLayout, but it's made
available already. I didn't get any suitable result because, as Curt
Arnold mentioned, my compiler wasn't detected by the macros defining
__LOG4CXX_FUNC__. I changed this in locatininfo.h to recognize the
Borland compiler and %M and %C seem to work as expacted.

I created two patches, one to add Borland compiler in locationinfo.h
and the other to update the documentation of PatternLayout to state
that C and M may be supported, depending on the compiler used. Maybe
you are interested to merge.

Index: locationinfo.h
===
--- locationinfo.h  (Revision 1657)
+++ locationinfo.h  (Arbeitskopie)
@@ -109,28 +109,32 @@
 
 /** Caller's method name. */
 const char * methodName;
-
 
+
   };
   }
 }
 
-  #if !defined(LOG4CXX_LOCATION)
-#if defined(_MSC_VER)
-#if _MSC_VER >= 1300
+#if !defined(LOG4CXX_LOCATION)
+  #if defined(_MSC_VER)
+#if _MSC_VER >= 1300
   #define __LOG4CXX_FUNC__ __FUNCSIG__
-#endif
-#else
-#if defined(__GNUC__)
+#endif
+  #else
+#if defined(__GNUC__)
   #define __LOG4CXX_FUNC__ __PRETTY_FUNCTION__
+#else
+  #if defined(__BORLANDC__)
+#define __LOG4CXX_FUNC__ __FUNC__
+  #endif
+#endif
 #endif
-#endif
 #if !defined(__LOG4CXX_FUNC__)
-#define __LOG4CXX_FUNC__ ""
+  #define __LOG4CXX_FUNC__ ""
 #endif
-  #define LOG4CXX_LOCATION ::log4cxx::spi::LocationInfo(__FILE__, \
-   __LOG4CXX_FUNC__,   
  \
-   __LINE__)
-  #endif
+#define LOG4CXX_LOCATION ::log4cxx::spi::LocationInfo(__FILE__, \
+  __LOG4CXX_FUNC__, \
+  __LINE__)
+#endif
 
 #endif //_LOG4CXX_SPI_LOCATION_LOCATIONINFO_H


Index: patternlayout.h
===
--- patternlayout.h (Revision 1657)
+++ patternlayout.h (Arbeitskopie)
@@ -104,6 +104,29 @@
 
 
 
+
+  
+C
+class
+  
+
+  
+Used to output the class of the issuer of the logging event if the
+compiler used supports a macro to retrieve the method of the
+currently compiled line and if the LOG4CXX_TRACE-like macros are
+used to issue a logging request. In this case the macro LOG4CXX_*
+is expanded at compile time to generate location info of the
+logging event and adds the method name, besides file and line, if
+available. In most cases the provided method contains the classname
+and can therefore be retrieved form the location info as needed.
+
+
+  Currently supported compilers are those from Microsoft, GNU-C and
+  Borland.
+
+  
+
+
 d Used to output the date of
  the logging event. The date conversion specifier may be
  followed by a set of braces containing a
@@ -148,6 +171,30 @@
 
 
 
+  
+M
+method
+  
+
+  
+Used to output the method of the issuer of the logging event if the
+compiler used supports a macro to retrieve the method of the
+currently compiled line and if the LOG4CXX_TRACE-like macros are
+used to issue a logging request. In this case the macro LOG4CXX_*
+is expanded at compile time to generate location info of the
+logging event and adds the method name, besides file and line, if
+available. In most cases the provided method contains the classname
+which is ignored in every attempt to retrieve the method from the
+location info.
+
+
+  Currently supported compilers are those from Microsoft, GNU-C and
+  Borland.
+
+  
+
+
+
 n
 
 Outputs the platform dependent line separator character or


Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow

locationinfo.h.diff
Description: Binary data


patternlayout.h.diff
Description: Binary data


Re: double precision

2011-01-07 Thread Thorsten Schöning
Guten Tag Matthew Bingham,
am Freitag, 7. Januar 2011 um 14:02 schrieben Sie:

> I know one way is to use std::stringstream, set its precision, build the
> string myself, then pass it into log4cxx.  However, I am concerned about
> performance and would hate to build the string only for it not to be logged
> because it is only a DEBUG log and need atleast INFO to log.

Performance should not be an issue if you use a function, class or
something and use it directly in the macro. It only gets executed if
the level fits.

LOG4CXX_DEBUG(logger_, "value is " << buildHighPrecStringForLogging(tmp));

Depends if I understood the following right, of course. ;-)

#define LOG4CXX_DEBUG(logger, message) { \
if (LOG4CXX_UNLIKELY(logger->isDebugEnabled())) {\
   ::log4cxx::helpers::MessageBuffer oss_; \
   logger->forcedLog(::log4cxx::Level::getDebug(), oss_.str(oss_ << 
message), LOG4CXX_LOCATION); }}
#else
#define LOG4CXX_DEBUG(logger, message)
#endif

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: Crash at exit

2011-01-18 Thread Thorsten Schöning
Guten Tag Andreas Volz,
am Dienstag, 18. Januar 2011 um 00:15 schrieben Sie:

> Program received signal SIGSEGV, Segmentation fault.
> 0x001b2614 in ~ObjectPtrT (this=0x80ef7b8, __in_chrg=)
> at /usr/include/log4cxx/helpers/objectptr.h:100
> 100   p->releaseRef();

Sounds that the following may be the reason:

http://mail-archives.apache.org/mod_mbox/logging-log4cxx-dev/200901.mbox/%3c4975157f.8070...@purplescarab.com%3E
http://www.mail-archive.com/log4cxx-user@logging.apache.org/msg03188.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: Crash at exit

2011-01-18 Thread Thorsten Schöning
Guten Tag carlos_jime...@encopim.com,
am Dienstag, 18. Januar 2011 um 13:47 schrieben Sie:

> Anyone have any idea?

Don't call apr_terminate at all, uncomment it in Log4cxx.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: [user] mail testing

2011-05-19 Thread Thorsten Schöning
Guten Tag Tran Quoc Ngan,
am Donnerstag, 19. Mai 2011 um 04:08 schrieben Sie:

> I’ve just registered my mail account for the mailing list but since
> then I haven’t received any mails so I send this mail is for testing purpose

No mails, no problems, sounds great. :-)

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: Attempting to compile example program

2011-09-12 Thread Thorsten Schöning
Guten Tag Zettai Muri,
am Dienstag, 13. September 2011 um 00:08 schrieben Sie:

> Anyone have any ideas at all?

My only idea would be to not use Visual Studio 6, but a more recent
Version of Visual Studio Express. Then you shouldn't need Dev-C++
either.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: AW: [bulk]: Re: Attempting to compile example program

2011-09-12 Thread Thorsten Schöning
Guten Tag Zerbst, Carsten,
am Dienstag, 13. September 2011 um 08:40 schrieben Sie:

> There was an issue with macros not supported by VC, has someone
> patched the code in the meantime ?

Depends on the errors you got, I had to make log4cxx usable with
Borland Builder 5 and 6, which are pretty old, had unsupported macros,
too, but got it finally working.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning
AM-SoFT IT-Systeme - Hameln | Potsdam | Leipzig
 
Telefon: Potsdam: 0331-743881-0
E-Mail:  tschoen...@am-soft.de
Web: http://www.am-soft.de

AM-SoFT GmbH IT-Systeme, Konsumhof 1-5, 14482 Potsdam
Amtsgericht Potsdam HRB 21278 P, Geschäftsführer: Andreas Muchow



Re: Valgrind memory issue

2011-12-05 Thread Thorsten Schöning
Guten Tag Lo, Norman,
am Montag, 5. Dezember 2011 um 23:42 schrieben Sie:

> I am using log4cxx for my program. I was running valgrind with the
> program to see if there are any memory issues and there are quite a
> few errors coming from log4cxx. So I wrote a simple program :

Post the leaks, some of them were surely already discussed.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Concurrent access

2012-02-23 Thread Thorsten Schöning
Guten Tag drkmkzs,
am Mittwoch, 22. Februar 2012 um 16:55 schrieben Sie:

> And i imagine a better approach would be to configure log4cxx within the
> code (instead property file) in order to change log file name for each
> processess ?

Not necessarily. I don't know if log4cxx properly handles concurrent
access to the same file on a per process basis, but I personally
dislike configuring log4cxx in code and in your case it wouldn't be
necessary, depending on what your really try to achieve with your log
files. If it's just about to separate the log files of more than one
instance of your program, one approach could be to provide a unique
environment variable in your program on per instance basis before
configuring log4cxx with its property or xml file, because log4cxx is
able to use environment variable in the configuration at least in
paths. I use that to distinct two calls of the same program by
different callers where the callers provide an id of who they are and
that id is set as an environment variable and used in the log
configuration as part of the path to the log file. This ID can be
whatever you like, process id, GUID, something from the caller, it all
depends on what you do with the logs.

The syntax to get something from the environment is ${something}, like
in the following example:











Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: How to set LockingModel in Log4cxx (if possible)

2012-04-12 Thread Thorsten Schöning
Guten Tag Millard, Andy,
am Mittwoch, 11. April 2012 um 23:44 schrieben Sie:

> Is LockingModel implemented for log4cxx (0.10.0) as it is for Log4Net ?

No. Why do you think it should be if even the appender name is log4net
specific? :-)

> If this is not supported in Log4cxx 0.10.0 what are the alternatives?
> E.g. suggested code changes to log4cxx itself?  A later release of
> log4cxx, although I have not found one.

Use another Editor to view the file. If Notepad can open the file, the
problem is not with the file locking, because it's locked by the
logging process to be readable by others, but with the editor which
can't open the file unless it is able to get an exclusive lock.
TextPad for example is able to open logfiles in use, too. I don't
think there's any other solution because locking the file by the
logging process to be the only one which can write to the logfile
seems fine and logical to me.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Problems installing log4cxx v 0.10.0 using Microsoft Visual Studio 2010 Express C++ edition

2012-05-02 Thread Thorsten Schöning
Guten Tag michael.gar...@gdc4s.com,
am Donnerstag, 3. Mai 2012 um 01:24 schrieben Sie:

> I appreciate any help you can provide me in this matter.

I don't know which version the project files are for, but maybe the
following will help:

http://connect.microsoft.com/VisualStudio/feedback/details/595054/visual-c-2010-express-cannot-open-visual-c-6-0-projects

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Trapping printf?

2012-05-09 Thread Thorsten Schöning
Guten Tag Christopher Nagel,
am Mittwoch, 9. Mai 2012 um 20:07 schrieben Sie:

> What would you do?

I would consider writing a little parser which redirects stdout etc.
to itself and uses proper loggers, maybe even depending on the output
of the binary libs if it is unique enough to distinct. With Windows
using GetStdHandle and SetStdHandle sounds good.

http://msdn.microsoft.com/en-us/library/windows/desktop/ms683231(v=vs.85).aspx
Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Log4cxx and memory read problem while program is ending

2012-05-25 Thread Thorsten Schöning
Guten Tag Vladislav Krejcirik,
am Freitag, 25. Mai 2012 um 09:11 schrieben Sie:

> Unhandled exception at 0x10171754 in Log4cxxTest.exe: 0xC005:
> Access violation reading location 0xfeeefefe.

There are known problems in the shutdown of log4cxx, the following may
help. I had to uncomment the call to apr_terminate in some classes.

http://mail-archives.apache.org/mod_mbox/logging-log4cxx-dev/200901.mbox/%3c4975157f.8070...@purplescarab.com%3E

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Log4cxx and memory read problem while program is ending

2012-05-25 Thread Thorsten Schöning
Guten Tag Vladislav Krejcirik,
am Freitag, 25. Mai 2012 um 10:02 schrieben Sie:

> Thanks for reply! I'm not sure, but I changed code for handling CTRL+C
> and issue looks like fixed. May be it was not problem with log4cxx..

I don't know about that handler but in the former version you logged
on CTRL_SHUTDOWN_EVENT and maybe this event was fired after log4xx was
already destructed right before the application shutdown.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: failed to compile log4cxx in Ubuntu12. error is apr

2012-07-27 Thread Thorsten Schöning
Guten Tag avihai,
am Freitag, 27. Juli 2012 um 11:33 schrieben Sie:

> Follow instruction with this link:
> http://www.yolinux.com/TUTORIALS/Log4cxx.html
> include this   - apt-get install libapr1 libaprutil1

> When run './configure --prefix=/usr'
> i am getting error:
> configure: error: APR could not be located. Please use the --with-apr option.

Do you have apr-devel and apr-util-devel installed, as the link says?

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon.030-2 1001-310
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hanover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: multiples instances of log4cxx

2012-10-24 Thread Thorsten Schöning
Guten Tag Oscar Pernas,
am Mittwoch, 24. Oktober 2012 um 16:14 schrieben Sie:

> Is log4cxx a singleton? could I have different instances of log4cxx in
> the same process?

This should answer your question with no on dynamic linking like yours.

http://mail-archives.apache.org/mod_mbox/logging-log4cxx-user/200408.mbox/%3c856dbbce-f622-11d8-b017-000393b97...@apache.org%3E

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: multiples instances of log4cxx

2013-01-23 Thread Thorsten Schöning
Guten Tag Oscar Pernas,
am Mittwoch, 23. Januar 2013 um 13:29 schrieben Sie:

> What I'm doing wrong? I think that Im linking with the correct dinamic 
> library...

Did you read my quoted link? The behavior you see is intended on
dynamic link libraries.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: log4cxx - reaching out for interested developers

2013-04-18 Thread Thorsten Schöning
Guten Tag Christian Grobmeier,
am Donnerstag, 18. April 2013 um 11:35 schrieben Sie:

> Lets hope a few more people are interested, then we might have a chance to go 
> to incubation.

"Interest" shouldn't be a problem at all, I'm definitely, because I
switched a lot of our projects to log4cxx within the last 2 or 3
years. I even svnsync'ed all log4cxx code base for days after I read
you considering moving the project to attic. ;-) But doing active
development or releases is another thing, we are only a small company
of 3 devs and therefore simply don't have the resources to invest a
valuable amount of time into log4cxx development on a regular basis.

Besides that, what I'm able and willing to do is to provide patches
for bug fixes, any further development we do for our requirements and
give some support on the mailing list if I'm able to help. From what I
understand this should all be a lot easier if log4cxx moves (back?) to
incubator.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: RollingFileAppender Exception

2013-05-06 Thread Thorsten Schöning
Guten Tag dolbydc,
am Dienstag, 7. Mai 2013 um 01:01 schrieben Sie:

> log4cxx: Exception during rollover
> log4cxx: No output stream or file set for the appender named
> [appxNormalAppender].
[...]
>class="org.apache.log4j.FileAppender">
>   
>   
>   
> 
>   
>   

There's no filename configured, this may work because of some defaults
in your development environment, but may can't because of missing
permissions or whatever in other environments. You shouldn't use empty
layout configurations, too.

http://apache-logging.6191.n7.nabble.com/help-RollingFileAppender-xml-configuration-td31386.html
http://www.yolinux.com/TUTORIALS/Log4cxx.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: RollingFileAppender Exception

2013-05-07 Thread Thorsten Schöning
Guten Tag dolbydc,
am Dienstag, 7. Mai 2013 um 17:41 schrieben Sie:

> Thanks for the reply.  I am not sure what happened with my original paste,
> but these are the settings I have within the appxNormalAppender appender
> declaration.  I do have a filename.

I can't see anything but if you configured a filename then check
permissions on the path configured.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: C++ using Qt and Log4cxx does not show in console

2013-05-21 Thread Thorsten Schöning
Guten Tag Mike,
am Dienstag, 21. Mai 2013 um 19:44 schrieben Sie:

> I am attempting to use log4cxx to write to the Visual Studio (2008)
> console.  However, I am using a Qt library in a Win 32 application
> that  does not use (and won't work) std::cout or std::cerr to print to the 
> console .

Could you give some more details about why your QT library doesn't
support stdout/stderr or what it is doing with those? Maybe one can
provide some alternatives, but doesn't know exactly what the problem
with the QT library is.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Compiling with Visual Studio

2013-06-04 Thread Thorsten Schöning
Guten Tag Dave Arndt,
am Dienstag, 4. Juni 2013 um 19:01 schrieben Sie:

> Is Log4cxx still being supported?  Or is it dormant (or maybe dead)?

That's an ongoing question, but it's likely that you won't get any
new/updated project files any time soon unless you create them on your
own. And share them of course on the list. ;-)

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: faild to build log4cxx => undefinde reference to `_imp__apr_xml_parse_file@20'

2013-07-09 Thread Thorsten Schöning
Guten Tag Alexandru Zbârcea,
am Dienstag, 9. Juli 2013 um 11:35 schrieben Sie:

> On windows, you can't have:
> PATH: /usr/local/bin

Of course you can using Cygwin or MSYS, both providing a POSIX
environment for MinGW.

http://stackoverflow.com/a/792142/2055163

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: log4cpp to log4cxx migration changes

2013-07-18 Thread Thorsten Schöning
Guten Tag Ramakrishna S,
am Donnerstag, 18. Juli 2013 um 08:33 schrieben Sie:

> One more function PropertyConfigurator::clearConfiguration(); is also missing 
> in log4cxx.

It may be not enough to only mention missing functions, as I'm sure a
lot of people on the list don't know log4cpp good enough. You should
at least describe what those functions are doing in their context in
log4cpp and/or why you need those functionality in your use case. It
may be simply be that it is not needed in log4cxx or that log4cxx
provide other concepts to achieve your goal.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Defining logstreams in a header

2014-01-13 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Montag, 13. Januar 2014 um 21:26 schrieben Sie:

> logstream << Level::getInfo() << "Player started with SYPHON " <<
> SYPHON << ", FBO " << FBO << ", DEMO " << DEMO << LOG4CXX_ENDMSG;  

Isn't there code missing which checks the current level, outputs your
logstream etc.? Using the macros the statement would look something
like the following:

LOG4CXX_INFO(logger, "Player started with SYPHON " << SYPHON << ", FBO " << FBO 
<< ", DEMO " << DEMO << LOG4CXX_ENDMSG);

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Defining logstreams in a header

2014-01-13 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Montag, 13. Januar 2014 um 23:03 schrieben Sie:

> Didn't realize I could macro like that.

It's one of the documented suggested solutions:

> Logging requests are made by invoking a method of a logger instance,
> preferrably through the use of LOG4CXX_INFO or similar macros which
> support short-circuiting if the threshold is not satisfied and use
> of the insertion operator (<<) in the message parameter.

https://logging.apache.org/log4cxx/

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Logging to memory mapped files

2014-01-16 Thread Thorsten Schöning
Guten Tag Rhys Ulerich,
am Mittwoch, 15. Januar 2014 um 16:11 schrieben Sie:

> Yeah.  I was thinking that one would toss the file onto something
> RAMish.  But you're right that it won't have the performance profile
> you want.

Why would writing to a RAM-disk without buffering suffer performance?
It may be slower than using memory mapped files with buffering, but
the only problem coming into my mind would be filesystem overhead of
the RAM-disk without buffering and that should be minimal because you
don't change the file structure much but only call fsync pretty often.

Depending on one's setup the persistant logging could be implemented
outside the application by simply rsyncing the RAM-disk contents to a
more persistent storage, which may even improve overall application
performance because it doesn't need to log to two different targets
anymore.

I think it's worth measuring your approach.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: how to retain values using configureAndWatch()

2014-02-21 Thread Thorsten Schöning
Guten Tag Nandan S,
am Freitag, 21. Februar 2014 um 04:19 schrieben Sie:

>Is there anyway  the values set in program can be retained after
> reloading the configuration file by configureAndWatch() method.

Doesn't look like, what you could do is overriding
DOMConfigurator::configureAndWatch from domconfigurator.cpp with an
own implementation, which doesn't use the default XMLWatchdog, but
again another subclass of those from your which overrides the method
doOnChange. Both implementations seem fairly easy and you only need to
call the base of doOnChange and afterwards your code to change the
configuration.

If you don't want to take this effort your best bet would be to not
use hard coded filenames, but simply something like environment
variables which can be set differently in the rpogram using your log
configuration. In the following example ${mandant} is coming from the
env set by the application:





Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: how to redirect log4cxx console messages

2014-02-24 Thread Thorsten Schöning
Guten Tag Nandan S,
am Montag, 24. Februar 2014 um 12:53 schrieben Sie:

> Hi ,

Please don't post each of your questions to both the dev and users
mailing list, this will only make it unnecessary hard to follow the
discussions. Choose one, preferable the users mailing list because
it's main purpose is support for our users like you are. :-)

> Both the messages were displayed in console. But, i am designing my
> application which uses log4cxx, in such a way that it won't have any console
> window. In such a case where the messages logged ?

The internal logging only uses STDOUT and STDERR, much like a chicken
and egg problem. It's hard to provide more if the errors already occur
while providing that "more".

>This is required for debugging to check what's wrong. Without the
> messages it will be difficult to identify what's the error. 

You can have a look at log4cxx/helpers/loglog.h and it's
implementation to see if you may adopt it to use some "more" which
better fit your environment. the only thing coming into my mind
currently is to redirect STDOUT and STDERR on your own in your
application.

>Also, does log4cxx throw any exceptions which can be handled in the
> application which uses it ?

Doesn't like, errors are only logged. Have a look at
DOMConfigurator::doConfigure in domconfigurator.cpp.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: how to use errorHandler

2014-02-25 Thread Thorsten Schöning
Guten Tag Nandan S,
am Dienstag, 25. Februar 2014 um 09:21 schrieben Sie:

> I getting following error while using the errorHandler. Request help in
> proper usage of errorHandler.
> -
> log4cxx: Could not instantiate class
> [org.apache.log4j.varia.FallbackErrorHandler].
> log4cxx: Class not found: org.apache.log4j.varia.FallbackErrorHandler
> -

Which version are you using? 0.10.0 has been released 2008-04-03, but
there were changes afterwards to fallbackerrorhandler.h and other
files regarding error handling afterwards. Additionally, there's a
test called errorhandlertestcase which seems to successfully use a
configuration with FallbackErrorHandler.

You could try using the current trunk codebase which builds and passes
the tests on most of the systems the current devs seem to use.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: how to use errorHandler

2014-02-25 Thread Thorsten Schöning
Guten Tag Nandan S,
am Dienstag, 25. Februar 2014 um 10:14 schrieben Sie:

> Is my configuration file correct ?

It looked correct to me, but you can compare with:

trunk\src\test\resources\input\xml\fallback1.xml

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Directing windows logging data to the active app console

2014-02-26 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Mittwoch, 26. Februar 2014 um 17:53 schrieben Sie:

> I'm using LOG4CXX in a Microsoft application, and I'm
> unable to get access to the output via the standard application
> console.  In Unix and OS X environments, stdout is sufficient.  I
> know it's different in MS, so I was hoping someone knew what appender I 
> should be using.

STDOUT etc. are available under Windows as well, there shouldn't be
any difference. But if you have a GUI application, main vs. _wmain or
WinMain or stuff, there's simply no console which can show your
messages, but that has nothing to do with Log4cxx and it can't
influence this. At least form my knowledge. :-) So if you are missing
a console, you need to create one using AllocConsole or such on your
own.

http://msdn.microsoft.com/en-us/library/windows/desktop/ms682528(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/ms681944(v=vs.85).aspx

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: getRootLogger() thread-safe?

2014-03-10 Thread Thorsten Schöning
Guten Tag Kaspar Fischer,
am Montag, 10. März 2014 um 03:20 schrieben Sie:

> Is getRootLogger() thread safe?

Looks like the same problem as in LOGCXX-394 to me.

https://issues.apache.org/jira/browse/LOGCXX-394

> RepositorySelectorPtr& LogManager::getRepositorySelector() {
>//
>// call to initialize APR and trigger "start" of logging clock
>//
>APRInitializer::initialize();
>static spi::RepositorySelectorPtr selector;
>return selector;
> }

> LoggerRepositoryPtr& LogManager::getLoggerRepository()
> {
> if (getRepositorySelector() == 0)
> {
> LoggerRepositoryPtr hierarchy(new Hierarchy());
> RepositorySelectorPtr selector(new 
> DefaultRepositorySelector(hierarchy));
> getRepositorySelector() = selector;
> }
>
> return getRepositorySelector()->getLoggerRepository();
> }

> LoggerPtr LogManager::getRootLogger()
> {
> // Delegate the actual manufacturing of the logger to the logger 
> repository.
> return getLoggerRepository()->getRootLogger();
> }

Could try to just remove the "static" in the following line?

>static spi::RepositorySelectorPtr selector;

If that works, we'll consider just removing that on trunk as well,
like with LOG4CXX-394.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: getRootLogger() thread-safe?

2014-03-11 Thread Thorsten Schöning
Guten Tag Kaspar Fischer,
am Montag, 10. März 2014 um 18:32 schrieben Sie:

> Static local variables are not thread-safe so it looks to me as if
> you want to change that – from a user's perspective, it's nice to be
> able to assume that getRootLogger() is thread-safe. What do you think?

I tend to agree, we fixed the same problem in LOGCXX-394 as well. I
created a new bug and provided a patch for others to review:

https://issues.apache.org/jira/browse/LOGCXX-430

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Status of log4cxx under Windows using VS 2010

2014-03-18 Thread Thorsten Schöning
Guten Tag Joseph Fradley,
am Dienstag, 18. März 2014 um 15:17 schrieben Sie:

> http://www.codeproject.com/Tips/492585/How-to-build-log4cxx-with-Visual-Studio-2010

The code changes should no longer be necessary if you use trunk, we
had some bugs for those changes and already applied them. though I
don't know the numbers anymore.
Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Status of log4cxx under Windows using VS 2010

2014-03-18 Thread Thorsten Schöning
Guten Tag Joseph Fradley,
am Dienstag, 18. März 2014 um 18:11 schrieben Sie:

> Thank you. Is Ant the preferred way to build log4cxx? I don't see the VS 
> project files any more.

The project files are only part of a release, you can create those
with ANT on your own but shouldn't be necessary. At least ANT works
with VS 2013 Express for me.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Status of log4cxx under Windows using VS 2010

2014-03-21 Thread Thorsten Schöning
Guten Tag Oscar Pernas,
am Freitag, 21. März 2014 um 10:19 schrieben Sie:

> I've compiled log4cxx in vs2010 following the same HOW-TO.

I would suggest using a current trunk with ANT following the official
docs, there shouldn't be any changes to the code necessary anymore to
successfully compile. If your errors still persists, we can dig into
those further. The ANT build provides running of some tests as well to
see if the created lib is generally usable.

http://logging.apache.org/log4cxx/source-repository.html
http://logging.apache.org/log4cxx/building/ant.html

> Now, If I start debugging, when I call to log4cxx configure method,
> an std::length_error is thrown only in debug. 

If this error persists with trunk, a stack trace would be helpful.

> Could be a project configuration problem? When are you planning to
> release a version with vs2010 support?   

There's no release date yet.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Does log4cxx substitute environment variables in config files?

2014-03-24 Thread Thorsten Schöning
Guten Tag RUOFF, LARS (LARS),
am Montag, 24. März 2014 um 17:04 schrieben Sie:

> I heard that Log4J substitutes environment variables in log
> configuration files, that is, it is able to handle declarations like
[...]
> Can log4cxx do this too?

Yes.

> Especially interested in v0.9.7, as I’m forced to use that version.

Should work there as well, at least the code is present like in newer
versions. You may need to start debugging in DOMConfigurator::subst
and follow the code from there. It works in 0.10.0 and above, because
I use env vars substitution in 0.10.0 myself.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Clearing All Loggers from the Logger Repository.

2014-04-01 Thread Thorsten Schöning
Guten Tag Nandan S,
am Dienstag, 1. April 2014 um 17:09 schrieben Sie:

> does log4cxx have a direct function like repo->deleteLogger(). ...

Doesn't look like and anyways I would think this is somewhat complex
to achieve. How should callers with to be deleted loggers deal with
this situation or the non working but still aquired loggers themselfs?

> 2) Suppose if i update the "customLogger3" to "customLogger4" while logging
> in progress, Why is it not updating the Logger Repository to have only

How do you update a logger? I can't see any suitable method.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: clearing Loggers from logger repository

2014-04-03 Thread Thorsten Schöning
Guten Tag Nandan S,
am Donnerstag, 3. April 2014 um 12:20 schrieben Sie:

> But My requirement is if “customLogger1” is deleted or modified in
> configuration file, it must by default set to root logger.
[...]
> Do let me know, how can i achieve this ?

As with your(?) previous question some weeks ago, I would suggest
overriding XMLWatchdog::doOnChange in domconfigurator.cpp and
reset/clean the whole configuration on each iteration using
LogManager::resetConfiguration.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Loglines before a crash

2014-04-05 Thread Thorsten Schöning
Guten Tag Oscar Pernas,
am Freitag, 4. April 2014 um 14:45 schrieben Sie:

> I don't know, but I think that log4cxx enqueue messages too,
> because being synchronous will affect the performance.

This depends on the appenders used, by default e.g. FileAppenders do
not buffer I/O. And yes, that will impact performance on heavy
tracing, but you don't need to trace at all, can easily use different
loggers with different log levels to reduce the amount of data written
and even detect the current log level in any piece of code to decide
if you want to log or not. And you can decide to use buffered I/O
easily using the configuration IMHO.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Clearing All Loggers from the Logger Repository.

2014-04-10 Thread Thorsten Schöning
Guten Tag Nandan S,
am Donnerstag, 10. April 2014 um 07:02 schrieben Sie:

> When my software is running, i delete one of the logger's.

You still didn't explain how exactly you are doing that because there
don't seem to be an API do delete loggers.

>In any case, if the configuration file is reloaded, why should the
> repository contain the deleted loggers ?. I feel this is somewhat incorrect.

This depends on how or if at all you deleted the loggers and if they
are still configured in the file etc. From your explanation those
questions are not clearly answered to me.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Clearing All Loggers from the Logger Repository.

2014-04-10 Thread Thorsten Schöning
Guten Tag Nandan S,
am Donnerstag, 10. April 2014 um 10:43 schrieben Sie:

>   Loggers will be deleted/added from configuration file manually.

And that's the point: There's no logic or API to delete loggers and
during reloading a configuration file the repository is not
automatically reset, which means changes are only added or existing
objects reconfigured. Deleted loggers are not recognized as such and
stay in the repo.

The only option you seem to have is to do as I said before: Override
the used file watcher and reset the repo on your own. This way each
reload of the configuration file starts newly from scratch.

I'm pretty sure there won't be any other solution in the near future,
because there are too many open questions to answer: One needs to
recognize deleted objects from the configuration and delete those from
the repository, but they might still be in use somewhere around 
an application etc. This doesn't sound like an easy task.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Clearing All Loggers from the Logger Repository.

2014-04-10 Thread Thorsten Schöning
Guten Tag Alexandru Zbarcea,
am Donnerstag, 10. April 2014 um 23:04 schrieben Sie:

>  Log4j has the:
> log4j.appender.example.MaxFileSize=500KB
> log4j.appender.example.MaxBackupIndex=10
>  (xml file should be ~ the same)
>  I know this was in plan to implement of not already. This is the
> proper way to keep the logs small. Do not delete them manually if
> you do not want to restart the app.

One of us misunderstands his problem: I don't think it's about log
file sizes, but changes in the log configuration itself on file level
and how or if at all they are reflected if a file watcher is used. And
some changes, like deleted loggers, are simply not recognized as such
because it's a complex topic to do so.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Clearing All Loggers from the Logger Repository.

2014-04-11 Thread Thorsten Schöning
Guten Tag Alexandru Zbarcea,
am Freitag, 11. April 2014 um 14:32 schrieben Sie:

>  It is not easy. But the question remains, is it an acceptable 
> feature request? If yes, ye can create a ticket, and we'll see when it will 
> be implemented.

From my point of view what he wants can be achieved by implementing
callbacks for the filewatcher, this should be more easy to implement
than removing single loggers alone.

https://issues.apache.org/jira/browse/LOGCXX-429

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: can't make apache-log4cxx-0.10.0

2014-05-16 Thread Thorsten Schöning
Guten Tag Andreas Meyer,
am Freitag, 16. Mai 2014 um 18:10 schrieben Sie:

> Every help is very much appreciated!

Please use a trunk checkout using Subversion, a lot of bug fixes have
been applied during the last month, which just didn't make it into a
official release yet. Besides that, the current trunk passes all tests
and has been tested by other users. If your problem persist, please
provide some more details like the compiler or IDE you use, which
platform etc.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Question regarding the technical details of a log rollover

2014-05-21 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Mittwoch, 21. Mai 2014 um 19:56 schrieben Sie:

> I'm pretty sure the answer is that it must be actively logging, and
> that does in fact make sense since I doubt you are trying to
> actively parse log files.

No we don't, but the more interesting question is if the app hast to
log shortly after midnight to rollover or if hours after midnight is
enough if it's the first log statement. But I don't know the answer.
;-)

> So I guess the question is how do I set
> the daily rollover to happen at a certain hour, rather than at midnight?

I don't think you can't.

http://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1_daily_rolling_file_appender.html

What about a different approach? This way you are not tied to logging
occurring shortly after midnight, but need to take care about unneeded
files on your own.











Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: log4cxx and threads

2014-06-01 Thread Thorsten Schöning
Guten Tag Nandan S,
am Samstag, 31. Mai 2014 um 15:31 schrieben Sie:

> I have used log4cxx static library in my threaded application and facing
> issues with respect to logging. I would like to log messages from each
> thread in a different file. To achieve this, i am calling log4cxx
> setfilename() method in each thread. 

There's no such generic method, therefore I expect you mean
setFileNamePattern from RollingPolicyBase for a RollingFileAppender.

> But each thread is not logging in it's specific file and the output is
> jumbled in different files. Is it that, log4cxx has static variables due to
> which i am observing this issue.

Besides using some static variables, from my understanding this is by
design, because one appender should always work the same in every
instance it is used. An appender is just a name or logical container
for some output behavior and I don't see why one and the same name or
logical container or however you want to call it should behave
differently under different contexts.

Best practice in threaded environments is to use different loggers and
appenders for each thread or Nested Diagnostic Contexts to
differentiate log statements to the same logger for different threads.

http://logging.apache.org/log4cxx/usage.html

If different loggers per thread are to much configuration overhead for
you, I would suggest configuring some template logger for every thread
and programmatically create new loggers with new appenders for each
thread based on the template logger. You would simply need to create
new logger and appender objects using LOG4CXX API and provide most of
the properties form the configured template logger and appender, just
changing logger and file names to be specific for each thread.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Problem building log4cxx 0.10.0 -- missing source files?

2014-06-03 Thread Thorsten Schöning
Guten Tag Todd Andrews,
am Dienstag, 3. Juni 2014 um 21:03 schrieben Sie:

> The URL mentions apr-1.2.11-win32-src.zip and
> apr-util-1.2.10-win32-src.zip but the download link only has one
> .zip file

APR is an independent project you need to download. Besides that,
0.10.0 contains bugs which are already fixed on trunk, which may
prevent a successful build. You should use the current trunk where
most of those bugs have been fixed, there's just no official release
yet and you may need to use ant to build the sources because trunk
doesn't provide project files for Visual Studio. Only releases have
those, but you may create them on your own using ant.

http://apr.apache.org/download.cgi
http://logging.apache.org/log4cxx/building/ant.html
http://logging.apache.org/log4cxx/source-repository.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Problem building log4cxx 0.10.0 -- missing source files?

2014-06-08 Thread Thorsten Schöning
Guten Tag ToddA,
am Sonntag, 8. Juni 2014 um 02:18 schrieben Sie:

> Thank you for your reply, but after visiting the various links you
> provided, as a noob I can see it's a lotof work to build from
> the latest source to be sure I get the latest bug fixes.

It's not that hard, you just need to download apr and apr-util, unpack
them in a special folder structure, download ant and maven, save them
wherever you want, make them available to your shell and call some
maven scripts. It's easier than it may sound and there simply are no
other more current binaries available. And I doubt that VC++ 6 is that
common on the user or dev base of the project that one can simply
provide his binaries.

Give it a try. :-)

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: log4cxx v0.9.7 in multi-threaded environment

2014-06-18 Thread Thorsten Schöning
Guten Tag RUOFF, LARS (LARS),
am Mittwoch, 18. Juni 2014 um 09:56 schrieben Sie:

> (Unfortunately, we are bound to using v0.9.7 because we did some
> in-house extensions based on it. Upgrading to latest version is not an 
> option.)

You should make it an option. ;-)

> So, from the top of your head, were there any major issues with 0.9.7 and 
> multi-threading?

Yes, there where some bugs fixed regarding multithreading in current
trunk and even there are some still open, but it should be usable out
of the box now. Besides that, there were a lot of other fixes applied
as well. Some of the bugs regarding threading:

https://issues.apache.org/jira/browse/LOGCXX-430
https://issues.apache.org/jira/browse/LOGCXX-416
https://issues.apache.org/jira/browse/LOGCXX-411
https://issues.apache.org/jira/browse/LOGCXX-394
https://issues.apache.org/jira/browse/LOGCXX-282
https://issues.apache.org/jira/browse/LOGCXX-278

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Socket appender improvements

2014-07-01 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Dienstag, 1. Juli 2014 um 18:12 schrieben Sie:

> What I'm trying to do now is create a way to alert myself when
> there are error level logs.  I know I can use the smtp appender but
> I don't love this because the credentials are stored locally.  I
> like the idea of sending error messages over a socket, and then
> having a server based solution that will email/notify/etc.

What's the difference to have a mail server allowing anonymous access
or only access from specific hosts and is only able to send mails to
specific addresses etc.? You seem to just reinvent the wheel and would
need to create a server on your own, I don't see any benefits in that
approach. There might even be something already available based on
Syslog or Windows NT event log or such, depending on your environment.

> Also so I am totally clear, what is the most up to date repo/branch?

trunk@HEAD, test with that and afterwards you may have acloser look
into the problem you are seeing.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Socket appender improvements

2014-07-01 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Dienstag, 1. Juli 2014 um 18:36 schrieben Sie:

> https://github.com/apache/log4cxx/tree/trunk

This is not the official repo, use the following:

http://logging.apache.org/log4cxx/source-repository.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Socket appender improvements

2014-07-01 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Dienstag, 1. Juli 2014 um 21:27 schrieben Sie:

> I am attaching the output from both commands, any guidance is
> appreciated.  Right now I'm building on OS X, next windows.

autogen.out already contains some errors, but I have no idea if those
are important. They sounds like if they were. ;-) You could give Ant
and/or Maven a chance.

http://logging.apache.org/log4cxx/building/ant.html
http://logging.apache.org/log4cxx/building/maven.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Socket appender improvements

2014-07-02 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Mittwoch, 2. Juli 2014 um 19:04 schrieben Sie:

>   1 - Despite the command line options it will not build a static library.  
> I've tried 
>       -Denable-shared=no -Denable-static=yes
>       -Denable-static=yes
>   both times it just makes a dylib  

It looks to me enabled-* is not supported, but documented only in the
help of the build file itself, not even on the project page. The
project page mentiones "lib.type" and if I use that with static, I
only get a static lib.

> -Dlib.type  Library type to create, choice of shared (default), static.

I will update the help.

Besides that, the tests seem to fail for me on Windows, don't know
what that means for the lib.

https://issues.apache.org/jira/browse/LOGCXX-438

> 2 - dylib is fine except I can not change the dynamic library
> install name.  For xcode I've found it best to set the dynamic
> library install name to
> "@executable_path/../Frameworks/log4cxx_db.dylib", but the ant built
> dylib is "liblog4cxx.dylib" and I seem to find no option to change
> this in the build.xml file, nor can I find this general option for ant

So what's your goal, changing the file name to "log4cxx_db.dylib" only
or get the mentioned path altogether? I don't think this is possible
currently, compiling and linking uses cpptasksm which is an abandoned
project right now and some things are even hard coded there and simply
can't be influenced by the ant build.

> 3 - I see no way to create universal binaries for OS X, or even
> just specify a x86 vs x64 bit architecture.

I think that's cpptasks not supporting such things, too.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Socket appender improvements

2014-07-02 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Mittwoch, 2. Juli 2014 um 20:17 schrieben Sie:

> Sounds like ant won't work for me.  How are the release binaries
> built for the various operating systems?

Does the project provide some?! ;-) The only thing I can see are
source releases.

> I can give Maverick a shot
> but I'm worried all non-native (xcode, visual studio) solutions are
> going to lead me into a limitation.  I also know making xcode and
> visual studio projects myself are going to be far more time
> consuming than I have resources for at the moment.  

Ant is capable of generating projects, although I didn't ever test
myself, or the old releases contain some which could be used as
templates. AFAIR we didn't add or rename files, therefore you may try
to simply copy new source files over to the old project files.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Socket appender improvements

2014-07-02 Thread Thorsten Schöning
Guten Tag Lucas Vickers,
am Mittwoch, 2. Juli 2014 um 21:11 schrieben Sie:

>  Ha, that's right, isn't it.

I didn't want to be rude, I'll only had in mind that there was a new
team forming around Log4cxx and I simply really don't know if there
are any official binaries out there. :-)

>   I do recall trying to copy and paste files and having it not work
> for me.

Most of those problems where because of bugs in 0.9.7 or 0.10.0, I had
the same problems years ago, but many of them has been fixed in trunk
in the meanwhile. Though I didn't had the chance to give it a try
myself, yet. I'm still working with my own 0.10.0 based project files
and applied patches.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Status of log4cxx under Windows using VS 2010

2014-08-28 Thread Thorsten Schöning
Guten Tag ToddA,
am Donnerstag, 28. August 2014 um 07:28 schrieben Sie:

> Can you clarify what you mean by "shouldn't be necessary"?

It shouldn't be necessary to use ANT to create VS project files
because ANT can directly build your project using VS. You don't need
the intermediate step of the VS project files.

> If ANT is not necessary

It is. ;-)

> what are the proper steps to build log4cxx from trunk?

Follow the docs using ANT and optionally Maven, because Maven is
currently just used as a frontend to the build logic implemented in
ANT, and ask again if things don't work.

http://logging.apache.org/log4cxx/building/index.html

> I'm
> attempting to build log4cxx using VC6 to integrate it with a VC6 project I'm
> working on.

You have the option of creating the project files for VS, but I guess
you don't need to, because ANT builds the project with my VS 2013
Express directly.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Using VC6 on XP to build log4cxx from latest trunk [was Re: Status of log4cxx under Windows using VS 2010]

2014-09-01 Thread Thorsten Schöning
Guten Tag ToddA,
am Dienstag, 2. September 2014 um 06:13 schrieben Sie:

> 8. The steps at http://ant-contrib.sourceforge.net/ say to, "See the cc
> tasks for installation instructions for cpptasks." When I go to the link for
> 'cc' (http://ant-contrib.sourceforge.net/cpptasks/index.html) it says,
> "Place cpptasks.jar into Ant's classpath by placing in Ant's lib 
> directory..."

> But now I'm stuck because there is no cpptasks.jar in cpptasks-1.0b5.zip.

Use maven, it's easy to install as well and will download cpptasks
form a maven repository as Jar, else you might download it manually
form whatever source you like. But I would prefer using maven, that's
what I did as well.

http://mvnrepository.com/artifact/ant-contrib/cpptasks/1.0b5

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Using VC6 on XP to build log4cxx from latest trunk

2014-09-02 Thread Thorsten Schöning
Guten Tag ToddA,
am Mittwoch, 3. September 2014 um 07:43 schrieben Sie:

> (I hope it's not
> a problem that I'm using the latest version of Maven, 3.x, and not 2.x as
> listed in this URL.)

No:

> C:\Users\tschoening>mvn --version
> Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 
> 17:22:2
> 2+0200)

> So a new dependency has surfaced: Where do I get the necessary POM file?

pom.xml is the file and needed and should be contained in your
checkout, depending on what you checked out exactly you might just be
in the wrong path. You need to execute maven directly from the
directory containing pom.xml, should be trunk.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Using VC6 on XP to build log4cxx from latest trunk

2014-09-07 Thread Thorsten Schöning
Guten Tag ToddA,
am Sonntag, 7. September 2014 um 02:32 schrieben Sie:

> I had used TortoiseSVN Repository Browser to download trunk and didn't
> realize it would be incomplete.

It normally isn't, it doesn't matter which client or OS you use to
checkout, you should always get the same content. Did you maybe only
checkout "src" instead of trunk?

> Just to clarify, after I did 'svn checkout' on my Linux box I transferred
> the etnire contents to Win XP. I'm still doing the build on Win XP and not
> Linux.

That shouldn't be necessary and is unsupported by Subversion as well,
you should avoid such things. Instead checkout using Tortoise again
and double check the paths you select in the browser and get
afterwards in your file system. I user Tortoise myself, there really
is no problem with checking out trunk or whatever. I even checked out
the whole directory structure with all tags and branches.

> [ERROR] C:\Documents and
> Settings\taa\Desktop\project92\apache-log4cxx-from-
> svn.140905\src\ant\common.xml:102: Execute failed: java.io.IOException:
> Cannot run program "where": CreateProcess error=2, The system cannot find
> the file specified
[...]
> Where do I get the program 'where'?

This is by default available on newer versions of Windows, so just buy
a Windows 8 and get happy. ;-) I removed the logic which used
where.exe, it has been introduced to make the build usable with
another compiler, but it looks as if this goal can't be reached with
the current approach anyways. So update your trunk and give it another
try.

https://issues.apache.org/jira/browse/LOGCXX-421

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Using VC6 on XP to build log4cxx from latest trunk

2014-09-07 Thread Thorsten Schöning
Guten Tag ToddA,
am Sonntag, 7. September 2014 um 20:14 schrieben Sie:

> 1) Multiple errors when building apr_dbd_odbc.c. Of course, odbc is one of
> the appenders I do want to use with log4cxx. :(

You need to provide all of the errors, ODBC should be activated by
default. There might be some problem with your old VC6, I guess only
few people are using it anymore. The build generates or edits some
header files as well, have a look around apu.h*. For some compilers,
like Borland C++ Builder, I had to change the build to include
stdint.h for example, maybe your are missing some headers as well.

> 2) Identical error when compiling xmlparse.c and apr_xml.c:
>[cc] C:\Documents and Settings\taa\Desktop\project92\apr-
> util\xml\expat\lib\expat.h(83) : note C6311: unknown(0) : see previous
> definition of 'XMLPARSEAPI'

No idea currently, only found the following which suggests you are
defining the same macro differently for some reason.

http://stackoverflow.com/questions/2676822/how-do-i-inhibit-note-c6311-in-microsoft-c-compiler

> [ERROR] C:\Documents and
> Settings\taa\Desktop\project92\apache-log4cxx-from-
> svn.140907\src\ant\apr-util-build.xml:284: cl failed with return code 2

Error code 2 normally means a missing file somewhere, you may use
Process Monitor from Sysinternals to follow the build process and see
which file is missing or try "mvn -X ..." which generates a lot of
debug output.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow/* Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/* 
 * apu.h is duplicated from apu.hw at build time -- do not edit apu.h
 */
/* @file apu.h
 * @brief APR-Utility main file
 */
/**
 * @defgroup APR_Util APR Utility Functions
 * @{
 */


#ifndef APU_H
#define APU_H

/**
 * APU_DECLARE_EXPORT is defined when building the APR-UTIL dynamic library,
 * so that all public symbols are exported.
 *
 * APU_DECLARE_STATIC is defined when including the APR-UTIL public headers,
 * to provide static linkage when the dynamic library may be unavailable.
 *
 * APU_DECLARE_STATIC and APU_DECLARE_EXPORT are left undefined when
 * including the APR-UTIL public headers, to import and link the symbols from 
 * the dynamic APR-UTIL library and assure appropriate indirection and calling
 * conventions at compile time.
 */

/* Make sure we have our platform identifier macro defined we ask for later.
 */
#if defined(_WIN32) && !defined(WIN32)
#define WIN32 1
#endif

#if defined(DOXYGEN) || !defined(WIN32)
/**
 * The public APR-UTIL functions are declared with APU_DECLARE(), so they may
 * use the most appropriate calling convention.  Public APR functions with 
 * variable arguments must use APU_DECLARE_NONSTD().
 *
 * @fn APU_DECLARE(rettype) apr_func(args);
 */
#define APU_DECLARE(type)type
/**
 * The public APR-UTIL functions using variable arguments are declared with 
 * APU_DECLARE_NONSTD(), as they must use the C language calling convention.
 *
 * @fn APU_DECLARE_NONSTD(rettype) apr_func(args, ...);
 */
#define APU_DECLARE_NONSTD(type) type
/**
 * The public APR-UTIL variables are declared with APU_DECLARE_DATA.
 * This assures the appropriate indirection is invoked at compile time.
 *
 * @fn APU_DECLARE_DATA type apr_variable;
 * @note extern APU_DECLARE_DATA type apr_variable; syntax is required for
 * declarations within headers to properly import the variable.
 */
#define APU_DECLARE_DATA
#elif defined(APU_DECLARE_STATIC)
#define APU_DECLARE(type)type __stdcall
#define APU_DECLARE_NONSTD(type) type __cdecl
#define APU_DECLARE_DATA
#elif defined(APU_DECLARE_EXPORT)
#define APU_DECLARE(type)__declspec(dllexport) type __stdcall
#define APU_DECLARE_NONSTD(type) __declspec(dllexport) type __cdecl
#define APU_DECLARE_DATA __declspec(dllexport)
#else
#define APU_DECLARE(type) 

Re: Using VC6 on XP to build log4cxx from latest trunk

2014-09-08 Thread Thorsten Schöning
Guten Tag ToddA,
am Montag, 8. September 2014 um 08:55 schrieben Sie:

> I thought I did. I provided a link to the complete compile log, with all
> errors, here: http://pastebin.com/zpKfm7i9

Sorry, I've missed the link. Regarding ODBC, it seems intptr_t is
missing and needs to be included from somewhere, MSDN suggests
stddef.h. I've implemented a workaround for a maybe similar problem
for C++ Builder, but just can't remember anymore if it was for the
same missing types. Doesn't matter, the important thing is that it's
only applied if C++ Builder is the chosen compile, therefore the
workaround may work for you as well. Search apr-util-build.xml for
"bcc-needs-stdint" and do what it does manually to the mentioned
header file, either with the included stated there or stddef.h or
where ever the missing type comes from. If that fixes some of the ODBC
compile errors we can think of a way to include this workaround in the
build as well.

> I did a search through my build folders apache-ant-1.9.4, apache-log4cxx-
> from-svn.140907, apache-maven-3.2.3, apr, apr-util and there is only one file
> that defines XMLPARSEAPI: apr-util\xml\expat\lib\expat.h

That's bad, you need to test that on your own using #ifdef ... and
#error in expat.h right before the macro gets defined there.

> To see if I could make some progress in getting log4cxx to build, I decided
> to temporarily disable ODBC by editing apr-util\include\apu.hw and setting
> APU_HAVE_ODBC to zero. Here's the complete log: http://pastebin.com/qcHmZX4f

I guess the warnings there are because of your old compiler, that's
something you need to fiddle on your own... The ODBC error may be
removed using "with-ODBC=no", because the default behavior is "auto",
which enables ODBC by default on Windows. The documentation is wrong
in that part, I fixed that on trunk already but didn't update the
site.

Regarding fallbackerrorhandler.h, I guess the problem here is with
your old compiler as well, but have no idea right now. Have a look at
the file and object.h for the cast macros and see if you somehow can
get them working by rewriting or if they are needed at all...

Sorry, but I don't have the time to look into this any more detailed.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: log4cxx xml config

2014-09-11 Thread Thorsten Schöning
Guten Tag CREMARENCO Cosmin,
am Donnerstag, 11. September 2014 um 11:09 schrieben Sie:

> I would like to know if log4cxx (through the DOMConfigurator)
> accepts the same configuration options as log4j.

It should mostly, but you won't know until you try. It depend son
which appenders you have built in, some for Log4j added in the younger
past surely won't be available etc.

> We are using log4cxx 0.10.0.

The available appenders didn't change much in current trunk, if I
remember correctly, but they might became more reliable.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: log4cxx xml config

2014-09-11 Thread Thorsten Schöning
Guten Tag CREMARENCO Cosmin,
am Donnerstag, 11. September 2014 um 13:27 schrieben Sie:

> Is there any doc containing differences between log4cxx and log4j? I wasn't 
> able to find any.

There's none I'm aware of, you could of course publish your experience
here and we may start a survey of some kind with things known to not
work or such.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Using VC6 on XP to build log4cxx from latest trunk

2014-09-17 Thread Thorsten Schöning
Guten Tag ToddA,
am Mittwoch, 17. September 2014 um 03:20 schrieben Sie:

> This is discouraging. :(  In the research I had done, log4cxx kept turning up
> as recommended software and that it was compilable under VC6. I guess that 
> must
> have been true of the latest stable release, 0.10.0. It doesn't sound like the
> newer/next release of log4cxx can be built under VC6 any more.

Regarding the logs, fallbackerrorhandler.h has not been touched since
0.10.0. And regarding ODBC, I guess you just need to deactivate it for
the build as I said before.

> I guess it's not
> too surprising since VC6 is pretty old. Oh well, I tried, and thanks very much
> for your help. I still want to try to use log4cxx since it is so highly
> recommended, I'll just have to try a newer version of VC.

Luckily we have the express editions these days. :-)

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Using filters

2014-10-13 Thread Thorsten Schöning
Guten Tag Rakesh Sehgal,
am Montag, 13. Oktober 2014 um 21:05 schrieben Sie:

> I am trying to get log4cxx to use ExpressionFilter or
> StringMatchFilter or any other through a java based config file:
[...]
> I have tried using various combination of the above statements, but
> nothing seems to work. Just wanted to confirm,

Which version of log4cxx do you use? Did you try the current HEAD of
trunk? I didn't ever use those filters myself, but there are some
tests at least for stringmatchfilter available.

> Log4j.logger.foo.1.bar.2.mylogger =  OFF
> or
> MyClassname.cpp = OFF
>
> So, if the filter finds *mylogger* anywhere, it will not log those
> message. Please let me know if there is any other way to achieve this.

Your example is about loggers, not log messages. Why don't you just
deactivate the loggers you want? Or do you really want to filter
messages of any loggers using the same, special appender? The filter
examples in the source like in andfilter.h are all about appenders and
only make sense there. Depending on your exact use case, if filters
don't work you may even try to use some special appenders and
deactivate those in code depending on some condition. For that you
could e.g. override "doOnChange" of some file watch dog objects.

Self quote:

> As with your(?) previous question some weeks ago, I would suggest
> overriding XMLWatchdog::doOnChange in domconfigurator.cpp and
> reset/clean the whole configuration on each iteration using
> LogManager::resetConfiguration

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Using filters

2014-10-13 Thread Thorsten Schöning
Guten Tag Rakesh Sehgal,
am Dienstag, 14. Oktober 2014 um 00:06 schrieben Sie:

> Thanks for your reply. I am using the current HEAD for log4cxx, and just now 
> I found out that
> the stringmatchfilter works with the XML file

What does "works" exactly mean? Did you successfully configure a
stringmatchfilter using your wildcards for a XML configuration?
Because from the code it looks that your wild cards won't work at all,
stringmatchfilter only uses the "find" method of std::basic_string for
a match.

> I do want to use the logger, like in the example above, 
> I want to use some sort of a wildcard that would let me enable logging for 
> all those that
> match that criteria.

I guess that won't work and if you already build your loggers
dynamically you should find another way to deactivate them because
filtering completely rendered log messages just to ignore them looks
like a very ineffecient way.

The interesting question is when do you want to deactivate your
loggers: If it's on runtime by a changed configuration, watched by
filewatchdog, I would try to hook parsing of the configuration file
for a logger statement with your wildcards and search for those only
loggers on my own to set their logging level to OFF.

When your application only configures logging at startup time you only
need to hook the parsing logic for logger names, save all names with
your wildcards and after the whole logging has been set up you can
iterate over all loggers and set their logging level again to OFF.

You might as well try to override StringMatchFilter::decide to not use
plain "find" or have a look at LoggerMatchFilter, which doesn't seem
to support wildcards as well. Seems like there are different ways to
go, but you need to have a more detailled look on that on your own.

It doesn't seem that what you try to achieve is possible without any
coding just by configuration.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail:thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: log4cxx 0.9.7: Fix for memory leak in gnomexml.cpp when parsing configuration file (Linux)

2014-12-11 Thread Thorsten Schöning
Guten Tag Rhys Ulerich,
am Freitag, 12. Dezember 2014 um 04:41 schrieben Sie:

> Anyone recognize what we should review in trunk to see if we've got
> the same issue currently?

I would have guessed DOMConfigurator, but that works completely
different and gnomexml.cpp might have been some distribution specific
patch or something completely unrelated to the original codebase as
well. Don't bother anymore, if there's still a problem someone will
surely report it...

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: LOG4CXX Common DLL Logging

2015-01-12 Thread Thorsten Schöning
Guten Tag Hearne, S (Sean),
am Montag, 12. Januar 2015 um 13:55 schrieben Sie:

> Is it possible to have the logging from common.dll included in the
> log file of the executable that calls it? 

What's exactly the issue you have now, does it not work or didn't you
just try it or whatever? Because from my understanding everything
depends on the actual log configuration in use, which loggers are used
in the applications/DLL etc. Log4cxx should be usable as a DLL in
general, but if your common.dll e.g. uses some hard coded log
configuration with loggers you don't know and such, that's the real
problem which would have less to do with log4cxx itself.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: LOG4CXX Common DLL Logging

2015-01-12 Thread Thorsten Schöning
Guten Tag Hearne, S (Sean),
am Montag, 12. Januar 2015 um 14:45 schrieben Sie:

> but as either MyProg1 or MyProg2 can call the dll, how do I get the logger in 
> the dll?

You don't, in the DLL you normally would work with "CommonDll" or such
as logger and in your log4cxx configuration for each application you
just configure the logger "CommonDll" to use the same appender and
such as MyProg1, MyProg2 and so on. This way you can handle the log
statements from the DLL in each application as you like, without the
need to know in which application your DLL is used why.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: LOG4CXX Common DLL Logging

2015-01-12 Thread Thorsten Schöning
Guten Tag Hearne, S (Sean),
am Montag, 12. Januar 2015 um 15:59 schrieben Sie:

> I'll use a separate one for each exe.

You don't necessarily need to, because you can still have all your
appenders in the same file and some are used during runtime, some not.
But from my point of view it's a good approach to distinct on
application level and I would even suggest to follow MS naming
schemes like MyProg1.exe.log4cxx.xml, MyProg2.exe.log4cxx.xml and
such.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: stablishing a header when logs rotates

2015-01-19 Thread Thorsten Schöning
Guten Tag Oscar Pernas,
am Montag, 19. Januar 2015 um 13:00 schrieben Sie:

> I would like to add a header to each log file when the logfile
> rotates. There is any way to do it? is there any callback thrown when
> the log rotates?

It looks to me you need to implement your own RollingPolicy, because
those provide RolloverDescription-Objects which can provide additional
actions to do and those actions would be want you want to implement to
get things done. Have a look at TimeBasedRollingPolicy:

> RolloverDescriptionPtr TimeBasedRollingPolicy::initialize(
[...]
>  ActionPtr noAction;
>
>  if (currentActiveFile.length() > 0) {
>return new RolloverDescription(
>  currentActiveFile, append, noAction, noAction);
>  } else {
>  bRefreshCurFile = true;
>return new RolloverDescription(
>  lastFileName.substr(0, lastFileName.length() - suffixLength), append,
>  noAction, noAction);
>  }

You would need to implement a substitute for noAction.

http://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1rolling_1_1_rolling_policy.html
http://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1rolling_1_1_rollover_description.html
http://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1rolling_1_1_action.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Check if log4cxx been configured?

2015-02-12 Thread Thorsten Schöning
Guten Tag Hearne, S (Sean),
am Donnerstag, 12. Februar 2015 um 17:44 schrieben Sie:

> Log4net has the boolean variable:
> log4net.LogManager.GetRepository().Configured 

log4cxx provides something similar:

http://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1_log_manager.html#a8dbbae8c2efa0df0172c084cb14bb3a2
http://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1spi_1_1_logger_repository.html#a74ee52af71ff0e0b9efd1acd86b16164

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: How to completely disable logging?

2015-02-19 Thread Thorsten Schöning
Guten Tag Sergio Basurco,
am Donnerstag, 19. Februar 2015 um 12:47 schrieben Sie:

> I'm using a 3d party library (namely LIB) which uses log4cxx. I get an
> error when closing my application, that log4cxx appender was not found
> for some module.

Really appender and not logger? Are you able to post the complete
error here? The latter sounds like your LIB is pre-configuring
log4cxx, in which case you may or may not are able override it.

> I want to disable logging completely. From what I've found I can set a
> log4cxx.properties file. How can I completely disable logging using this
> file?

That depends on your LIB and how it configures log4cxx. By default
logging can easily be deactivated by settings the log level for all
loggers to NONE.

http://logging.apache.org/log4cxx/usage.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: How to completely disable logging?

2015-02-19 Thread Thorsten Schöning
Guten Tag Sergio Basurco,
am Donnerstag, 19. Februar 2015 um 15:29 schrieben Sie:

> Using LIB in a managed environment does not output the error. It's only
> when I use it through my wrapper that this happens. My best guess is 
> that log4cxx is looking for initialization properties and not finding it.

Read the following paragraph, that's what Log4cxx is doing
automatically. Everything else is up to the LIB and you need to ask
it's maintainer.

> Default Initialization Procedure

http://logging.apache.org/log4cxx/usage.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: How to completely disable logging?

2015-02-19 Thread Thorsten Schöning
Guten Tag Sergio Basurco,
am Donnerstag, 19. Februar 2015 um 17:44 schrieben Sie:

> Is there a way to undefine LOG4CXX_CONFIGURATIONoverride logger options   
>   externally?

If you don't define it yourself it's not used, if it used and not
defined by you it's defined by the LIB for any reason and you can't
override it.

> If I place a log4cxx.properties file next to my executable, I  
> get all sorts of errors from log4cxx.

But which? Your configuration file may simply be wrong or you may miss
some appenders in your config. Though if you just strip down to a root
logger and maybe a console appender and provide the root logger with
level NONE, there shouldn't be any logs anymore. Everything else
depends on the errors and what your LIB is doing. It may have some
config hard coded or such...

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Unit tests fail after log4cxx build on Raspberry Pi

2015-02-23 Thread Thorsten Schöning
Guten Tag Kelly Beard,
am Montag, 23. Februar 2015 um 20:19 schrieben Sie:

> I am attempting to build log4cxx 0.10.0 on a Raspberry Pi from
> current Apache sources.

If possible you should give trunk a try, though it's no official
release yet, it contains really a lot of bug fixes since 0.10.0.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Compiling on Windows

2015-04-22 Thread Thorsten Schöning
Guten Tag Robert Middleton,
am Mittwoch, 22. April 2015 um 04:31 schrieben Sie:

> I want to use log4cxx on a Windows-based project, and I'm wondering
> what the easiest way to compile it for Windows is?

I guess that heavily depends on your compiler and toolchain, not sure
if I read about QT on the list in the past, so you may be the first
one trying. I would try to start using ANT and see how it's going, my
experience using Cygwin is not the best if it comes to building
software, but I didn't ever try with log4cxx.

https://logging.apache.org/log4cxx/building/ant.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Segmentation fault: apr_pool_create_ex

2015-07-15 Thread Thorsten Schöning
Guten Tag Mathieu Malaterre,
am Mittwoch, 15. Juli 2015 um 09:47 schrieben Sie:

> Here is the crash I get [*].

I'm pretty sure I can't help you in detail, not enough C++ knowledge
as well, but there are quite some bugs filed already against Log4cxx
dealing with crashes especially in multithreaded environments.
Additionally, if I understand your file names correctly, you are using
version 0.10 of the lib? If that's the case try to use the current
trunk, there were a lot of bugfixes applied already.

https://issues.apache.org/jira/browse/LOGCXX-322
https://issues.apache.org/jira/browse/LOGCXX-389?jql=project%20%3D%20LOGCXX%20AND%20resolution%20%3D%20Unresolved%20AND%20text%20~%20"crash"%20ORDER%20BY%20priority%20DESC

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: deallocating resources

2015-08-25 Thread Thorsten Schöning
Guten Tag jasantunes,
am Mittwoch, 26. August 2015 um 03:59 schrieben Sie:

> Every time we create a logger "instance" it allocates resources, such as:

Your example is missing here, but in general you shouldn't create
Logger instances on your own, but retrieve them using
Logger::getLogger which will take care on creating new instances and
such using an underlying LoggerRepository as maintainig container.

> Obviously, the pointer destructors won't release the logger. But is there a
> way to deallocate resources for a particular logger?

No, you would need to implement a LoggerRepository and Hierarchy to do
that on your own, which I doubt is worth the amount of work. From the
docs:

> The hierarchy is such that children link to their parent but parents
> do not have any pointers to their children.

https://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1_hierarchy.html
https://logging.apache.org/log4cxx/apidocs/classlog4cxx_1_1spi_1_1_logger_repository.html

So in your example Logger "aaa" or "bbb" don't know anything about
their children, so you can't free them currently because you don't
know if they have children or not. Additionally, loggers are often
used statically, so they have no useful scope to release them. You use
case doesn't seem to be very common.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Help with first C++ program to do logging

2015-10-12 Thread Thorsten Schöning
Guten Tag Andrew Leach,
am Montag, 12. Oktober 2015 um 15:05 schrieben Sie:

> I believe I've correctly configured the include directory for
> log4cxx into VS2013 as the include's aren't showing up any errors.

You need to setup log4cxx properly as well.

> c:\apache-log4cxx-0.10.0\apache-log4cxx-0.10.0\[...]

You shouldn't start with log4cxx 0.10.0 anymore, checkout a current
trunk using SVN or download it using your browser. While not
officially released yet, the current trunk contains a lot of bug
fixes.

https://logging.apache.org/log4cxx/source-repository.html

> Error   1   error C1083: Cannot open include file:
> 'log4cxx/log4cxx.h': No such file or directory

This is most likely the root cause, log4cxx can't work properly
without that header. You haven't setup your building environment for
log4cxx properly and should first read the docs on how to build the
lib. If your already done so, you either made something wrong or the
instructions are not clear enough or whatever, so feel free to tell us
and we might fix things.

https://logging.apache.org/log4cxx/building/index.html
https://logging.apache.org/log4cxx/usage.html

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Help with first C++ program to do logging

2015-10-12 Thread Thorsten Schöning
Guten Tag Andrew Leach,
am Montag, 12. Oktober 2015 um 18:07 schrieben Sie:

> I've tried for several hours to build the package but find it to be an 
> impossible task.

It's not, I've done it in the past, but it's been a while now and I
don't remember if I used mvn as a frontend for ant or vice versa. I
think the first, because mvn should handle the dependencies...

> [WARNING] Error injecting: org.apache.maven.plugin.antrun.AntRunMojo
> java.lang.NoClassDefFoundError: org/apache/tools/ant/BuildException

Looks like ANT is not properly set up in this environment.

> And Ant fails with these errors:

> C:\Users\ypx7647\Downloads\apache-log4cxx>ant -Dfind=false
> Buildfile: C:\Users\ypx7647\Downloads\apache-log4cxx\build.xml
>   [taskdef] Could not load definitions from resource 
> net/sf/antcontrib/antcontri
> b.properties. It could not be found.

Looks like ant-contrib and/or cpptasks is missing. mvn should have
downloaded them.

> And the projects directory doesn't exist in the SVN checkout!

The project files are generated from the ant script by passing the
necessary options, the script can either build directly or generate
the project files. Some things in between work as well: Use the old
project files with a checkout from trunk or build your own project
files for your IDE. In the latter case you need to create a project,
add all the cpp files and copy log4cxx.hw to log4cxx.h in the same
dir. Of course you need to take care about the dependencies like APR
on your own as well, but APR should support MSVC.

I personally prefer custom IDE projects, but spent quite some days
getting all up running.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Help with first C++ program to do logging

2015-10-12 Thread Thorsten Schöning
Guten Tag Dana Irvin,
am Montag, 12. Oktober 2015 um 18:33 schrieben Sie:

> One thing
> of note – I found the trunk wouldn’t compile/link complete with the
> current version of APR and APR-Util. I had to use APR 1.5.1 and
> APR-Util 1.5.3 for Windows. There are some undefined references in
> the Win32 build of one of those. I don’t remember which. Thorsten,
> have you or any of the contributors seen something similar?

No and in fact I spent the last two weeks or so to get APR 1.5.2,
APR-Util 1.5.4 and APR-Iconv 1.2.1 R2 running and usable with current
trunk of log4cxx, successful in the end. But I created my own custom
projects from scratch for my Embarcadero C++-Builder 10 and the things
I needed to address where all around that compiler and its support by
APR.

So, could you be more verbose about the errors you got? We should at
least file some bugs.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Help with first C++ program to do logging

2015-10-12 Thread Thorsten Schöning
Guten Tag Dana Irvin,
am Montag, 12. Oktober 2015 um 19:02 schrieben Sie:

> Below are the errors I get – they seem centered around the APR
> random stuff. In APR 1.5.2, I only see a unix directory under the random 
> directory.

That's fine, just build with that. APR saves all platform independent
code in such unix dirs and I have added those files in my project and
got an "apr_generate_random_bytes" in my lib. I have quite some other
unix dirs in my project as well, like "file_io", else it wouldn't even
compile.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Help with first C++ program to do logging

2015-10-12 Thread Thorsten Schöning
Guten Tag Andrew Leach,
am Montag, 12. Oktober 2015 um 21:23 schrieben Sie:

> It's seems there's a problem with the maven-antrun-plugin v1.7. I
> seen numerous issues like the one I'm experiencing when I did a search on the 
> web.

This still looks like your ANT is wrongly setup or simply not
available.

> [WARNING] Error injecting: org.apache.maven.plugin.antrun.AntRunMojo
> java.lang.NoClassDefFoundError: org/apache/tools/ant/BuildException

This class is in ant.jar, which is e.g. in my installation folder
"C:\Program Files (x86)\Apache Ant\lib". The "bin" folder of that is
in my path and contains some ant.bat which deals with things like
ANT_HOME, classpath and such. Have a look at that. I don't remember
anymore how I set up my ANT and currently don't have the time to play
with that, sorry.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Help with first C++ program to do logging

2015-10-12 Thread Thorsten Schöning
Guten Tag Andrew Leach,
am Montag, 12. Oktober 2015 um 22:33 schrieben Sie:

> Directory of
> C:\Users\ypx7647\AppData\Roaming\Apache\apache-ant-1.9.6\lib

You have two problems: First, BuildException is not found for any
reason, second, there's a problem with the build at all, that's why
BuildException is needed. As you are on Windows, in situations like
yours I fire up Process Monitor, trace the I/O and just search for
"BuildException" or such to see which paths are checked by Java/Maven.
Most of the times some things occur...

In a quick test in my installation I just deleted my .m2 folder
completely and issued "mvn package", which resulted in some downloaded
libs again. Some of those libs where ant 1.9.3 already, so it might be
that your user wide installation is simply not needed at all. Process
Monitor clearly shows that my system wide installation of ANT is NOT
used and I don't have ANT_HOME set in my env.

My build fails though, because I don't have any suitable compiler
available. So, what can I read in my shell?

> [ERROR] Failed to execute goal 
> org.apache.maven.plugins:maven-antrun-plugin:1.7:
> run (compile) on project apache-log4cxx: An Ant BuildException has occured: 
> The
> following error occurred while executing this line:
> [ERROR] C:\Users\tschoening\Documents\Svn\Src\Libs\branches\C++\RAD 
> 10\Logging\l
> og4cxx\0.11.0-SNAPSHOT\src\build.xml:563: The following error occurred while 
> exe
> cuting this line:
> [ERROR] C:\Users\tschoening\Documents\Svn\Src\Libs\branches\C++\RAD 
> 10\Logging\l
> og4cxx\0.11.0-SNAPSHOT\src\src\ant\apr-build.xml:155: Could not launch cl: 
> java.
> io.IOException: Cannot run program "cl" (in directory 
> "C:\Users\tschoening\Docum
> ents\Svn\Src\Libs\branches\C++\RAD 
> 10\Logging\log4cxx\0.11.0-SNAPSHOT\src\target
> \debug\static\apr-ofiles"): CreateProcess error=2, Das System kann die 
> angegeben
> e Datei nicht finden
> [ERROR] around Ant part .. @ 4:24 in 
> C:\Users\tschoenin
> g\Documents\Svn\Src\Libs\branches\C++\RAD 
> 10\Logging\log4cxx\0.11.0-SNAPSHOT\src
> \target\antrun\build-main.xml
> [ERROR] -> [Help 1]

As you see, I properly get a BuildException instead of a
ClassNotFoundException, like you. And I use trunk myself, just copied
APR in the right directories and issued mvn package. My MVN version:

> Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 
> 17:22:2
> 2+0200)
> Maven home: C:\Program Files (x86)\Apache Maven\bin\..
> Java version: 1.8.0_60, vendor: Oracle Corporation
> Java home: C:\Program Files\Java\jdk1.8.0_60\jre
> Default locale: de_DE, platform encoding: Cp1252
> OS name: "windows 8.1", version: "6.3", arch: "amd64", family: "dos"

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: Why did log4cxx disappear from EPEL Centos 6?

2015-12-11 Thread Thorsten Schöning
Guten Tag Steve Varnau,
am Freitag, 11. Dezember 2015 um 00:44 schrieben Sie:

> For some reason it has mysteriously disappeared from the
> repository, and I can’t seem to find equivalent RPM anywhere. 
> Anyone have a clue about why it left or better yet suggestions on where to 
> find it?

No, I would guess that there's simply no maintainer for that package
anymore and it might have been broken in current versions of that OS
because of changed build chain and such. But only the maintainers of
the OS/package can tell you.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Re: unit test 'errorhandlertestcase' failed

2016-02-11 Thread Thorsten Schöning
Guten Tag Weiming,
am Donnerstag, 11. Februar 2016 um 20:13 schrieben Sie:

> Basically, it shows that "output/filtered" is empty, which should have the
> same content as "witness/fallback1".

That's correct and it does so in my env.

> I didn't quite understand what Transformer::transform tries to achieve. Does
> it tries to filter out (delete) everything in "output/temp" which matches
> the patterns of the filters?

I don't think so, it applies the filters to each line and the filters
decide which lines are kept or removed. So one needs to look at the
filters applied in the test case and to me it seems that ControlFilter
gets a pattern which decides which lines are KEPT and I'm not sure
what LineNumberFilter is about currently. If I look at my "temp" file,
it doesn't contain any line numbers and input/xml/fallback1.xml
doesn't contain any as well. Additionally, it looks like ControlFilter
is a no-op currently? The pattern provided with operator<< doesn't
seem to be forwarded anywhere. If instead look at LineNumberFilter,
this does save pattern sin the instance.

So maybe the test is just wrong?

In the end, I think it would like to achieve that wrong lines in
output/temp are filtered until witness/fallback1 is the result. It's
currently the case in my env, but output/temp already contains the
needed lines 1:1. Don't know if that's right or wrong yet, but
ControlFilter applied without any filtering would of course don't
change anything and therefore the test would pass.

> If so, i think it makes sense for "output/filtered" to be empty.

That wouldn't make sense because "witness/fallback1" is not empty and
that's the expected result of the test.

If I understand Transformer::createSedCommandFile correctly, "sed" is
used to perform the actual pattern matching at least for
LineNumberFilter. Is that available in your PATH? It should because
else log4cxx would assert, but you may want to make sure. Additionally
you should make sure that your "sed" accepts the used -f arg and the
patterns of "temp.sed". You can see the content of that file if you
run the test suite with only the one test you are interested it,
something like:

> test_all.cmd errorhandlertestcase

where test_all.cmd is some wrapper of mine to adopt the suite to my
needs. My temp.sed contains the following:

> sQ [^ ]*[\\]Q Qg
> sQ([0-9]*)Q(X)Qg

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



Fwd: log4cxx-0.10.0 and crash on exit

2016-02-29 Thread Thorsten Schöning
td::allocator
 > 
>,std::less,std::allocator
 > 
>,std::allocator,std::allocator
 > const 
,std::vector,std::allocator
 > > > > >()
log4cxx_adtyco_tpl.dll!std::map,std::allocator
 
>,std::vector,std::allocator
 > 
>,std::less,std::allocator
 > 
>,std::allocator,std::allocator
 > const 
,std::vector,std::allocator
 > > > > >::`scalar deleting destructor'()
log4cxx_adtyco_tpl.dll!log4cxx::Hierarchy::~Hierarchy() Line 71
log4cxx_adtyco_tpl.dll!log4cxx::Hierarchy::`vbase destructor'()
log4cxx_adtyco_tpl.dll!log4cxx::Hierarchy::`vector deleting destructor'()
log4cxx_adtyco_tpl.dll!log4cxx::helpers::ObjectImpl::releaseRef() Line 46
log4cxx_adtyco_tpl.dll!log4cxx::Hierarchy::releaseRef() Line 80
log4cxx_adtyco_tpl.dll!log4cxx::helpers::ObjectPtrT::~ObjectPtrT()
 Line 102
log4cxx_adtyco_tpl.dll!log4cxx::spi::DefaultRepositorySelector::~DefaultRepositorySelector()
log4cxx_adtyco_tpl.dll!log4cxx::spi::DefaultRepositorySelector::`vbase 
destructor'()
log4cxx_adtyco_tpl.dll!log4cxx::spi::DefaultRepositorySelector::`vector 
deleting destructor'()
log4cxx_adtyco_tpl.dll!log4cxx::helpers::ObjectImpl::releaseRef() Line 46
log4cxx_adtyco_tpl.dll!log4cxx::spi::DefaultRepositorySelector::releaseRef() 
Line 36
log4cxx_adtyco_tpl.dll!log4cxx::helpers::ObjectPtrT::~ObjectPtrT()
 Line 102
log4cxx_adtyco_tpl.dll!`log4cxx::LogManager::getRepositorySelector'::`2'::`dynamic
 atexit destructor for 'selector''()
log4cxx_adtyco_tpl.dll!_CRT_INIT(hDllHandle, dwReason, lpreserved) Line 416C
log4cxx_adtyco_tpl.dll!__DllMainCRTStartup(hDllHandle=0x0c4d, dwReason=0, 
lpreserved=0x0001) Line 522C
log4cxx_adtyco_tpl.dll!_DllMainCRTStartup(hDllHandle=0x0c4d, dwReason=0, 
lpreserved=0x0001) Line 472C
ntdll.dll!_LdrxCallInitRoutine@16‑()Unknown
ntdll.dll!LdrpCallInitRoutine()Unknown
ntdll.dll!LdrShutdownProcess()Unknown
ntdll.dll!RtlExitUserProcess()Unknown
AcLayers.dll!NS_FaultTolerantHeap::FthExitUserProcess‑()Unknown
AcLayers.dll!NS_FaultTolerantHeap::APIHook_RtlExitUserProcess‑()Unknown
kernel32.dll!_ExitProcessImplementation@4‑()Unknown
mscoreei.dll!RuntimeDesc::ShutdownAllActiveRuntimes‑()Unknown
mscoreei.dll!CLRRuntimeHostInternalImpl::ShutdownAllRuntimesThenExit‑()Unknown
clr.dll!EEPolicy::ExitProcessViaShim‑()Unknown
clr.dll!SafeExitProcess‑()Unknown
clr.dll!HandleExitProcessHelper()Unknown
clr.dll!EEPolicy::HandleExitProcess‑()Unknown
clr.dll!__CorExeMainInternal@0‑()Unknown
clr.dll!__CorExeMain@0‑()Unknown
mscoreei.dll!__CorExeMain@0‑()Unknown
mscoree.dll!__CorExeMain_Exported@0‑()Unknown
kernel32.dll!@BaseThreadInitThunk@12‑()Unknown
ntdll.dll!__RtlUserThreadStart()Unknown
ntdll.dll!__RtlUserThreadStart@8‑()Unknown

--
Sean Dynan
Senior Principal Software Engineer / Tyco Security Products
195 Airport Road West / Belfast / Northern Ireland / BT3 9ED
Tel: +44(0)28 9078 8144
sedy...@tycoint.com /  
www.tycosecurityproducts.com/SocialMedia.aspx<http://www.tycosecurityproducts.com/SocialMedia.aspx>
  / www.tycosecurityproducts.com<http://www.tycosecurityproducts.com/>

Tyco Safety Products/CEM Systems Ltd.


This e-mail contains privileged and confidential information intended for the 
use of the addressees named above. If you are not the intended recipient of 
this e-mail, you are hereby notified that you must not disseminate, copy or 
take any action in respect of any information contained in it. If you have 
received this e-mail in error, please notify the sender immediately by e-mail 
and immediately destroy this e-mail and its attachments.

===8<== Ende des Original Nachrichtentextes =

Hallo,



Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow--- Begin Message ---
Hi Thorsten

I am experiencing a crash in log4cxx when my application exits, and my initial 
investigation made me hope that your patch for 
LOGCXX-322<https://issues.apache.org/jira/browse/LOGCXX-322?jql=project%20%3D%20LOGCXX>
 would sort it out.

I re-tested with log4cxx Trunk (svn checkout 
http://svn.apache.org/repos/asf/incubator/log4cxx/trunk apache-log4cxx) but the 
problem still exists.

Have you any idea what may be causing it?  (My log4cxx dll is named 
log4cxx_adtyco_tpl.dll.)

Any help would be greatly appreciated. Thanks.


>msvcr120.dll!abort() Line 88C
log4cxx_adtyco_tpl.dll!log4cxx::helpers::ObjectPtrT::~ObjectPtrT()
 Line 102
log4cxx_adtyco_tpl.dll!log4cxx::helpers::ObjectPtrT::`vector 
deleting destructor'()
log4cxx_adtyco_tpl.dll!std::allocator
 >::destroy 
>(_Ptr=0x08f4df48) Line 608
log4cxx_adtyco_tpl

Re: log4cxx-0.10.0 and crash on exit

2016-02-29 Thread Thorsten Schöning
Guten Tag Dynan, Sean,
am Montag, 29. Februar 2016 um 10:25 schrieben Sie:

> Hi Thorsten

Hi Sean,

please be so kind and don't write me individually, but instead take
the time and register on the users mailing list and write your
questions there in future. This increases your chance for getting
help, shows that the project is still used/needed and in the end even
makes my life easier, because those mails get properly filtered in 
my client, can be easier tracked by my employer etc.

Thanks!

https://logging.apache.org/log4cxx/mail-lists.html

> I re-tested with log4cxx Trunk (svn checkout
> http://svn.apache.org/repos/asf/incubator/log4cxx/trunk
> apache-log4cxx) but the problem  still exists.
[...]
> log4cxx_adtyco_tpl.dll!`log4cxx::LogManager::getRepositorySelector'::`2'::`dynamic
>  atexit destructor for 'selector''()

Have a look at the following, where the root cause in my opinion is
getRepositorySelector, but which I was unable to fix and didn't have
another look into since then.

https://issues.apache.org/jira/browse/LOGCXX-430

Additionally, check APR_HAS_THREADS is defined, if it's not,
apr_terminate still gets called and would result in LOGCXX-322. But
your stacktrace doesn't look like thats the case.

> mscoreei.dll!RuntimeDesc::ShutdownAllActiveRuntimes‑()Unknown
> mscoreei.dll!CLRRuntimeHostInternalImpl::ShutdownAllRuntimesThenExit‑()Unknown
> clr.dll!EEPolicy::ExitProcessViaShim‑()Unknown
> clr.dll!SafeExitProcess‑()Unknown
> clr.dll!HandleExitProcessHelper()Unknown
> clr.dll!EEPolicy::HandleExitProcess‑()Unknown
> clr.dll!__CorExeMainInternal@0‑()Unknown
> clr.dll!__CorExeMain@0‑()Unknown
> mscoreei.dll!__CorExeMain@0‑()Unknown
> mscoree.dll!__CorExeMain_Exported@0‑()Unknown

Is this some kind of special .NET/managed/whatever DLL or is it only
used in such a process? I only use log4cxx statically linked into
plain Win32 applications.

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning   E-Mail: thorsten.schoen...@am-soft.de
AM-SoFT IT-Systeme  http://www.AM-SoFT.de/

Telefon...05151-  9468- 55
Fax...05151-  9468- 88
Mobil..0178-8 9468- 04

AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow



  1   2   >