Exemple #1
0
        /// <summary> このロガーをテキスト(.txt)出力型としてセットアップします。
        /// <para> -> セットアップされたファイルログ出力設定を使用して、インスタンスを生成します。</para>
        /// <para> -> ログ出力レベルはデフォルト(全て)を設定します。</para>
        /// <para> --- Code Hint ---</para>
        /// <para> (Logger) = new Logger();</para>
        /// <para> (Logger).LoggerSetting.FileLogSetting.FilePath = "xxxxx"; </para>
        /// <para> (Logger).LoggerSetting.FileLogSetting.FileName = "zzzzz"; </para>
        /// <para> (Logger).LoggerSetting.FileLogSetting.FileExtension = ".txt"; </para>
        /// <para> (Logger).LoggerSetting.FileLogSetting.AddFileNameDate = true or false; </para>
        /// <para>  |</para>
        /// <para> (Logger).LoggerSetting.SetupTextLogger((Logger).LoggerSetting.FileLogSetting); </para>
        /// </summary>
        public void SetupTextLogger(FileLogSetting in_FileLogSetting)
        {
            // ログ出力レベル=全て
            this.OutputLevelSetting.SetOutputLevel(OutputLevelSetting.LevelPreset.All);

            this.LogWriter = new TextLogWrite(this.FileLogSetting, this.OutputLevelSetting);
        }
        /// <summary>
        /// To avoid multiple file appenders acting on the same log file, this class must be singleton.
        /// </summary>
        public static DefaultFileTarget GetInstance(FileLogSetting logSetting)
        {
            if (_singleton != null)
            {
                return(_singleton);
            }

            var singleton = new DefaultFileTarget();

            if (Interlocked.CompareExchange(ref _singleton, singleton, null) == null)
            {
                _logSetting = logSetting;
            }

            return(_singleton);
        }
Exemple #3
0
        /*--- コンストラクタ --------------------------------------------------------------------------------------------------------------------------------------------*/

        /// <summary> コンストラクタ
        /// </summary>
        /// <param name="in_LogSetting"> ログファイルの出力設定データ </param>
        /// <param name="in_LevelSetting"> ログ出力のレベル </param>
        public TextLogWrite(FileLogSetting in_LogSetting, OutputLevelSetting in_LevelSetting)
            : base()
        {
            this.FileLogSetting     = in_LogSetting;
            this.OutputLevelSetting = in_LevelSetting;
            this.LogEncoding        = Encoding.GetEncoding("utf-8");

            this.writerCreationTime = DateTime.Now;

            if (this.FileLogSetting.AddFileNameDate)
            {
                string dateString = "_" + this.writerCreationTime.ToString(this.FileLogSetting.FileNameDateFormat);
                this.logWritePath = Path.Combine(
                    this.FileLogSetting.LogDictionary, this.FileLogSetting.FileName + dateString + this.FileLogSetting.FileExtension);
            }
            else
            {
                this.logWritePath = Path.Combine(
                    this.FileLogSetting.LogDictionary, this.FileLogSetting.FileName + this.FileLogSetting.FileExtension);
            }
        }
Exemple #4
0
 public DefaultLogManager(LogLevel defaultLogLevel, FileLogSetting logSetting)
 {
     _defaultLogLevel = defaultLogLevel;
     _logger          = new DefaultLogger("DefaultLogger", DefaultLogLevel, DefaultFileTarget.GetInstance(logSetting), new DefaultLogFormatter(null));
 }
Exemple #5
0
 public DefaultLogManager(FileLogSetting logSetting)
     : this(LogLevel.Trace, logSetting)
 {
 }