public void Start() { // ObservableLogger.Listener.LogToUnityDebug()を呼び出すことで、 // 発行されたログをUnityEditorのコンソールに出力してくれるようになる // なお複数回呼び出すとログが重複して出力されてしまう // 多重実行に注意 UniRx.Diagnostics.ObservableLogger.Listener.LogToUnityDebug(); // ObservableLogger.ListenerはIObservable<LogEntry> // これを購読することで発行されたログを購読できる UniRx.Diagnostics.ObservableLogger.Listener // ログレベルでフィルタリング .Where(x => x.LogType == LogType.Error || x.LogType == LogType.Exception) // 1フレームの間に発行されたログを集約する .BatchFrame() //発行されたログをファイルに書き出す .Subscribe(WriteAsync) .AddTo(this); // loggerを用いて任意のLogメッセージを発行可能 // 発行したLogメッセージは ObservableLogger.Listener より購読可能 _logger.Debug("Debugメッセージ"); _logger.Error("エラーが発生しました"); _logger.Exception(new Exception("例外が発生しました")); }
public void Run() { // Debug is write only DebugBuild. logger.Debug("Debug Message"); // or other logging methods logger.Log("Message"); logger.Exception(new Exception("test exception")); }
void Start() { ObservableLogger.Listener.LogToUnityDebug(); ObservableLogger.Listener .Where(_ => _.LogType == LogType.Exception) .Subscribe(_ => print(_.Exception.Message)); _logger.Debug("debug message"); _logger.Log("log"); _logger.Exception(new Exception("exception")); }