Как заставить log4net работать с бензопилой на локальной машине - PullRequest
4 голосов
/ 29 августа 2010

Я хотел бы использовать UdpAppender в log4net с Apache Chainsaw для регистрации сообщений из моего веб-приложения ASP.NET.Я следовал инструкциям на веб-сайте log4net, но пакеты Udp не отправлялись (брандмауэр отключен, и я пытался контролировать мою машину с помощью TcpView - пакеты udp не генерировались вообще; другие приложения работают).Отладка Log4net не дает никаких ошибок, UdpAppender добавляется в логгеры.Я не знаю, что мне не хватает.

Мой конфигурационный файл:

<log4net debug="true">
  <renderer renderingClass="Logging.HttpContextRenderer" renderedClass="System.Web.HttpContext" />
  <appender name="UdpAppender" type="log4net.Appender.UdpAppender">
    <localPort value="8080" />
    <remoteAddress value="127.0.0.1" />
    <remotePort value="8080" />
    <layout type="log4net.Layout.XmlLayoutSchemaLog4j">
      <locationInfo value="true" />
    </layout>
  </appender>
 <root>
    <priority value="ALL"/>
    <appender-ref ref="UdpAppender"/>
  </root>
</log4net>

Ответы [ 2 ]

1 голос
/ 15 сентября 2010

У меня также была такая же проблема, и я обнаружил, что ее удаление

<localPort value="8080" />

решило ее.

Я протестировал приложение, используя пример на странице log4net UdpAppender: http://logging.apache.org/log4net/release/sdk/log4net.Appender.UdpAppender.html

но мне пришлось изменить строку

IPEndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 0);

на

IPEndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 8080);

Если вы используете это, вы можете просто переписать полученные сообщения в скользящий файл журнала, используя log4net и яПолагайте, что бензопила может это прочитать.

Это также может сработать: http://devintelligence.com/log4netviewer/

Если это не сработает, вы можете отладить log4net или использовать механизм внутреннего регистратора, упомянутый в этой статье: Log4Net работает на компьютере разработчика, происходит сбой при развертывании на общем хосте (с использованием той же базы данных / connstring) для устранения любых дальнейших проблем.

1 голос
/ 04 сентября 2010

Вот архив кого-то с похожими проблемами, использующий приложение log4net udp: http://www.mail-archive.com/log4net-user@logging.apache.org/msg03906.html

Вы можете использовать Chainsaw V2 с обычным текстовым файлом, если это будет проще (с помощью VFSLogFilePatternReceiver).

В ближайшее время будет выпущена новая версия Chainsaw с множеством улучшений. Предварительная версия и снимок экрана доступны здесь:

http://people.apache.org/~sdeboy/

...