Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

ILogHandler

interface in UnityEngine

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える

説明

カスタムログハンドラーを実装するためのインターフェース

ユニットテストとロガーのモック作成を容易にする ILogHandler インターフェーイス


        
using UnityEngine;
using System.Collections;
using System.IO;
using System;

public class MyFileLogHandler : ILogHandler { private FileStream m_FileStream; private StreamWriter m_StreamWriter; private ILogHandler m_DefaultLogHandler = Debug.logger.logHandler;

public MyFileLogHandler() { string filePath = Application.persistentDataPath + "/MyLogs.txt";

m_FileStream = new FileStream (filePath, FileMode.OpenOrCreate, FileAccess.ReadWrite); m_StreamWriter = new StreamWriter (m_FileStream);

// Replace the default debug log handler Debug.logger.logHandler = this; }

public void LogFormat (LogType logType, UnityEngine.Object context, string format, params object[] args) { m_StreamWriter.WriteLine ( String.Format (format, args) ); m_StreamWriter.Flush (); m_DefaultLogHandler.LogFormat (logType, context, format, args); }

public void LogException (Exception exception, UnityEngine.Object context) { m_DefaultLogHandler.LogException (exception, context); } }

public class MyGameClass : MonoBehaviour { private static ILogger logger = Debug.logger; private static string kTAG = "MyGameTag"; private MyFileLogHandler myFileLogHandler;

void Start() { myFileLogHandler = new MyFileLogHandler();

logger.Log(kTAG, "MyGameClass Start."); } }

Public 関数

LogException例外メッセージをログする ILogHandler.LogFormat のバリアント
LogFormat書式設定されたメッセージをログします。