0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Spatial.ioメタバース】Debug.Logの確認方法

Last updated at Posted at 2025-05-15

Spatial.io で開発を行っていく際に、動作確認や不具合の原因究明のために Debug.Log を出力し、その内容を確認したい場面があるかと思います。この記事では、Spatial.io のメタバース環境で Debug.Log を確認する方法について解説します。

1. 動作環境

  • Windows 11
  • Unity 2021.3.44f1
  • Spatial Creator Toolkit
  • Web ブラウザ(今回はChrome)

2. 実際のコードとUnityエディタでの確認

UnityでC#スクリプトを作成し、Debug.Log(), Debug.LogWarning(), Debug.LogError() を使用してメッセージを出力する簡単な例を以下に示します。

using UnityEngine;

public class DebugLogExample : MonoBehaviour
{
    void Start()
    {
        // 通常のデバッグメッセージを出力
        Debug.Log($"[DebugLogExample] これは通常のデバッグメッセージです。");

        // 警告メッセージを出力
        Debug.LogWarning($"[DebugLogExample] これは警告メッセージです。");

        // エラーメッセージを出力
        Debug.LogError($"[DebugLogExample] これはエラーメッセージです。");
    }
}

解説:

  • 上記のスクリプト( DebugLogExample.cs )を作成しUnityゲーム内のGameObjectにアタッチします。
  • Start() メソッドは、シーン開始時に一度だけ呼び出され、それぞれのログメッセージを出力します。

Unityエディタ内での確認:

Unityエディタでシーンを再生すると、コンソールウィンドウ(メニュー: Window > General > Console)に以下のようにログが表示されます。
01.png

3. Spatial.io環境でのログ確認方法

Unityエディタでログが確認できたら、次はSpatial.io環境での確認です。主なアプローチは以下の通りです。

  1. F12 で開発者ツール起動
  2. Console タブを選択
  3. フィルタに [DebugLogExample] を追加して関連ログのみを表示

02.png

4. Spaital ILoggingService の解説

ILoggingService は Spatial Creator Toolkit で提供されるロギングサービスで、エラーログの管理と表示を行います。
現在はコンソールにエラーを記録するだけですが、将来的には開発者が確認できるリモート サーバーにログを記録するサービスを提供する予定です。
2つのオーバーロッドがあり、用途に応じて使い分けます。

1. LogError(string, Exception, Dictionary)

概要:

  • エラーメッセージを主に指定し、必要に応じて例外や追加データも付加できます。

シグネチャ:

void LogError(
	string message,
	Exception exception = null,
	Dictionary<string, object> data = null
)

使用例:

using System;
using System.Collections.Generic;
using SpatialSys.UnitySDK;

public class LoggingExample : MonoBehaviour
{
    void Start()
    {
        try
        {
            // 例外を発生させるコード
            throw new InvalidOperationException("無効な操作が行われました。");
        }
        catch (Exception ex)
        {
            // エラーメッセージと例外をログに記録
            SpatialBridge.loggingService.LogError(
                "エラーが発生しました。",
                ex,
                new Dictionary<string, object>
                {
                    { "詳細", "追加のデータやコンテキスト情報" }
                }
            );
        }
    }
}

2.LogError(Exception, Dictionary)

概要:

  • Exception オブジェクトを主に指定し、必要に応じて追加データを付加できます。

シグネチャ:

void LogError(
	Exception exception,
	Dictionary<string, object> data = null
)

使用例:

using System;
using System.Collections.Generic;
using SpatialSys.UnitySDK;

public class LoggingExample : MonoBehaviour
{
    void Start()
    {
        try
        {
            // 例外を発生させるコード
            throw new NullReferenceException("オブジェクト参照が設定されていません。");
        }
        catch (Exception ex)
        {
            // 例外と追加データをログに記録
            SpatialBridge.loggingService.LogError(
                ex,
                new Dictionary<string, object>
                {
                    { "操作", "データの読み込み" },
                    { "ユーザーID", 12345 }
                }
            );
        }
    }
}

まとめ

Spatial.io環境でのデバッグログ確認は、まずUnityエディタ内で Debug.Log 系を使い徹底的に行い、その後ブラウザの開発者コンソールを補助的に使用するのが基本的な流れとなります。

より詳細なエラー情報や将来的なプラットフォーム連携を考慮する場合は、SpatialBridge.loggingService.LogError の活用を検討しましょう。

ログを効果的に活用して、より快適なメタバース開発を進めましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?