InsightIQ «HTTP-запрос тайм-аут» или пусто при создании отчетов FSA
Summary: Пользовательский интерфейс InsightIQ не загружает полностью или частично отчет аналитики файловой системы (FSA), если время ожидания интерфейса прикладного программирования (API) OneFS слишком мало. ...
Symptoms
В InsightIQ 4.0–4.2 и OneFS 8.0.x (или более поздних версий) API-интерфейс RESTful OneFS собирает данные отчетов FSA. Если InsightIQ не удается собрать эти данные, отчет FSA может не загрузиться, загрузиться частично или не разрешить пользователям перемещаться по каталогам.
Cause
Проблема возникает, когда сервер InsightIQ слишком рано истекает время ожидания вызова API к OneFS.
Чтобы проверить эту причину, выполните следующую команду (заменив 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
Чтобы решить эту проблему, увеличьте время ожидания по умолчанию для вызовов API к OneFS, изменив 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.