Angelfish 運用について

 大項目  項 目

 運用について
+
●Angelfish 停止
Linuxでは、AngelfishインストールディレクトリのagfsctlユーティリティでAngelfishを停止できます。

"./agfsctl --stop"

Windowsでは、「Angelfishの停止:スタートメニュー」ショートカットでAngelfishを停止します。

●Angelfish 起動

Angelfishを起動するには、 "./agfsctl --start"(Linux)

またはスタートメニューのショートカット(Windowsのみ)を実行してください。

+
Angelfishのデータディレクトリ(レポートデータ)は、次の4つの簡単なタスクで移動できます。
・Angelfishを停止
・データディレクトリを新しい場所に移動する
・agf.confを新しい場所で更新する
・Angelfish開始


●Angelfish 停止
 Linuxでは、AngelfishインストールディレクトリのagfsctlユーティリティでAngelfishを停止できます。

 "./agfsctl --stop"
 Windowsでは、スタートメニューのショートカット「Angelfishの停止」を使用して停止します。

●データディレクトリを新しい場所に移動する
 Angelfishを所有するユーザーアカウントに、新しい場所に対する完全なアクセス権が
 あることを確認してください。
 コピーが完了したら、「古い」データディレクトリを削除する前に、
 すべてが正しく動作していることを確認してください。

●agf.confを新しい場所で更新する
 agf.confファイルは、Angelfishインストールディレクトリにあります。
 "datadir"変数をAngelfishデータディレクトリの新しい場所に更新してください。
  Linux Example:
   # Angelfish Data Directory Location
   datadir=/mnt/san01/agfs/data

●Angelfish 起動
 Angelfishを起動するには、 "./agfsctl --start"(Linux)
 またはスタートメニューのショートカット(Windowsのみ)を実行してください。


Angelfishサイト

 https://support.angelfishstats.com/hc/en-us/articles/231568968-Moving-the-Data-Directory


+
バックアップするには、/dataディレクトリ全体とagf.confをバックアップする必要があります。
SSLが有効になっている場合は、更に/certsをバックアップする必要があります。

 ・dataディレクトリ → プロファイル毎のレポートデータなど
 ・agf.conf → Angelfish 環境情報(カスタマイズした場合に必要)

  



   
+
ライセンスの有効期間内でしたら、ライセンスを継続して使用できます。
その際は、同じServer IDを使用します。


+
プロファイル/データソース/フィルターなどを別のサーバーに移動する場合は、
両方のサーバで同じServer IDを使用する必要があります。

●データの移行方法は次のとおりです。
 ※2つのAngelfishのインスタンスが含まれています: "現在"と"新しい"

 ・現在のバージョンと同じバージョンを新しいサーバーにインストールします。
 ・同じサーバIDを使用して新しいサーバのロックを解除します。
  → ★弊社サポートに依頼。
 ・新しいサーバーの/data ディレクトリの内容を削除します。
 ・現在のサーバの/data ディレクトリの内容を、新しいサーバの/data ディレクトリにコピーします。
 ・新しいサーバでAngelfishを起動してログインしてください。
 ・現在のサーバの、Angelfishをアンインストールする。


+
Linux では /usr/local/agfs/log ですね。
はい、これはangelfishd.log(Angelfishアクセスのログ)など増えてまいります。
+
パスワードをリセットするコマンドがございます。
★弊社サポートにEメールでお問合せください。
+
一般的には、ログファイルごとにDatasourcesを作成します。
例)2つのログファイルの場合
 access_log-www01-YYYYMMDD.gz
 access_log-www02-YYYYMMDD.gz

 ○2つのDatasourcesを作成し、Date Substitution Offsetなどを設定する。

   ・Datasources1 → access_log-www01-YYYYMMDD.gz
   ・Datasources2 → access_log-www02-YYYYMMDD.gz

 ○プロファイルのDatasourcesタブで対象のDatasourcesをすべて設定する。

   ・Profile Datasourcesタブ Selected
      → Datasources1、Datasources2
+
解析中にAngelfishが何かの原因で停止した場合は、再解析する期間のレポートデータを
削除する必要があります。
レポートデータ削除は、
  Profiles-Run/Data ManagementタブーDelete Data-Custom Rangeで期間を指定します。

●再解析方法
一般的な再解析方法を説明いたします。
①ワークのDatasourcesを作成します。
 ・Newボタンから作成してください。
 ・Copyボタンで作成した場合は、Copy元のDatasourcesが設定されている
  プロファイルに、ワークで作成した★Datasourcesも追加されますので気を付けてください。

②ワークのDatasourcesのLocationで、
 ・再解析したいログファイルをLocationで指定します。
  ※大量のログファイルを対象にした場合に、解析に長時間かかり、
   日次処理にも影響がある場合があります。
   まずは、10日間くらいで解析して、解析時間を調べてください。

③対象日付のログファイルが存在することを確認してください。
 ・Locationの右側のBrowseボタン押下で確認してください。

④再解析したいプロファイルのDatasources
 ・ワークのDatasourcesに差し替えます。
  ※変更する前に、元のDatasourcesをメモしておく

⑤再解析したいプロファイルの「 Run/Data Management 」タブの
 「 Ignore Log Tracking Once 」を「ON」にします。

⑥再解析
 ・手動で解析実行
  プロファイルのRun/Data ManagementタブでProcess Dataボタンを押下。

⑦解析結果を確認してください。
 再解析が終了しましたら、忘れずにプロファイルのDatasourcesを日次処理用に戻してください。
 ※メモを参考に

⑧再解析終了後、 「 Run/Data Management 」タブの「 Ignore Log Tracking Once 」を
   「OFF」に戻します。


=====
Location指定のサンプル

例)/log/access_log-YYYYMMDD.gz
  /log/配下の解析日を基準にDate Substitution Offsetで指定されたYYYYMMMDDとなります。
例)/log/access.log-202003(.*)
  /log/配下のaccess.log-20200301.gz ~ access.log-20200331.gz 対象となります。
例)/log/.*
  /log/配下のすべてのログファイルが対象となります。
  Locationの右側のBrowseボタン押下でFind Matchesボタンで、
  対象ファイルを確認してください。
=====
+
 ハードウェア要件以外のパフォーマンスを最適化する方法を示します。

 ページのレポート条件
  ・ページビュークエリパラメータの制限
   必要なクエリパラメータのみをレポートすることをお勧めします。
  ・ページビューファイルタイプの削減
   ページビューとしてカウントされるファイルタイプを指定します。
  ・ページビュークエリパラメータの制限
   詳細フィルターを使用して、不要な文字列をページから削除できます。
  ・ロボットなどの訪問を無視する
   しきい値を設定し、ロボット/クローラーからの訪問とページビューを自動的に除外します。

 agf.conf設定を編集する
  ・cache_size
   この変数は、各APIスレッドで使用されるメモリの量に影響します。
  ・max_threads
   APIリクエストは同じサイズの n スレッドに分割されます。   ・max_log_processors
   この変数は、Angelfishが同時に処理するプロファイルの数に影響します。

 ITレポートを無効にする
  ヒット情報/ダウンロード/盗まれた帯域幅レポートを無効にすることができます。

 Rawフィルターを使用する
  Rawのフィルターは、解析の訪問ロジックがスタートする前に適用されます。

+
解析結果のステータスをメールで送付する機能がございます。
※Angelfishサーバのメール環境などによっては動作しない場合がございます。

 ■ Global-Settings-SMTP Settings
  ①必要情報を設定してセーブします。
   次ページを参照してください。

   

   

   
  ②テストメールを送信します。
   下記を参照してください。

   


  ③明日朝のメールを確認します。
   次ページ以降のステータスのサマリーレポートを参照してください。
   Finished 以外は調査が必要かと判断できます
   ★メーラーでSpamになる可能性がありますので、留意してください。
   

   


+
エクスポートの件数は、agf.confの "max_results"設定によって制限されます。
agf.confファイルは、Angelfishインストールディレクトリにございます。

●変更手順
 〇Angelfish 停止 (Linux)
  ./agfsctl --stop
 〇agf.confファイルのmax_resultsを変更
  例)
   max_results=10000 → max_results=500000
 〇Angelfish 起動 (Linux)
  ./agfsctl --start
 
このページの上部へ戻る

Angelfish トラブルシューティングについて

 大項目  項 目

 トラブルシューティング
+
下記のエラーが表示され、Angelfishは終了しています。
--------------------------------
Processing local file access.log

Visit-level processing is complete.
Waiting for hit-level processing to complete.
Hit-level processing is complete.
Compacting / optimizing database files.
Database maintenance failed during vacuum. → ★
Processing complete.
--------------------------------

/data 容量が少なく、DBメンテナンスが出来なかったとのメッセージです。
解析は正常に解析されています。

Angelfish /data ディレクトリを含むパーティションに
十分な空き容量がないと、DBメンテナンスは正常に完了しません。
DBメンテナンスタスクには、最大のレポートデータファイルの約1.5倍のサイズが必要です。
たとえば、5 GBのagfs-vs.dbファイルがある場合、パーティションに7.5 GBの空き容量が必要になります。

それ以上のスペースを割り当てることができない場合は、
プロファイル設定の[Scheduling]タブで[DB Maintenance Frequency]を
[Never]に設定してDB Maintenanceを無効にすることをお勧めします。


+
実行中のログ処理ジョブを取り消すには:
 1.グローバル管理者権限を持つユーザーとしてログインする
 2.Configure > Global > Task History に移動します。
 3.タスク履歴にリストされたジョブを展開して詳細を表示します。
 4.そのジョブを停止するには、[Cancel]ボタンをクリックします。

ジョブが実行されているときには、間隔でデータをプロファイルのデータベースにコミットするので、
最後のコミットが着いた場所では、そのジョブをキャンセルした後でもそのデータがプロファイルに表示されます。

そのジョブを再処理する場合は、その時間枠のデータのみを削除してから、その特定の時間枠を再実行することをお勧めします。

+
まずは、上記質問と参考に、[Cancel]ボタンを押下してください。
 それでも、Jobリストにそのままの状態で残ってしまっている場合は、
 Angelfishを一度終了させて再起動をしましょう。

 ○Angelfish終了方法
  Linux
   "./agfsctl --stop"
  Windows
   Windowsキーを押下して、スタートメニューを表示
   Stop Angelfish Servicesを押下して終了させる。

 ○Angelfish起動方法
  Linux
   "./agfsctl --start"
  Windows
   Windowsキーを押下して、スタートメニューを表示
   Start Angelfish Servicesを押下して終了させる。


+
まずは、Angelfishを一度終了させて再起動をしましょう。

 ○Angelfish終了方法
  Linux
   "./agfsctl --stop"
  Windows
   Windowsキーを押下して、スタートメニューを表示
   Stop Angelfish Servicesを押下して終了させる。

 ○Angelfish起動方法
  Linux
   "./agfsctl --start"
  Windows
   Windowsキーを押下して、スタートメニューを表示
   Start Angelfish Servicesを押下して終了させる。

そして、[Cancel Job]をクリックして、その後、[Process Data]をクリックして、プロセスの停止と再開を行ってください。

★この現象は、通常不十分なハードウェアリソースによって引き起こされるハードウェアスペックの問題で再発する可能性があります。

+
Angelfishを再起動してもファイルが消去されない場合は、アクセス許可の問題があります。
Angelfishファイルを所有するユーザーも、実行中のプロセスを所有してるか確認が必要です。
プロファイルディレクトリ内の processing.lockファイル と、/pid ディレクトリの
PIDファイルを手動で削除できます。

★ただし、処理ジョブが実行されている場合は、下記処理を実行しないことをお勧めします。

例)Linux
 1)実行中のジョブをキャンセルしてキューを空にする

 2)./agfsctl --stop

 3)ps aux | grep /usr/local/agfs/

  プロセスログまたはAngelfishプロセスが見つかった場合は、それらを手動で停止する

 4)手動で.lockファイルと/pid /ディレクトリ内のファイルを削除する

 5)./agfsctl --start


+
停止コマンドで、下記のエラーが表示されます。(Linux)
# /usr/local/agfs/agfsctl --stop
Panic: '/usr/lib64/perl5/CORE/libperl.so' is not an ActivePerl 5.18 library

/tmp がnoexecの場合、Angelfishの起動時や停止時に次のようなエラーメッセージが表示されます。
[agf@centos6 2195]$ /usr/local/2195/agfsctl --start
Panic: '/usr/lib64/perl5/CORE/libperl.so' is not an ActivePerl 5.18 library

Angelfish v2.xは埋め込みPerlライブラリを使用します。
展開操作に/tmpを使用するため、/tmpが実行可能であることを確認してください。


●USのサポートページのトラブルシューティング

 https://support.angelfishstats.com/hc/en-us/articles/115003943592-Panic-usr-lib64-perl5-CORE-libperl-so-is-not-an-ActivePerl-5-18-library


+
下記のエラーが表示され、Angelfishにアクセスできません。
--------------------------------
The Angelfish Server Did Not Respond
Please refresh your browser window.
--------------------------------

サーバのリソースの問題でタイムアウトしていると予想します。

例えば、
max_threads設定(3)を減らし、cache_size設定(500000)をに増やすことをお勧めします。
Configを編集して、Angelfishを再起動してください。

①Angelfish 停止
 /usr/local/agfs/agfsctl --stop

②agf.conf 2か所 編集
 ・max_threads 4 -> 3
 ・cache_size: 100000 → 500000

③Angelfish 起動
 /usr/local/agfs/agfsctl --start


+
ダウンロードしたファイルを展開して
実行したところ、下記エラーが表示され、インストール出来ませんでした。

-------------------------------------------------------------
$ ./agfs-linux-x86_64.19.0628.26599.run
Verifying archive integrity... all good.
Uncompressing Angelfish Software by Actual Metrics...
./postinstall-linux-x86_64: error while loading shared libraries: libnsl.so.1:
cannot open shared object file; No such file or directory
-------------------------------------------------------------


RHEL8とCentOS8には、デフォルトでその共有ライブラリがないようです。
次のコマンドでlibnsl.so.1をインストールすることで、問題を解決できます。

sudo dnf install libnsl.x86_64

sudoコマンドが使用できない場合は、次のいずれかを実行できるようです。

1)libnsl-2.28-72.el8.x86_64.rpmをインストールします
-これにより、/ usr / lib64 /libnsl.so.1のシンボリックリンクが作成されます。
/usr/lib64/libnsl-2.28.so

2)/usr/lib64/libnsl.so.1のシンボリックリンクを手動で作成します
-システムに存在するlibnslのバージョンをポイントします
(例:libnsl.so.2.0.0)

参考ページ:
https://bugzilla.redhat.com/show_bug.cgi?id=1814151


このページの上部へ戻る