ページ ツリー

 コンテンツ

質問

Helixサーバログを分析したいが、分析に使用することができるツールなどはありますか?

回答

Helixサーバログをアップロードして分析を行う、【Perforce Server Log Analyzer】Perforce Workshopにて公開されています。

データベースをロックしている時間や、実行されたコマンドなどの情報を分析することができます。

手順

1.Perforce Server Log Analyzerを入手する

Perforce Workshopへアクセスし、[ Zipファイルをダウンロード ]から"Log Analyzer"のプロジェクトを入手します。
 Zipファイルは"$HOME\log-analyzer"などのディレクトリに解凍します。

2.インストールする

"Python(2.7または3.6)"または"Docker"でのインストール方法を記載しています。

環境にあわせてご確認ください。

■ Python(2.7または3.6)を使用して実行する

① 依存関係をインストールする。

解凍したディレクトリに移動して依存関係をインストールします

コマンド例

cd psla
pip install -r requirements.txt

※pipがインストールされていない場合は事前にpipをインストールしてください

② "Perforce Server Log Analyzer"を実行する。

"run_psla.sh"を実行して、 "Perforce Server Log Analyzer"を起動します

コマンド例

./run_psla.sh
  デフォルトのポート5000を使用します
./run_psla.sh 5005
  ポート5005を使用して起動します

実行結果例

$ ./run_psla.sh
* Serving Flask app "psla"
* Forcing debug mode on
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 840-914-035

■ Dockerを使用して実行する

① 解凍したディレクトリに移動してbuildを実行します。

コマンド例

cd psla
make build

※ buildには5分から10分程度かかります
※ インターネットに接続できる環境でご実行ください
※ 以下エラーが表示された場合はpipのアップグレードを実行してください

エラーメッセージ

You are using pip version 9.0.3, however version 19.3.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

アップグレードコマンド例

pip install --upgrade pip

② コンテナを作成します。

コマンド例

docker run --rm -p=5000:5000 --name=psla -v `pwd`/psla/logs:/logs psla

実行結果例

$ docker run --rm -p=5000:5000 --name=psla -v `pwd`/psla/logs:/logs psla
* Serving Flask app "app" (lazy loading)
* Environment: production
   WARNING: Do not use the development server in a production environment.
   Use a production WSGI server instead.
* Debug mode: on
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 161-630-806

3.Log Analyzerにログファイルをアップロードする

① "http://localhost:5000" にアクセスします
※ Localhost、5000についてはそれぞれLog Analyzerをインストールした環境にあわせてください

② 表示された画面の[ Upload a New Log ]を押下します

③ [ ファイルを選択 ]でログファイルを指定し、[ Upload ]ボタンをクリックします
※ .txt、.gz、.zip、.log、拡張子なしのファイルがアップロード可能です

4.アップロードしたログを解析する

ログがアップロードされると以下画面が表示されるので[ Analyze ]を押下して解析を実行します
※ 標準で用意されているクエリが実行され、解析結果が表示されます

■ "Perforce Server Log Analyzer"のトップページから解析を実行する場合
[ Analyze Log DB ]を選択した後、解析対象のログファイルを指定して[ Analyze ]を押下します

5.解析結果を確認する

解析が終了すると解析結果画面が表示され、画面下部には、実行されたコマンドの数や、DBロックを保持しているコマンドを発行したユーザの情報などが表示されます。

■ 分析結果をチャートで表示する

解析結果画面で[ Display chart for selected DB ]を選択すると、分析結果をチャート表示することができます

■ ログの情報を確認する

解析結果画面で[ Run interactive SQL on selected DB ]を選択すると、SQLクエリを作成してログの情報を確認することができます
ログ情報画面の[ Table schema with explanations ]を押下すると、テーブルのフィールド名などの確認が可能です