server | v4 switch to v3  

Photon Control

Photon ControlはPhotonのワンストップ・コントロールUIです。 PhotonControl.exeを起動するとトレイバーにアイコンが追加されますが、ウィンドウが開いたり、サーバーが起動することはありません。

アイコンが灰色の場合、Photonが実行されていないことを示します。 Photon Serverのいずれかが処理を実行中の場合には、アイコンは青色に変わります。

目次

Back To Top

概要

Photon Server: Photon Control
Photon Control: アプリケーションを実行中

アイコンをクリックして、メニューを開いてください。以下が可能になります:

  • Photonの起動と停止。
  • Photonサービスのインストール、起動および停止。
  • 「LoadBalancing (MyCloud)」のゲームサーバー設定の変更。
  • Photonのパフォーマンス監視(PerfMon)カウンターの設定と開始。
  • ログファイルの表示。
  • 作業パスをエクスプローラーで表示。
  • Photonの最新バージョンを使用していることを確認。

Photon Controlを開始するには、管理者権限が必要です。 これによってWindowsファイアウォールにエントリを作ることが可能になり、最も重要な点としてPhotonへのサービスの追加や削除ができるようになります。 まず、Photon Controlはライセンスを読み込み、ライセンスの有効期間とPhotonの最新バージョンを使用しているかを確認し、結果を「Photon Control」メニューに表示します。 「Autostart Photon Control」オプションを使うと、Windowsへのログイン時にPhoton Controlを起動します。 このオプションは「Explore Working Path」を使用してPhotonのファイルを検索できるため、リモートマシンにアクセスする際に便利です。 アイコンが表示されない場合は小さな三角形をクリックし、Photon Controlのアイコンをポップアップからトレイにドラッグアンドドロップしてください。

Photon Server: Photon Control
トレイアイコンを非表示化

Back To Top

Photonを実行

Photon Server: Photon Control menu
Photon Control: コンテキストメニュー

デフォルトでは、2つの個別のPhoton設定(または「インスタンス」と呼びます)が利用可能です。 いずれも、サーバーアプリケーションと使用されるポートの組み合わせを起動します。 インスタンス「LoadBalancing (MyCloud)」を起動すると、マスターサーバーと2つのゲームサーバーが実行されます。これは互換性のあるPhoton Cloudの最低限の設定です。 2つ目のインスタンスは「MMO Demo」です

パブリックサーバー上では、Photonはサービスとして実行する必要があります。 Photon Controlでは3つの手順が必要です。 - Photonサービスをインストール - PerfMon Counterをインストール(有用な場合があります) - Photonをサービスとして起動

PerfMon Counterは実行の要件ではありませんが、Photonを実行中は有効化できません。このため、必要な場合には最初にPerfMon Counterを設定するべきです。

Photonをアプリケーションとして実行することは、ローカル開発での代替策です。 ログオフすると、Photonはシャットダウンします。

Back To Top

Photonを移動

Photonを1つのフォルダから別のフォルダに移動する前に、すべてのサービスとPhoton Controlの自動起動を必ず削除してください。 新しい場所に再びインストールしてください。

Back To Top

「LoadBalancing IP Config」パスの変更

Photon Controlを拡張的に変更することはできませんが、「PhotonControl.exe.config」内で一部の重要な設定がされています。 「GameServerConfigPaths」の設定は、LoadBalancingにもとづくプロジェクトの名前が変更された場合に必要になるかもしれません。

GameServerConfigPathsは「PhotonControl.exe」のフォルダに関連したパスを「;」で区切ったリストです。

Back To Top

ログ

Photonは必要不可欠な情報(状態、例外など)を複数のログファイルにロギングしています。 「Open Logs」をクリックするとPhotonが12時間以内に使用したすべてのログが表示されます。 もちろん、必要に応じてさらに多くのファイルを開くことが可能です。

2つの「ログ」フォルダがあります:

  • すべてのアプリケーションログdeploy/logフォルダにあります。 ロジックでログされたものはすべて、deploy/logフォルダの適切なファイルに記録されます。
  • 「server core's log」フォルダは実行ファイル(例: bin_win32/log)の格納場所です。 インスタンスとCLR(.Net runtime)に関連したすべてのものを格納します。

ロジック層ではLog4Netを使用しています。 Log4Netは拡張的に設定でき、非常に便利です。Log4netの詳細についてはこちらを参照してください。

Back To Top

カウンター

パフォーマンス分析およびエラー分析のため、Photonは必要不可欠な複数の値のトラッキングし続けています。 これらは、個別の一連のカウンターで表示されます:「PerfMonカウンター」と「ダッシュボードカウンター」です。

Back To Top

PerfMonカウンター

PerfMonカウンターはPhotonコアからのキー値で、接続ピア、パッケージ数、信頼性の高いUDPの使用状況、トラフィックなどの値をトラッキングします。開発者はこれらのカウンターを変更できず、PerfMonによってアクセスされます。 PerfMonはこれらのパフォーマンスグラフを作成するためのGUIで、既にWindowsにインストールされています。

PerfMonカウンターが(GUIを実行せずに)長時間ログを記録する必要がある場合には、Photon Controlをセットアップしてファイルへのロギングを開始できます。 「PerfMon Counters」の下で「Create Logging Set」と「Start Logging」クリックしてください。 ログは、「C:\PerfLogs\Admin\photonperflog_.blg」の下で終了します。

Back To Top

ダッシュボードカウンター

ダッシュボードカウンターはロジック内の値をトラッキングし、拡張可能です。

Back To Top

ダッシュボード

ダッシュボードはカウンターの値を集計し、Webサイトでこれらの値を監視するためのグラフを生成します。

Photonをすでに実行している場合、ダッシュボードをサービスとしてインストールすることが可能です。 どのカウンターデータをアプリケーションが表示するかは、アプリケーションの設定に依存します。 LoadBalancingには、あらかじめ定義された複数のカウンターがあり、すぐに利用できます。

Back To Top

トラブルシューティング

Photonの挙動が想定どおりでない場合には、常にログを確認してください。

以下は、よくある落とし穴であり、確認が必要です。

  • .NET 4.0の欠落:この場合Photonは起動できません。 CLRバージョンとこちらを混同しないでください。
  • アプリケーションの欠落: 構成されたアプリケーションの1つを見つけられない場合には、Photonは起動できません。 展開フォルダと設定を照合してください。
  • ビルドが最新版ではない: 新しいサーバーSDKに切り替える場合、libsフォルダからアセンブリを参照して、アプリケーションを常に再構築する必要があります。さもないと、互換性がなくなる可能性があります。
  • ファイアウォール: Photonが稼働していても、別のマシンからアクセスできない場合には、ファイアウォールを確認してください。より新しいバージョンのWindowsには役割と権利があり、ホスティング事業者はおそらくファイアウォール装置を使用している事でしょう。
  • ラグ: デフォルトでは、ラウンドとリップタイムはローカルでも約50ミリ秒です。   これは設定に依存し、セットアップページに説明が記載されています。以下を参照してください:Send Delay and Ack Delay(送信遅延とのACK遅延)

Back To Top

ダンプファイルの設定

サーバーがクラッシュし、その理由がログに見つからない場合には、ダンプファイルを作成するようにPhotonを構成することができます。 ダンプファイルはクラッシュの状態とメモリを反映しており、この問題をデバッグするために大変貴重です。

機能を有効にするには、「PhotonServer.config」を編集する必要があります。 インスタンス属性「ProduceDumps」を真(true)に設定してサーバーを再起動してください。 以下の例のようになります。

        <Default
            EnablePerformanceCounters = "true"
            DataSendingDelayMilliseconds="50"
            AckSendingDelayMilliseconds="50"
            MinimumTimeout="5000"
            MaximumTimeout="30000"
            ProduceDumps="true">

これによって、最大10個の「完全」なダンプファイルが出力されます。 ダンプファイルが出力されたら、ログとともにそれを圧縮保存し、問題の説明とともに弊社当てにメールを送信してください。 弊社から折り返しご連絡し、必要な情報を入手のうえ問題解決に努めます。

ドキュメントのトップへ戻る