C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: log4netの出力ができない


(過去ログ 106 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■63576 / inTopicNo.1)  log4netの出力ができない
  
□投稿者/ 悩み多きランナー (1回)-(2012/09/08(Sat) 00:21:19)

分類:[C#] 

2012/09/08(Sat) 01:33:16 編集(投稿者)
お世話になります。

log4net.dllを参照追加しloggerにて単純にテキストファイルとコンソールに"ログ出力テスト"を出力したいのですが
下記の記述ではうまくいきません。何がいけないのかご教授よろしくお願い致します。

----------------------------------------------------------------------------------------------------------------
・Program.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    public class Program
    {
        private static readonly log4net.ILog logger =
        log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
        
         static void Main(string[] args)
        {
            logger.Error("ログ出力テスト");
            Console.ReadLine();

        }
    }
}
------------------------------------------------------------------------------------------------------------------
・AssemblyInfo.cs 以下の内容を追記

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]

---------------------------------------------------------------------------------------------------------------------
・log4net.configをプロジェクト直下に追加

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
  </configSections>
  <appSettings>
    To enable internal log4net logging specify the following appSettings key
    <add key="log4net.Internal.Debug" value="true"/>
  </appSettings>
  <log4net>
    <!-- コンソール出力用 -->
    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
      </layout>
    </appender>

    <!-- ログファイル出力用 -->
    <appender name="LogFileAppender" type="log4net.Appender.FileAppender">
      <param name="File" value="C:\Sample.log" />
      <param name="AppendToFile" value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
      </layout>
      <!--ファイルに出力するログレベルをFilterで設定する-->
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="DEBUG" />
        <levelMax value="ERROR" />
      </filter>
    </appender>

    <root>
      <level value="ALL" />
      <!-- LogFileAppenderを使用する場合 はコメントアウトをはずす -->
      <appender-ref ref="LogFileAppender" />
      <appender-ref ref="ConsoleAppender" />
    </root>
</log4net>
</configuration>

引用返信 編集キー/
■63577 / inTopicNo.2)  Re[1]: log4netの出力ができない
□投稿者/ オショウ (14回)-(2012/09/08(Sat) 09:08:33)
> log4net.dllを参照追加しloggerにて単純にテキストファイルとコンソールに"ログ出力テスト"を出力したいのですが
> 下記の記述ではうまくいきません。何がいけないのかご教授よろしくお願い致します。

  ttp://dobon.net/vb/bbs/log3-38/23405.html

  これ参考になります?

※ 複数の出力先は、少々厄介ですが可能です。

以上。
引用返信 編集キー/
■63579 / inTopicNo.3)  Re[2]: log4netの出力ができない
□投稿者/ 悩み多きランナー (2回)-(2012/09/08(Sat) 22:40:27)
オショウさん

回答ありがとうございます。悩んでいたのは複数の出力先というより
テキストファイルやコンソールファイルに出力自体されない原因で悩んでました。

それもAssemblyInfo.csのConfigFileをフルパスで指定すればいけました。
configファイルがプロジェクト内の直下であればファイル名の指定だけで
いけると思ったのですがExpress版でする場合はフルパス指定なんですかね。
よくわかりませんが…。

あとログファイル出力アペンダのファイルパスをCの直下にすると
セキュリティの関係で出力できないみたいで違うパスを指定すれば
テキストファイルにも出力されました。

ご案内していただいたURLはまた参考に読ませてもらいます。
ありがとうございました。
引用返信 編集キー/
■63581 / inTopicNo.4)  Re[3]: log4netの出力ができない
□投稿者/ 悩み多きランナー (4回)-(2012/09/08(Sat) 22:58:07)
No63579 (悩み多きランナー さん) に返信
> オショウさん
>
> 回答ありがとうございます。悩んでいたのは複数の出力先というより
> テキストファイルやコンソールファイルに出力自体されない原因で悩んでました。
>
> それもAssemblyInfo.csのConfigFileをフルパスで指定すればいけました。
> configファイルがプロジェクト内の直下であればファイル名の指定だけで
> いけると思ったのですがExpress版でする場合はフルパス指定なんですかね。
> よくわかりませんが…。
>
> あとログファイル出力アペンダのファイルパスをCの直下にすると
> セキュリティの関係で出力できないみたいで違うパスを指定すれば
> テキストファイルにも出力されました。
>
> ご案内していただいたURLはまた参考に読ませてもらいます。
> ありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -