ログ。
親から子へログオブジェクトが渡されていくので擬似的な階層出力になる。
基本的には以下の形でなんらかに出力。
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
class LogException: etc.negui.system.exception.NeGuiException;
struct LOGGERINFO;
abstract interface ILogger;
ログの継承用。
protected abstract void DoWrite(in Text Message
);
abstract ILogger logger(in Text Name
, bool Inheritance
= true);
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();
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");