FSAレポートの生成時にInsightIQの「HTTPリクエストがタイムアウトしました」または空白が表示される
Summary: OneFSアプリケーション プログラミング インターフェイス(API)のタイムアウトが小さすぎると、InsightIQ UIがFile System Analytics (FSA)レポートのすべてまたは一部のロードに失敗します。
Symptoms
InsightIQ 4.0から4.2およびOneFS 8.0.x(またはそれ以降のバージョン)では、OneFS RESTful APIがFSAレポート データを収集します。InsightIQがこのデータを収集できない場合、FSAレポートがロードされないか、部分的にロードされないか、ユーザーがディレクトリー内を移動できない可能性があります。
Cause
この問題は、InsightIQサーバーがOneFSへのAPIコールをタイムアウトするのが早すぎる場合に発生します。
この原因を検証するには、次のコマンドを実行します ( CLUSTER_GUID を適切なディレクトリに置き換えます)。
$ grep "HTTP request timed out" /var/log/insightiq_clusters/CLUSTER_GUID/api_connection.log
次のような出力が表示されます。
2017-06-12 13:07:50,114,114 ERROR [api.py: 187] HTTP request timed out: https://172.22.33.27:8080/platform/3/fsa/results/4505/directories/4321902598 2017-06-12 13:08:13,782,782 ERROR [api.py: 187] HTTP request timed out: https://172.22.33.27:8080/platform/3/fsa/results/4505/directories/4321902598
定義されたタイムアウト値は、次のコマンドを実行すると表示されます。
$ grep 'read timeout=' /var/log/insightiq.log
出力は次のようになります。この出力例では、タイムアウトは 20 秒です。
2018-04-12 04:18:30,203 WARNI [insightiq.lib.cluster.errors] APITimedOutError: HTTPSConnectionPool(host='10.104.6.138', port=8080): Read timed out. (read timeout=20) URI: https://10.104.6.138:8080/platform/3/statistics/history
Resolution
この問題を解決するには、次のコマンドを編集して、OneFSへのAPIコールのデフォルトのタイムアウトを増やします。 api.py ファイルで定義)を使用することが重要です。
InsightIQを編集するには、次のコマンドを実行します api.py :
$ sudo vi /usr/share/isilon/lib/python2.7/site-packages/insightiq/lib/api_connection/api.py
35行目で、 TIMEOUT = 20 の出力を TIMEOUT = 300の詳細を確認してください。
次に、InsightIQサーバーを再起動します。
$ sudo service insightiq restart
InsightIQ 4.2の場合、パスは次のとおりです /usr/share/isilon/lib/python3.10/site-packages/insightiq/lib/api_connection/api.pyの詳細を確認してください。