Helix Swarm管理者ガイド (2020.1)

システム情報

注意

[システム情報]ページを使用できるユーザは、admin 権限を持っているユーザとsuper 権限を持っているユーザです。

[システム情報]ページには、Perforceのサポートエンジニアにサポートを依頼する場合に役立つ詳細情報が表示されます。

[システム情報] ページを表示するには、[ユーザID]ドロップダウンメニューで[システム情報]をクリックします。

[ユーザID]ドロップダウンメニューの画像

このセクションの内容

Perforce

[Perforce]タブには、p4 infoコマンドを実行した場合と同様の情報が表示されます。

[Perforce]タブの画像

ログ

[ログ]タブをクリックすると、1メガバイトを上限として、SWARM_ROOT/data/logに保管されているSwarmのログファイル内の最新エントリが表示されます。 Swarmログのログレベルを確認して、必要なエントリがログに記録されるようにしてください。

[ログ]タブの画像

ログエントリに重大なエラーが含まれている場合は、次のように矢印が表示されます。

エラーをクリックすると、そのエラーに関するスタックトレースが表示されます。

ログタブボタン:

  • [ログを更新]ボタン: クリックすると、1メガバイトを上限として、最新のエントリがロードされます。
  • [ログをダウンロード]ボタン: クリックすると、ログとそのすべてのエントリがダウンロードされます。

ログエントリに重大なエラーが含まれている場合は、次のように矢印が表示されます。

エラーをクリックすると、そのエラーに関するスタックトレースが表示されます。

PHP情報

[PHP情報]タブをクリックすると、phpinfo()コマンドによって生成されたPHP情報が表示されます。これは、PHPの内部的な診断情報です。

PHP情報タブ

キュー情報

[キュー情報]タブをクリックし、Swarmのタスクキュー情報を表示します。

注意

ワーカーは、繰り返しタスクを使用して自動的に起動します。 自動的にワーカーを生成する繰り返しタスクの設定方法について詳しくは、「ワーカーを生成する繰り返しタスクをセットアップする」を参照してください。

[キュー情報]タブの画像
  • タスク: キュー内にあるタスクの数を表示します。
  • 今後のタスク: キュー内にある今後のタスクの数を表示します。 例えば、ユーザが作業している場合、デフォルトでは、コメントの通知は30分遅れて送信されます。 これは今後のタスクです。
  • ワーカー: サービスタスクに使用可能なワーカーの数を表示します。
  • ヒント

    ワーカーの数が0(ゼロ)の場合、以下のような動作になります。

    • ワーカーは自動的に作成されません。 自動的にワーカーを生成する繰り返しタスクの設定方法について詳しくは、「ワーカーを生成する繰り返しタスクをセットアップする」を参照してください。
    • 繰り返しタスクを再び実行しているときに現在のタスクキューを処理するには、[一時ワーカーを開始]をクリックします。 これが、問題の修正中に再びSwarmを実行する最短の方法です。

  • ワーカーの最大数: 許可されているワーカーの最大数を表示します。 デフォルト値は3です。
  • ワーカーのライフタイム: 設定されているワーカーのライフタイムを表示します。 デフォルトは595秒(10分間マイナス5秒)です。
  • Pingエラー: 使用されていません。

キュー情報ボタン:

  • [ワーカーを開始]ボタン: クリックすると、新しいSwarmワーカーを手動で起動します。 新しいワーカーは、設定されたワーカーのライフタイムしか続きません。 実行中のワーカーの数が設定されている制限値と一致する場合、新しいワーカーは起動しません。
  • ヒント

    繰り返しタスクが停止し、再び実行中にタスクキューを処理するには、[一時ワーカーを開始]をクリックして一時ワーカーを開始します。 これが、問題の修正中に再びSwarmを実行する最短の方法です。

  • [タブを更新]ボタン: クリックすると、タブのキュー情報を更新します。
  • [タスクキューを表示]ボタン: クリックすると、タスクキュー情報を表示します。 タスクキューが表示されると、ボタンは[タスクキューを非表示]に変更します。 タスクキューはキュー内のタスクと今後のタスクの詳細を表示します。
  • [一時ワーカーを開始]ボタン: クリックすると、Swarm一時ワーカーを手動で起動します。 通常、ワーカーを自動的に生成する繰り返しタスクを修正中に、一時ワーカーを使用してキュー内の現在のタスクを処理します
  • これは特別なSwarmワーカーで、ワーカーのライフタイムから除外され、現在のキュー内のすべてのタスクを処理するか、いずれかのタスクが失敗するまで停止しません。

タスクキュー

[タスクキューを表示]ボタンをクリックすると、Swarmキューのタスクを表示します。

システム情報、キューを表示

キャッシュ情報

[キャッシュ情報]タブをクリックすると、Swarmのキャッシュ情報が表示されます。

[キャッシュ情報]タブの画像

ヒント

デフォルト設定の場合、毎日午前3時にSwarmによる定期検証処理が実行され、RedisキャッシュとHelixサーバが同期されているかどうかが確認されます( SwarmとRedisの接続を参照)。

[キャッシュ情報]タブには、キャッシュの検証ステータスと、各Redisキャッシュの検証処理の進捗状況が表示されます。

  • 有効なステータスは、Not QueuedQueuedRunningFailedです。
  • 進行状況の有効なステータスは、「Step x of y;」です(「x」現在のステップ、「y」は合計ステップ数です)。このステータスの後に、以下に示すいずれかのテキストが表示されます。
    • Getting Redis cache entries
    • Calculating checksums for Redis keys
    • Calculating checksums for Perforce models
    • Clearing any extraneous Redis cache entries
    • Indexing any missing Perforce models into the Redis cache
    • Verification complete

[ステータスの更新]ボタン

タブに表示されるキャッシュ情報を更新するには、[ステータスの更新]をクリックします。

検証ボタン

重要

多数のユーザ、グループ、プロジェクトが存在するSwarmシステムの場合、キャッシュの検証処理に時間がかかり、パフォーマンスが低下することがあります。

通常の運用環境では、RedisキャッシュとHelix Coreサーバデータは常に同期された状態になるため、キャッシュを検証する必要はありません。

多数のユーザ、グループ、プロジェクトがシステム上に存在している場合は、[すべて検証]オプションを使用するのではなく、ユーザキャッシュとグループキャッシュを個別に検証することをお勧めします。

通常の運用環境では、RedisキャッシュとHelix Coreサーバデータは常に同期状態が保たれるため、キャッシュを確認する必要はあります。 しかし、Swarmが停止している状態でHelixサーバで変更を行った場合や、更新中にエラーが発生した場合など、特定の状況において、RedisキャッシュがHelixサーバと同期されていない状態になることがあります。

キャッシュに問題がある場合は、検証ボタンをクリックすると、キャッシュを手動で検証することができます。 [すべて検証]ボタンを使用する前に、上記の「重要」セクションの情報を確認してください。 確認の結果、キャッシュとHelixサーバが同期されていないことが検出された場合は、Swarmにより、キャッシュ内のデータが自動的に更新されます。

例えば、ユーザキャッシュを確認するには、以下の手順を実行します。

  1. Swarm[システム情報]ページの[キャッシュ情報]タブに移動します。
  2. [ユーザの確認]をクリックします。
  3. ユーザキャッシュの確認が正常に完了したことを通知するメッセージがSwarmによって表示されます。

[構成の再ロード]ボタン

Swarmの構成情報は、SWARM_ROOT/data/config.phpファイルに保存されます。 構成情報を変更しても、その構成情報がSwarmで使用されることはありません。変更した構成情報をSwarmで強制的に使用するには、構成キャッシュを削除してから再ロードする必要があります。

Swarm構成キャッシュを削除して再ロードするには、以下の手順を実行します。

  1. Swarm[システム情報]ページの[キャッシュ情報]タブに移動します。
  2. [構成の再ロード]をクリックします。
  3. 構成情報が正常に再ロードされたことを通知するメッセージがSwarmによって表示されます。

    これで、更新後のSwarmconfig.phpファイルがSwarmで使用されるようになります。