mORMot2 的 Logger日誌
Logger 很多框架都有,簡單的實現就是一個隊列加一根線,有複雜的,QDAC裏面涉及的就很巧妙,本來QDAC就是個線程框架,所以也有先天優勢。
在mORMot 裏面自然也有日誌實現,它設計的比較麻煩。
- mORMot 的Logger 初始化
begin
TSynLog.Family.Level := LOG_VERBOSE; // disable logs for benchmarking
TSynLog.Family.HighResolutionTimestamp := false;
TSynLog.Family.NoEnvironmentVariable:=true;
TSynLog.Family.FileExistsAction := acAppend;
TSynLog.Family.PerThreadLog := ptOneFilePerThread;
TSynLog.Family.OnArchive:=@EventArchiveZip;
TSynLog.Family.AutoFlushTimeOut := 1;
end;
- mORMot 的Logger 初始化
var
log: ISynLog;
begin
log:=TSynLog.Enter();
log.Log(TSynLogInfo.sllDebug, 'accdsdfdasdfafasf');
end;
在 mORMot 1.18 中提供了要給logger日誌的查器。其實有點累贅,當然用了那個工具頓時就可以感覺到 mORMot 的日誌模式還是很厲害的。