etc.negui.system.utility.log

ログ。
親から子へログオブジェクトが渡されていくので擬似的な階層出力になる。 基本的には以下の形でなんらかに出力。
YYYY/MM/DDThh:mm:ss.ms module(line) [Name:Number] Message
YYYY/MM/DDThh:mm:ss.ms module(line) [Name:Number>Name:Number] Message
YYYY/MM/DDThh:mm:ss.ms module(line) [Name:Number>Name:Number>Name:Number] Message
History:
1.100
  • 新規作成。
class LogException: etc.negui.system.exception.NeGuiException;

struct LOGGERINFO;

abstract interface ILogger;
ログの継承用。
protected abstract void DoWrite(in Text Message );
write時の挙動。
abstract ILogger logger(in Text Name , bool Inheritance = true);
子供の作成。
scopeが良かった。
abstract const(Text) write(lazy const(Text) Message , string _file = __FILE__, int _line = __LINE__);
書き込み
基本的にはsuper.write呼び出せば問題ないかと。
abstract class Log: etc.negui.system.utility.log.ILogger;
ログ。
this(in Text Name , const LOGGERINFO* OwnerLogger = null);

bool enable;

const(Text) write(lazy const(Text) Message , string _file = __FILE__, int _line = __LINE__);

protected const LOGGERINFO GetMeToOwner();
logger用LOGGERINFO情報設定。
class Logger: etc.negui.system.utility.log.Log, etc.negui.system.utility.log.ILogger;
ファイル出力ログ。
this(in Text LogFilePath , in Text Name );

void delegate(in const(Text) Message) exWrite;

final void close();

protected void DoWrite(in Text Message );

Logger logger(in Text Name , bool Inheritance = true);

const(Text) write(lazy const(Text) Message , string _file = __FILE__, int _line = __LINE__);

string SMixInLog(string LogTitle , string OwnerLogName = "OwnerLog", string ScopeLogName = "log");