You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
(38) |
Sep
(126) |
Oct
(23) |
Nov
(72) |
Dec
(36) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(76) |
Feb
(32) |
Mar
(19) |
Apr
(6) |
May
(54) |
Jun
(40) |
Jul
(45) |
Aug
(35) |
Sep
(51) |
Oct
(67) |
Nov
(10) |
Dec
(50) |
| 2004 |
Jan
(51) |
Feb
(22) |
Mar
(22) |
Apr
(28) |
May
(53) |
Jun
(99) |
Jul
(38) |
Aug
(49) |
Sep
(23) |
Oct
(29) |
Nov
(30) |
Dec
(48) |
| 2005 |
Jan
(15) |
Feb
(21) |
Mar
(25) |
Apr
(16) |
May
(131) |
Jun
|
Jul
(8) |
Aug
(5) |
Sep
(15) |
Oct
|
Nov
(15) |
Dec
(12) |
| 2006 |
Jan
(15) |
Feb
(20) |
Mar
(8) |
Apr
(10) |
May
(3) |
Jun
(16) |
Jul
(15) |
Aug
(11) |
Sep
(17) |
Oct
(27) |
Nov
(11) |
Dec
(12) |
| 2007 |
Jan
(19) |
Feb
(18) |
Mar
(33) |
Apr
(4) |
May
(15) |
Jun
(22) |
Jul
(19) |
Aug
(20) |
Sep
(14) |
Oct
(4) |
Nov
(34) |
Dec
(11) |
| 2008 |
Jan
(8) |
Feb
(18) |
Mar
(2) |
Apr
(4) |
May
(26) |
Jun
(9) |
Jul
(8) |
Aug
(8) |
Sep
(3) |
Oct
(17) |
Nov
(14) |
Dec
(4) |
| 2009 |
Jan
(6) |
Feb
(41) |
Mar
(21) |
Apr
(10) |
May
(21) |
Jun
|
Jul
(8) |
Aug
(4) |
Sep
(3) |
Oct
(8) |
Nov
(6) |
Dec
(5) |
| 2010 |
Jan
(14) |
Feb
(13) |
Mar
(7) |
Apr
(12) |
May
(4) |
Jun
(1) |
Jul
(11) |
Aug
(5) |
Sep
|
Oct
(1) |
Nov
(10) |
Dec
|
| 2011 |
Jan
(7) |
Feb
(3) |
Mar
(1) |
Apr
(5) |
May
|
Jun
(1) |
Jul
(6) |
Aug
(6) |
Sep
(10) |
Oct
(5) |
Nov
(4) |
Dec
(5) |
| 2012 |
Jan
(4) |
Feb
(5) |
Mar
(1) |
Apr
(7) |
May
(1) |
Jun
|
Jul
(2) |
Aug
|
Sep
(5) |
Oct
(5) |
Nov
(4) |
Dec
(5) |
| 2013 |
Jan
(6) |
Feb
|
Mar
(14) |
Apr
(9) |
May
(3) |
Jun
(2) |
Jul
(1) |
Aug
(1) |
Sep
|
Oct
|
Nov
(4) |
Dec
(6) |
| 2014 |
Jan
|
Feb
(1) |
Mar
(10) |
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
(4) |
Oct
(1) |
Nov
|
Dec
(4) |
| 2015 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
|
From: Aldrich, T. <tim...@cs...> - 2004-07-01 19:25:49
|
> Not sure how you're calling an app within an app. Is it that your > application uses a module that uses Log::Log4perl? In this case, it's > important to initialize exactly once, in the main app. This FAQ deals > with the issue, let me know if it's working for you: > > http://log4perl.sourceforge.net/releases/Log-Log4perl/do > cs/html/Log/Log4perl.html#a36c1 Thank you for the reply. By "an app within an app" I mean : ----------------------------------------------------------------------- package Foo ; use Log::Log4perl qw(get_logger); sub new { Log::Log4perl::init( %foo_logging_config ); my $ logger = get_logger(); ... log , log , and log; } ----------------------------------------------------------------------- Now in another package I want to have different logging. ----------------------------------------------------------------------- package Bar; use Log::Log4perl qw(get_logger); use Foo; sub new { Log::Log4perl::init( %bar_logging_config ); my $logger = get_logger(); } ----------------------------------------------------------------------- How can I set up the logging in Bar so that it does not touch Foo's logging config ? -- -- Mike Mike Schilli m...@pe... ============================================================================== This message is for the sole use of the intended recipient. If you received this message in error please delete it and notify us. If this message was misdirected, CSFB does not waive any confidentiality or privilege. CSFB retains and monitors electronic communications sent through its network. Instructions transmitted over this system are not binding on CSFB until they are confirmed by us. Message transmission is not guaranteed to be secure. ============================================================================== |
|
From: Mike S. <m...@pe...> - 2004-06-30 22:00:17
|
Aldrich, Timothy wrote on 6/25/2004, 12:40 PM: > Hello all. This is my first post to this list. I have been using > log4perl in my application and love it. Thanks, that's great to hear! > Recently , I have been using > the Test::Unit package to perform testing on the application. I'd like > to Use log4perl to log testing messages to the screen , however my > logging configuration is clobbering the one created in the application. > > How can I run an instance of log4perl in an application that uses an > application that uses log4perl ? Not sure how you're calling an app within an app. Is it that your application uses a module that uses Log::Log4perl? In this case, it's important to initialize exactly once, in the main app. This FAQ deals with the issue, let me know if it's working for you: http://log4perl.sourceforge.net/releases/Log-Log4perl/docs/html/Log/Log4perl.html#a36c1 -- -- Mike Mike Schilli m...@pe... |
|
From: reg <mua...@se...> - 2004-06-27 02:49:01
|
Уважаемые господа!
Предлагаем Вам принять участие в семинарах:
05 июля 2004 года
Семинар на тему: «Обзор арбитражной практики по рассмотрению отдельных категорий споров»
Рассматриваемые вопросы:
- Применение норм Арбитражного процессуального кодекса РФ, Гражданского процессуального кодекса РФ при разрешении корпоративных конфликтов.
- Подведомственность и подсудность споров.
- Практика применения отдельных видов обеспечительных мер.
- Понятие денежного обязательства. Ответственность за неисполнение денежного обязательства.
- Информационное письмо ВАС РФ от 24.07.2003 года N 72 «Обзор практики принятия арбитражными судами мер по обеспечению исков по спорам, связанным с
обращением ценных бумаг».
- Соотношение гражданского и трудового законодательства при определении статуса лиц, образующих исполнительные органы акционерных обществ.
- Право акционера на оспаривание сделок акционерного общества.
- Анализ положений Постановления Пленума Высшего Арбитражного Суда РФ от 18.11.2003 года N 19 «О некоторых вопросах применения Федерального Закона
«Об акционерных обществах».
06 июля 2004 года
Семинар на тему: «Проблемы правоприменения Арбитражного процессуального кодекса РФ. Спорные вопросы судебной практики по исполнительному производству»
Рассматриваемые вопросы:
- Исковое производство в суде первой инстанции. Новации в формировании судебного состава. Новое в приостановлении и прекращении производства по делу.
Введение института оставления иска без движения.
- Судебная защита прав организаций и индивидуальных предпринимателей при рассмотрении арбитражными судами дел об административных
правонарушениях.
- Оспаривание нормативных и ненормативных актов. Особое производство.
- Исполнение судебных актов арбитражных судов. Соотношение норм АПК РФ 2002 года и ФЗ «Об исполнительном производстве».
- Основания и порядок обжалования действий, бездействия судебных приставов.
- Обращение взыскания на имущество должника (недвижимость, ценные бумаги, дебиторская задолженность).
- Участие прокурора в арбитражном процессе.
Стоимость участия – 3900 рублей, c учетом НДС. Если Вы
решили принять участие сразу в 2 семинарах – скдка 10%. Форма оплаты любая (наличная или безналичная). В пакет услуг
входит: участие в мероприятии,информационные печатные материалы кофе-пауза, обед.
Мастер-класс проходит в Москве (м. Академическая).Для участия в семинаре необходимо регистрироваться.
Телефон для справок 7 887 328
|
|
From: <ca...@ho...> - 2004-06-26 01:17:45
|
Hello Зная что существует потребность у Вашей организации в услугах, оказываемых нашей компанией, можем предложить вам нашу помощь в организации Direct Mail(адресная почтовая рассылка) решений. 1. Всегда актуальные и наиболее полные базы данных как предприятий так и физических лиц; 2. Только Ваш менеджер; 3. Всегда скорость и качество исполнения заказа; 4. Конверты любых видов; 5. Собственная полиграфическая и упаковочная база; 6. Скидки для постоянных клиентов. И конечно подарки! По итогам месяца, квартала и года Вас ждут приятные сюрпризы от нашей компании. С надеждой на долгое сотрудничество коллектив компании "Mass Post" (095)-518-40-69-Борис |
|
From: Aldrich, T. <tim...@cs...> - 2004-06-25 19:40:24
|
Hello all. This is my first post to this list. I have been using log4perl in my application and love it. Recently , I have been using the Test::Unit package to perform testing on the application. I'd like to Use log4perl to log testing messages to the screen , however my logging configuration is clobbering the one created in the application. How can I run an instance of log4perl in an application that uses an application that uses log4perl ? please let me know if this is confusing , I'd be happy to explain it further. R/S___________________________________________________________________ Timothy Aldrich * Credit Suisse | First Boston * Web Engineering 212.538.5681 -- ============================================================================== This message is for the sole use of the intended recipient. If you received this message in error please delete it and notify us. If this message was misdirected, CSFB does not waive any confidentiality or privilege. CSFB retains and monitors electronic communications sent through its network. Instructions transmitted over this system are not binding on CSFB until they are confirmed by us. Message transmission is not guaranteed to be secure. ============================================================================== |
|
From: <Pos...@pr...> - 2004-06-25 04:03:24
|
WW91ciBtZXNzYWdlDQoNCiAgU3ViamVjdDogR2VzY2hyaWViZW4gdm9uIE1hcmdyaXQgYW0gMDcu IEFwcmlsIDIwMDQgOktleTo3NzY1Og0KDQp3YXMgbm90IGRlbGl2ZXJlZCB0bzoNCg0KICBwdWRn ZUBwcml2YXRiYW5rLmRlDQoNCmJlY2F1c2U6DQoNCiAgVXNlciBwdWRnZSAocHVkZ2VAcHJpdmF0 YmFuay5kZSkgbm90IGxpc3RlZCBpbiBEb21pbm8gRGlyZWN0b3J5DQoNCg== |
|
From: tina <yua...@t-...> - 2004-06-22 09:06:49
|
<HTML> <HEAD> </HEAD> <BODY> <p align=justify> <H3>Центр образования и консультаций "Кволити"</H3> <B>телефон/факс <I>916-6377</I> (многоканальный)</B><BR> <p align=justify> <I><B>Семинар бухгалтеров.</B></I> <BR> а) <B>Участие в семинаре.</B> На семинаре выдается литература и сертификат ИПБ о повышении квалификации **.<BR> б) <B>Аудиторские консультации</B> в течение 30 дней.<BR><BR> Семинары в мае 2004 года, в рамках темы "Отчет за первое полугодие":<BR><BR> <table border=1 cellpadding=2 cellspacing=0> <tr><td>29 июня. Строительные организации. Исчисление и уплата налогов.<td>4215 руб. <tr><td>30 июня. Представительства иностранных фирм.<td>4215 руб. <tr><td>2 июля. Производство, Услуги. Исчисление и уплата налогов.<td>4215 руб. <tr><td>5 июля. Торговые организации. Исчисление и уплата налогов.<td>4215 руб. <tr><td>6 июля. Туристические организации. Исчисление и уплата налогов.<td>4215 руб. <tr><td>7 июля. Импортно-экспортные операции. Операции с валютой.<td>2220 руб. <tr><td>7 июля. Бухгалтерский учет. Отчет за первое полугодие.<td>2495 руб. <tr><td>8 июля. Упрощенная система налогообложения.<td>3555 руб. </table> <p align=justify> Лекторы: представители Минфина РФ, МНС РФ, ПФР.<BR> Для постоянных посетителей семинаров предусмотрены скидки.<BR> <B>Семинары за рубежом</B>, в рамках темы <B>"Новое в бухгалтерском учете и налогообложении"</B>.<BR>Для бухгалтеров, работников финансовых служб предприятий и руководителей.<BR> Выдается Сертификат ИПБ. Каждому участнику зарубежного семинара дополнительно - 30 дней аудиторских консультаций бесплатно и посещение одного семинара в Москве. Затраты на участие в семинаре относятся на себестоимость. Скидки от 2-ух участников.<BR><BR> <table border=1 cellpadding=2 cellspacing=0> <tr><td>11 июля 2004 г. Тунис (4****) 8 дней <td>1095 Евро <tr><td>26 июля 2004г. Италия, о. Сицилия, (4****) 8 дней<td>1767 Евро <tr><td>7 августа 2004 г. Испания, Коста Дорада, (4****) 8 дней<td>1458 Евро <tr><td>21 августа 2004г. Италия, Экскурсионный тур по 12ти городам. (3-4****) 8 дней<td>1204 Евро </table> <I><B>Прием заявок на участие в семинарах по тел/факсу 916-6377 (многоканальный).</B></I> <p align=justify> <I><B>Разовый абонемент.</B></I> Стоимость услуги 2.155 рублей.<BR> В стоимость услуги входит:<BR> а) <B>Аудиторские консультации</B> в течение 30 дней;<BR> б) <B>3-месячный абонемент на посещение любых семинаров с 45% скидкой</B>. На семинарах выдается литература и сертификат ИПБ о повышении квалификации **. <p align=justify> <I><B>Полугодовой абонемент.</B></I> Стоимость услуги - 13.495 рублей.<BR> В стоимость услуги входит:<BR> а) <B>Аудиторские консультации до 31 декабря 2004г.</B><BR> б) <B>Посещение любых семинаров без ограничений</B>, в срок действия абонемента. На семинарах выдается литература и сертификат ИПБ о повышении квалификации.<BR> Регулярно посещая семинары, Вы набираете необходимые 40 часов для продления аттестата ИПБ без дополнительных затрат **. <p align=justify> <I><B>Годовой абонемент.</B></I> Стоимость услуги - 19.495 рублей.<BR> В стоимость услуги входит:<BR> а) <B>Аудиторские консультации в течение 12 месяцев.</B><BR> б) <B>Посещение любых семинаров без ограничений</B>, в срок действия абонемента. На семинарах выдается литература и сертификат ИПБ о повышении квалификации.<BR> Регулярно посещая семинары в течении года Вы набираете необходимые 40 часов для продления аттестата ИПБ без дополнительных затрат **. <p align=justify> Все цены фиксированы на срок действия договора. <B>НДС НЕ облагаются</B>.<BR> **Сертификат ИПБ - только для действительных членов ИПБ РФ.<BR><BR> <B>Центр образования и консультаций "Кволити"</B> </BODY> </HTML> |
|
From: <Tim...@HV...> - 2004-06-21 08:06:05
|
Many thanks for the new version log4perl v 0.46 is not logdying with unwanted exit codes anymore. This is a big improvement for my projects. Regards Tim |
|
From: Mike S. <m...@pe...> - 2004-06-21 01:38:20
|
Just saw that
use Log::Log4perl qw(:nowarn)
will confuse Log::Log4perl->initialized(). Patch to distinguish between
"init happened" and "warned about it":
Index: lib/Log/Log4perl.pm
===================================================================
RCS file: /cvsroot/log4perl/Log-Log4perl/lib/Log/Log4perl.pm,v
retrieving revision 1.166
diff -a -u -r1.166 Log4perl.pm
--- lib/Log/Log4perl.pm 11 Jun 2004 00:37:43 -0000 1.166
+++ lib/Log/Log4perl.pm 21 Jun 2004 01:25:13 -0000
@@ -118,7 +118,8 @@
my $lclevel = lc($_);
*{"$caller_pkg\::$_"} = sub {
Log::Log4perl::Logger::init_warn() unless
- $Log::Log4perl::Logger::INITIALIZED;
+ $Log::Log4perl::INITIALIZED or
+ $Log::Log4perl::Logger::NON_INIT_WARNED;
$logger->{$level}->($logger, @_, $level);
};
}
@@ -127,21 +128,23 @@
*{"$caller_pkg\::LOGDIE"} = sub {
Log::Log4perl::Logger::init_warn() unless
- $Log::Log4perl::Logger::INITIALIZED;
+ $Log::Log4perl::INITIALIZED or
+ $Log::Log4perl::Logger::NON_INIT_WARNED;
$logger->{FATAL}->($logger, @_, "FATAL");
CORE::die(Log::Log4perl::Logger::callerline(join '', @_));
};
*{"$caller_pkg\::LOGWARN"} = sub {
Log::Log4perl::Logger::init_warn() unless
- $Log::Log4perl::Logger::INITIALIZED;
+ $Log::Log4perl::INITIALIZED or
+ $Log::Log4perl::Logger::NON_INIT_WARNED;
$logger->{WARN}->($logger, @_, "WARN");
CORE::warn(Log::Log4perl::Logger::callerline(join '', @_));
};
}
if(exists $tags{':nowarn'}) {
- $Log::Log4perl::Logger::INITIALIZED = 1;
+ $Log::Log4perl::Logger::NON_INIT_WARNED = 1;
delete $tags{':nowarn'};
}
Index: lib/Log/Log4perl/Logger.pm
===================================================================
RCS file: /cvsroot/log4perl/Log-Log4perl/lib/Log/Log4perl/Logger.pm,v
retrieving revision 1.63
diff -a -u -r1.63 Logger.pm
--- lib/Log/Log4perl/Logger.pm 13 Jun 2004 07:14:04 -0000 1.63
+++ lib/Log/Log4perl/Logger.pm 21 Jun 2004 01:25:14 -0000
@@ -18,7 +18,8 @@
our $ROOT_LOGGER;
our $LOGGERS_BY_NAME = {};
our %APPENDER_BY_NAME = ();
-our $INITIALIZED;
+our $INITIALIZED = 0;
+our $NON_INIT_WARNED;
__PACKAGE__->reset();
@@ -574,7 +575,7 @@
$_[0] = $LOGGERS_BY_NAME->{$_[0]->{category}} if
defined $Log::Log4perl::Config::WATCHER;
- init_warn() unless $INITIALIZED;
+ init_warn() unless $INITIALIZED or $NON_INIT_WARNED;
croak "priority $priority isn't numeric" if ($priority =~ /\D/);
@@ -677,7 +678,7 @@
*{__PACKAGE__ . "::$lclevel"} = sub {
print "$lclevel: ($_[0]->{category}/$_[0]->{level}) [@_]\n"
if _INTERNAL_DEBUG;
- init_warn() unless $INITIALIZED;
+ init_warn() unless $INITIALIZED or $NON_INIT_WARNED;
$_[0]->{$level}->(@_, $level);
};
@@ -709,7 +710,7 @@
CORE::warn "Log4perl: Seems like no initialization happened. " .
"Forgot to call init()?\n";
# Only tell this once;
- $INITIALIZED = 1;
+ $NON_INIT_WARNED = 1;
}
#######################################################
--
-- Mike
Mike Schilli
m...@pe...
|
|
From: Mike S. <m...@pe...> - 2004-06-17 17:11:44
|
Hi all,
Log::Log4perl 0.46 has been released! Here's the changes:
0.46 (06/13/2004)
* (ms) removed superfluous eval() in Log4perl.pm,
reported anonymously on the CPAN bugtracker.
* (ms) Added a cleanup() function to Logger.pm which is used by an
END {} block in Logger.pm to tear down all Loggers/Appenders
before global destruction kicks in. In addition, Kevin found
that the eval "" is the cause of an Appender memleak. Moved
assignment variable out of the eval to plug the leak.
Added $Log::Log4perl::CHATTY_DESTROY_METHODS, which shows
what L4p objects are destroyed and when.
* (ms) Kevin's idea is in now, on localizing $? in the L4p
global END {}
block. It prevents logdie() et. al from exiting with unwanted
exit codes when global cleanup / global destruction
modifies $?, as seen by Tim with the Email appender.
* (ms) Dave Viner <dv...@ya...> added isLevelEnabled()
methods as aliases to is_level().
--
-- Mike
Mike Schilli
m...@pe...
|
|
From: <al...@ro...> - 2004-06-17 05:45:50
|
Предлагаем Базы Данных фирм и e-mail адресов для организации электронной коммерции на предприятии и ведения бизнеса в сети. подробности на сайте http://databasez.p5.org.uk/ |
|
From: Mike S. <m...@pe...> - 2004-06-17 00:57:30
|
Dav...@ft... wrote on 6/16/2004, 11:11 AM:
> If there anyway to avoid dying when the listener for a configured socket
> appender is not running.
Two ways:
a) Wrap the die-ing code inside an eval { } (in your scenario, that's
L4p->init())
b) Write your own socket appender. Check out the code in
Log::Log4perl::Socket::Appender, it's trivial.
--
-- Mike
Mike Schilli
m...@pe...
|
|
From: Mike S. <m...@pe...> - 2004-06-17 00:53:38
|
Dav...@ft... wrote on 6/15/2004, 9:49 AM:
> Each job that is started by the scheduler is forked.
> This means that each job is completely independent of one another.
> Because of the fork, it does not seem possible to initialize the just
> logger once and reference the singleton methods.
This scenario is very similar to running mod_perl on a web server.
Please check out the FAQ, you might be able to initialize once (in the
scheduler) and have the children use the parent's L4P env:
http://log4perl.sourceforge.net/d/Log/Log4perl/FAQ.html#792b4
To synchronize, make sure to read this:
http://log4perl.sourceforge.net/d/Log/Log4perl/FAQ.html#23804
Your proxy solution might work as well.
--
-- Mike
Mike Schilli
m...@pe...
|
|
From: <Dav...@ft...> - 2004-06-16 18:10:19
|
If there anyway to avoid dying when the listener for a configured socket appender is not running. Something graceful, like a single warning message and the disabling of the appender. I would like to use the socket appender if the associated listener is up, else ignore it. Connect to localhost:4445 failed: Connection refused at /prod/perl/5.6.1/lib/si e_perl/5.6.1/Log/Log4perl/Appender/Socket.pm line 26. |
|
From: Kevin G. <ke...@go...> - 2004-06-16 16:47:44
|
> Now the $1,000,000 question ... who can explain this? :) Your change looks more right than the original version, to the point where it makes me wonder what I was thinking when I did it that way. Nice work, Mike. -- Happy Trails . . . Kevin M. Goess (and Anne and Frank) 904 Carmel Ave. Albany, CA 94706 (510) 525-5217 |
|
From: <Dav...@ft...> - 2004-06-16 15:19:27
|
I have chainsaw started and listing on port 4445.
I run the logtest.pl script.
I get all four error messages.
I change Chainsaw.PeerPort to 4444 in the log4j.config file.
I run sawproxy.pl in the background.
I bring up chainsaw.
Netstat shows chainsaw and sawproxy are connected.
I run the logest.pl script.
I miss the first error message, but get the following three messages.
What is special about the first use of the socket appender ?
I have looked at the code and only see the enc_set hack.
It appears that chainsaw is
sawproxy.pl output while running logtest.pl :
accepted
above child loop
error 1
<log4j:event logger="FVDCS.pgm"
timestamp="1087394303034"
level="ERROR"
thread="3326">
<log4j:message><![CDATA[one]]></log4j:message>
<log4j:NDC><![CDATA[undef]]></log4j:NDC>
<log4j:locationInfo class="main"
method="main"
file="./logtest.pl"
line="16">
</log4j:locationInfo>
</log4j:event>
error 2
<log4j:event logger="FVDCS.pgm"
timestamp="1087394313054"
level="ERROR"
thread="3326">
<log4j:message><![CDATA[two]]></log4j:message>
<log4j:NDC><![CDATA[undef]]></log4j:NDC>
<log4j:locationInfo class="main"
method="main"
file="./logtest.pl"
line="19">
</log4j:locationInfo>
</log4j:event>
error 3
<log4j:event logger="FVDCS.pgm"
timestamp="1087394323064"
level="ERROR"
thread="3326">
<log4j:message><![CDATA[three]]></log4j:message>
<log4j:NDC><![CDATA[undef]]></log4j:NDC>
<log4j:locationInfo class="main"
method="main"
file="./logtest.pl"
line="22">
</log4j:locationInfo>
</log4j:event>
error 4
<log4j:event logger="FVDCS.pgm"
timestamp="1087394333074"
level="WARN"
thread="3326">
<log4j:message><![CDATA[four]]></log4j:message>
<log4j:NDC><![CDATA[undef]]></log4j:NDC>
<log4j:locationInfo class="main"
method="main"
file="./logtest.pl"
line="25">
</log4j:locationInfo>
</log4j:event>
below child loop
[fvisdev@wdhlinux logtest]$
logtest.pl
#!/usr/bin/perl -w
use Log::Log4perl qw(get_logger);
use Log::Log4perl::Layout::XMLLayout;
use Log::Log4perl::Layout::PatternLayout;
use Log::Dispatch::FileRotate;
Log::Log4perl->init("log4j.config");
# Nasty hack to suppress encoding header
my $app = Log::Log4perl::appenders->{"Chainsaw"};
$app->layout()->{enc_set}=1;
my $logger = get_logger("FVDCS.pgm");
print "error 1\n";
$logger->error("one");
sleep 10;
print "error 2\n";
$logger->error("two");
sleep 10;
print "error 3\n";
$logger->error("three");
sleep 10;
print "error 4\n";
$logger->error("four");
sleep 10;
[fvisdev@wdhlinux logtest]$
log4j.config file :
log4perl.logger.FVDCS = WARN, Default, Chainsaw
log4perl.logger.FVDCS.pgm1=DEBUG,FVIS1Appender
log4perl.appender.Default=Log::Log4perl::Appender::File
log4perl.appender.Default.filename = sys.log
log4perl.appender.Default.layout = PatternLayout
log4perl.appender.Default.layout.ConversionPattern = %d{yyyyMMdd
HH:mm:ss.SSS} n
### The console appender
log4perl.appender.Console=org.apache.log4j.ConsoleAppender
log4perl.appender.Console.Threshold=OFF
log4perl.appender.Console.Target=System.out
log4perl.appender.Console.layout=org.apache.log4j.PatternLayout
log4perl.appender.Console.layout.ConversionPattern=[%p,%c{1}] %m%n
### The appender for Chainsaw
log4perl.appender.Chainsaw=Log::Log4perl::Appender::Socket
log4perl.appender.Chainsaw.PeerAddr=localhost
log4perl.appender.Chainsaw.PeerPort=4445
log4perl.appender.Chainsaw.layout=Log::Log4perl::Layout::XMLLayout
### The pgm1 log file appender
log4perl.appender.FVIS1Appender = Log::Dispatch::FileRotate
log4perl.appender.FVIS1Appender.filename = pgm1.log
log4perl.appender.FVIS1Appender.Logfile.max = 10
log4perl.appender.FVIS1Appender.Logfile.DatePattern = yyyyMMdd
log4perl.appender.FVIS1Appender.Logfile.TZ = EST
log4perl.appender.FVIS1Appender.layout =
Log::Log4perl::Layout::PatternLayout
log4perl.appender.FVIS1Appender.layout.ConversionPattern = %d{yyyyMMdd
HH:mm:ssn
# Don't Truncate if it aleady exists.
log4perl.appender.FVIS1Appender.Append=true
sawproxy.pl
#!/prod/gnu/bin/perl
$|=1; # force out put write immediately
use IO::Socket::INET;
use Socket;
use POSIX 'WNOHANG';
my $listport = 4444;
my $fowardport = 4445;
$SIG{CHLD} = \&reaper;
$SIG{INT} = 'IGNORE';
my $Listen = new IO::Socket::INET ( LocalHost => 'localhost',
LocalPort => 4444 ,
Listen => 25,
Timeout => 60*60,
Proto => 'tcp',
Reuse => 1 );
my $Chainsaw = new IO::Socket::INET ( PeerAddr => 'Localhost',
PeerPort => 4445 ,
Proto => 'tcp' );
# accept connection from clients
# forward xml messages to chainsaw
while ( my $new_sock = $Listen->accept())
{
print "accepted\n";
$pid = fork();
if ($pid == 0)
{
print "above child loop\n";
while (defined ($buf = <$new_sock>))
{
print $Chainsaw $buf;
print "$buf";
}
print "below child loop\n";
exit(0);
}
}
print "Out of main loop\n";
close $Listen;
close $Chainsaw;
sub reaper
{
while ( (my $kid = waitpid(-1,WNOHANG))>0 )
{
print "reaped $kid\n";
}
return;
}
|
|
From: <Dav...@ft...> - 2004-06-15 16:48:08
|
I am working on a new project that needs to standardize logging across multiple language and platforms. I want to use log4perl to standardize my logging and leverage my log4j experience. We are using java, perl, and C++. We will be using a home grown scheduler to start and monitor of event driven jobs. Each job will have at least a perl wrapper (the scheduler is written in perl). Each job that is started by the scheduler is forked. This means that each job is completely independent of one another. Because of the fork, it does not seem possible to initialize the just logger once and reference the singleton methods. If the jobs can't use the same logger, each job must initialize its own logger. This means a separate socket connection to chainsaw for each logger. Chainsaw treats each socket connection as a unique logger. This means I cant' see all the Error messages to the same (root)logger. I have to "tab" through each connection to check for errors. So I wrote a proxy script that listens on the port defined by the configured socket appenders. It merely forwards the xml message to the chainsaw listener port. This seems to work. At this point, I have effectively concentrated all my independent error messages into the proxy and am just using the the gui for presentation. Before I proceed onward and seriously hardened the proxy, has anyone else run into this situation ? Are there easier/better solutions ? |
|
From: Mike S. <m...@pe...> - 2004-06-15 15:07:42
|
Johannes Kilian wrote on 6/15/2004, 3:50 AM:
> I've got problems with synchronizing "normal" output to STDOUT and
> output from log4perl using the Log::Log4perl::Appender::Screen-Appender.
If your program writes to STDOUT and you're using
Log::Log4perl::Appender::Screen in parallel to that, that shouldn't be a
problem since both will use "print ..." to write. And therefore be
synchronized.
If you're mixing STDERR and STDOUT, this can be solved by setting
$| = 1
which flushes STDOUT every time instead of buffering it.
If you're using several processes or other non-synchronized
environments, you can still synchronize your messages via Log::Log4perl,
as explained in the FAQ:
http://log4perl.sourceforge.net/d/Log/Log4perl/FAQ.html#23804
--
-- Mike
Mike Schilli
m...@pe...
|
|
From: <MAI...@ya...> - 2004-06-15 11:29:22
|
Message from yahoo.com. Unable to deliver message to the following address(es). <bo...@ya...>: 216.145.48.28 does not like recipient. Remote host said: 550 5.1.1 <bo...@ya...>... User unknown Giving up on 216.145.48.28. --- Original message follows. Return-Path: <log...@li...> X-Rocket-Spam: 84.128.98.207 X-YahooFilteredBulk: 84.128.98.207 X-Rocket-Track: 143695: 20 ; SFLAG=OPENRELAY ; IPCR=g-w0,n0,g100 ; IP=84.128.98.207 ; SERVER=66.218.86.248 X-Originating-IP: [84.128.98.207] Return-Path: <log...@li...> Received: from 84.128.98.207 (HELO orhnnuw.net) (84.128.98.207) by mta455.mail.scd.yahoo.com with SMTP; Tue, 15 Jun 2004 04:29:13 -0700 From: log...@li... Date: Tue, 15 Jun 2004 11:22:42 GMT MIME-Version: 1.0 Subject: Das kann unmoeglich sein -Leserbrief- Importance: Normal X-Priority: 3 (Normal) Message-ID: <1a5...@li...> Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii" Am 3. Dezember wurde mein Sohn gegen 18 Uhr in der Innenstadt von einer Gruppe tuerkischer Jugendlicher angepoebelt und schliesslich von einem der Jugendlichen zusammengeschlagen. Obwohl mein Sohn den Schlaeger auf eine erst kuerzlich bei ihm durchgefuehrte schwere Kopfoperation hinwies, die durch eine ca. 20 cm lange Narbe auf der Stirn unmoeglich zu uebersehen ist, bekam er einen Faustschlag mitten ins Gesicht. Nach ambulanter Versorgung im Krankenhaus, fuhr ich anschliessend mit meinem Sohn zur Wuelfrather Polizeiwache um Anzeige zu erstatten. Dort aber mussten wir feststellen, dass der wachhabende Beamte sich Gedanken darum machte, ob mein Sohn eventuell einer rechtsradikalen Gesinnung nachhaengt. Den Verdacht hierfuer begruendete er mit den sehr kurzen Haaren meines Sohnes, die ihm nach einer Chemotherapie ausgefallen waren. Weder ich noch mein Sohn sind Anhaenger einer rechtsradikalen Gesinnung. Es kann unmoeglich sein, dass man sich noch dafuer rechtfertigen muss, von wem auch immer verpruegelt worden zu sein. Kommentar des Sober Autors: So sieht es in unserem Deutschland aus. Die Bullen sind nur bezahlte Geldeintreiber (DIE DU AUCH NOCH BEZAHLST VON DEINEN STEUERN,,...)! Wenn man die Taeter schnappt, wird sich dein Sohn wohl entschuldigen muessen, weil er sich nicht hat tot schlagen lassen! Klingt zwar etwas Zynisch, aber Kanacken duerfen das in Deutschland! In diesem Sinne . |
|
From: Johannes K. <jo...@vi...> - 2004-06-15 10:43:49
|
Hello, I've got problems with synchronizing "normal" output to STDOUT and output from log4perl using the Log::Log4perl::Appender::Screen-Appender. I'm using modules which usually write plain STDOUT/STDERR messages. in the main module all STDOUT/STDERR messages are redirected to file. On the other hand I use modules using log4perl with the screen appender.. What happens is that the output is not synchronized: while the (lengthy) output to log4perl is still not completed, a few of the "normal" STDOUT-messages appear on screen - the remainig log4perl-Messages appear after these messages. This results in a asynchrounous output file - the order of messages is screwed up .... Is there a solution to guarantee the messages appear in the same order as they are printed in my program? Thanks Johannes |
|
From: Mail A. <Pos...@su...> - 2004-06-15 10:06:23
|
Este mensaje no pudo ser entregado a su(s) destinatario(s) por el siguien= te motivo: El usuario(s) ha excedido temporalmente el tama=F1o de su buz=F3n (over q= uota): <ma...@su...> Por favor, reenv=EDelo a Pos...@su... si considera que este mensaje a=FAn contiene errores. |
|
From: <own...@NE...> - 2004-06-13 15:34:30
|
--> Error description: Error-For: LOC...@NE... Error-Code: 3 Error-Text: No such list. Error-End: One error reported. |
|
From: <own...@NE...> - 2004-06-13 15:34:30
|
--> Error description: Error-For: RM...@NE... Error-Code: 3 Error-Text: No such list. Error-End: One error reported. |
|
From: <own...@NE...> - 2004-06-13 15:34:30
|
--> Error description: Error-For: JO...@NE... Error-Code: 3 Error-Text: No such list. Error-End: One error reported. |
|
From: <own...@NE...> - 2004-06-13 15:34:29
|
--> Error description: Error-For: RL...@NE... Error-Code: 3 Error-Text: No such list. Error-End: One error reported. |