Based on Shea's request... I'm releasing this code under GPL3 for anyone
else that may need it.
I've uploaded the relevant files to google code:
http://code.google.com/p/log4jforcpp/
Enjoy
Renny Koshy
President & CEO
---
Shea -
I have a JNI interface I wrote... for the same problem. So basically, you
access a set of classes that correspond to the Java code... would you like
that?
Or -- why not have an "Initialize()" method in ONE of the DLL's then
all of the others can call Initialize(), which should only init the
Log4CXX once?
Renny Koshy
President & CEO
Rubix Information Technologies, Inc.
ww
Why don't you simply create a singleton instance of a class that will
"manage" log4cxx for you?
Then you can just query the singleton to see if it is initialized or
not... or even just call the "init()" method of the singleton in all your
DLL's... so the init
Since Log4CXX has a wire format that is compatible, you can download
Log4J... it has a SimpleSocketServer. We use it for centralizing the
logs into one file as well.
The link to the docs are:
http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/net/SimpleSocketServer.html
Renny
folks will look at
syslog entries -- and if the appender or logger framework were to log
something they'd see it. The more 'process' oriented companies will have
their NOC's review the logs and trap major issues as soon as they happen.
Renny Koshy
"Peter Steele&qu
I agree wholeheartedly
If it gets into something like the scenario mentioned below, maybe the
logger can put a syslog entry, or console/stderr output (as configured by
the user in some global setting)?
Renny Koshy
[EMAIL PROTECTED] (J.T. Conklin)
09/23/2008 01:12 PM
Please respond to
seen apps get "stuck". The
only solution we've seen -- as a general case -- is to monitor the volume
via SNMP or using a simple script, and notify the admins BEFORE it fails.
Regards,
Renny Koshy
"Peter Steele" <[EMAIL PROTECTED]>
09/20/2008 01:37 PM
Please
ets up its
own timer, or alarm, and processes the old files if you want to do it
from within your process.
Renny Koshy
Jathy <[EMAIL PROTECTED]>
09/17/2008 06:30 AM
Please respond to
"Log4CXX User"
To
log4cxx-user@logging.apache.org
cc
Subject
RE: How to config log4c
log rotation would be nice, IMHO most large-scale uses of Log4CXX would
not be able to use that to delete log file...
Regards,
Renny Koshy
Conway Allen <[EMAIL PROTECTED]>
09/16/2008 09:19 AM
Please respond to
"Log4CXX User"
To
Log4CXX User
cc
Subject
RE: How to config
Stephen - you're right... if the class itself is used, the compiler won't
know how to construct it... if it is a ptr, it won't complain.
Renny Koshy
President & CEO
Rubix Information Technologies, Inc.
www.rubixinfotech.com
&q
Peter -
We've had the exact same requirement on platform we did, which used
Log4j... and ended up running the included "SocketServer" app and then
logging everything to the socket-server, which actually wrote out the
combined file.
Renny Koshy
v0.9.7 does some stuff to the timezone settings... I had the same issue...
I ended up forcefully saving/resetting my TZ settings to make it work.
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
narts <
fmt.c_str()
+ fmt.length());
> #endif
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
I found out the hard way that you should use the shell-script (autogen)
that is provided to do the autoconfig
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech
Jacob -
Try this link -- it's a good tutorial on Log4J -- the concepts apply to
Log4CXX directly:
http://www.vipan.com/htdocs/log4jhelp.html
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinf
causing my search/replace to fail
on it (I had not antcipated that). So I manually edited the file:
src/main/include/log4cxx/net/smtpappender.h
Status:
=
Right now I'm stuck on some locale issues... will keep posting updates as I
have them.
Renny Koshy
President & CEO
-
Curt -
We are primarily a Solaris shop... so we have Solaris 8 & 10 servers we
can test on. We also have Linux (RHES4) systems.
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
Curt Arnold <[EMAI
Stephen -
Very good question... I have an offshore dev team who may be able to throw
in some time testing, assuming there are **documented** tests to run. They
are definitely not too good on "ad-hoc" style testing.
Regards,
Renny Koshy
Presi
I know... I wish I could personally contribute time/energy/resources...
during the project in question we actually hired both omniEvents developers
full time to 'help out'... but am not in a position right now.
Would putting a "bounty" on it incentivise anyone to help?
R
I have been using 0.9.7 in production since 2004 still waiting for the
next release.
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
Ashfaque <[EMAIL PROTECTED]>
12/05/2007 12:11 AM
Please
done - I will sent direct email with location
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
supervixen <[EMAIL PROTECTED]>
07/26/2007 02:16 AM
Please respond to
"Log4CXX User"
T
supervixen <[EMAIL PROTECTED]> wrote on 07/25/2007 09:42:14 AM:
> Hi,
> I've been desperately trying to build log4cxx (0.9.7) to Solaris
> sparc and it's been a painful week even trying to build it,
> So here's my problem :
> I'm using Sun C++ 5.9 SunOS_sparc compiler on Solaris 10
> and the
ning from C:/a/b/c as the current directory
(maybe there was a "cd a/b/c" in the batch file that started it) and the
logs directory is in b/logs, then you need to write your path as "../logs"
(since the 'current' directory of the server is "c").
Renny Koshy
Pr
Thomas
Do you have a "log" subdirectory under the 'current working directory' of
your web-app? We find it best to give the full path, as we use Log4J in a
sumilar situation.
Renny Koshy
President & CEO
RUBIX Infor
if(Level::DEBUG->isGreaterOrEqual(getEffectiveLevel()))
{
char MessageBuffer[LOG_MESSAGE_BUFF_SIZE];
vsnprintf(MessageBuffer, sizeof(MessageBuffer), format, pvar);
forcedLog(FQCN, Level::DEBUG, MessageBuffer);
}
}
Renny Koshy
We've seen this also on Solaris and using some commercial memory-test
tools, one of my developers had identified a memory leak, and fixed it.
We've using 0.9.7 -- a modified version. If you're interested, you can try
it out on VC++ and see if it works for you.
Renny Koshy
I needed the same thing for FileAppender
(so that the file name could have the PID), and ended up doing a modificaiton
for both Log4J and Log4cxx (0.9.7) ..
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech
Which version are you looking for?
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
"Fitzh
anyone is interested, I can provide the patches.
Regards,
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
Another option:
1. Setup a SocketAppender in the process to send logs to a "log server"
process
2. Create a "logserver" that then logs the data to file -- so you get a
single file.
Renny Koshy
President & CEO
RUBIX Infor
3. After a certain timeout, destroy the logger -- so if no requests are
received from a client in lets say 5 minutes, the logger expires
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rub
I had actually hit the same snag in Log4J, i.e. multiple instances of the
same app. My solution was to create a "JavaHelper" native lib, which
allows me to get the process id. Then using that I enhanced the
DailyRollingFileAppender to support a %P in the filename for process id.
R
For instance at the entrace of a function:
log4cxx::NDC::push("Login()");
...
and at the end:
log4cxx::NDC::pop();
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rub
machine.
What is the easiest way to incorporate such a modifier into Log4CXX?
Thank you,
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
that is using log4cxx from about 10 different worker
threads. Mostly
So does this imply that
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
Curt Arnold <[EMAIL PROTECTED]>
02/11/2005 01:42 PM
Pl
archy.Names -> System operations stats
--- PS. I can't post to the Log4J list as I'm not a subscriber. ---
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
Curt Arnold <[EMAIL PROTECT
I'm surprised that it doesn't use the "ntohl/htonl" functions... we use those extensively for any type of socket/UDP comms, as that gives the flexibility of cross-platform (mainly diff byte ordering/word size) support.
Renny K
Using it with no problems -- XMLSocketAppender :-)
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
Patrick Willett <[EMAIL PROTECTED]>
12/14/2004 01:48 PM
Please respond to &qu
I think the fact that the latest code may or may not compile is consistent with the email from the maintainers...
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
孙 晓光 <[EMAIL PR
Well.. I think that's a philosophical question :-) But I guess that's a good idea. Though given the ease of using cron + shell script... I don't kow if anyone would want to write/test/maintain something like that.
Renny Koshy
President & CEO
---
Our logs are kept for many days for several reasons... but we have MANY processes/jobs that are logging many files all over the server... and we have a cleanup job that purges out old logs from all of our prcesses. It runs daily at some point in time and does the cleanup
Renny Koshy
President
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,0,0,0,
2004-11-19 00:00:00,467 INFO Statistics - Forward to RUBIX,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,0,0,0,
2004-11-19 00:00:00,563 DEBUG ACD ServiceCalls(SUPER) - No calls to service
Renny Koshy
President &
Someone had asked a couple of days ago regarding the sockethubappender. I got this from our developer who was using the sockethubappender...
BTW -- did you setup a socket hub appender configuration in your server side before tryingto connect?
Renny Koshy
President &
Unfortunately, I'm not the one who's our log4cxx expert... I'll ask though...
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
孙 晓光 <[EMAIL PROTECTED]>
11/18/2004 11
Really? It worked for us... I'm pretty sure one of my dev's was playing with it...
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
孙 晓光 <[EMAIL PROTECTED]>
11/18/2
Yes... we're using it in a production environment... with no identifiable problems (except the time-stamp). There is a strange core dump we keep having, but because we use an in-memory database and an active/standby setup ... that's transparent to system operation.
Renny Koshy
Presi
I'm surprised I followed the directions, and it built without any problems on the first try... Solaris 8 (Intel/Sparc)... of course I"m using Forte compilers...
Renny Koshy
President & CEO
RUBIX Information Tec
Curt
For people like us who have integrated log4cxx into carrier grade (99.999% availability) applications... the interim release would be great don't know about the rest of the community ??
Renny Koshy
President & CEO
RUBIX In
Mike
We had also added a patch to log4j in our environment, such that the log files are created with process IDs... using a "%P" format specifier. This allows us to run multiple executables, and they will write to unique files...
Renny Koshy
Presi
Mike
We use it on:
Windows
Solaris
Linux
These are for real-time, production systems which we've guaranteed 99.999% uptime... (though I guess a single module crashing wouldn't affect the up-time).
Renny Koshy
Presi
ator is initialized.
There has got to be a better way to do this... will let you guys know if we find something.
Renny Koshy
President & CEO
RUBIX Information Technologies, Inc.
www.rubixinfotech.com
__
We have some code which
[0] = '%s', TZName[1] = '%s'\n",
__FILE__, __LINE__,
getenv("TZ") ? getenv("TZ") : "<>",
tzname[0], tzname[1]);
sigset(SIGHUP,sig_hdlr);
sigset(SIGUSR2,sig_hd
at Sun's CC uses for templates somehow during the build process, those files are either deleted or overwritten... and the next time, when you change a single file & compile... the linker cannot file a bunch of templates...
Regards
Renny Koshy
President & CEO
54 matches
Mail list logo