InsightIQ «HTTP-запит вичерпаний» або «порожній при створенні FSA-звітів»
Summary: InsightIQ UI не завантажує весь або частину звіту File System Analytics (FSA), якщо тайм-аут OneFS Application Programming Interface (API) занадто низький.
Symptoms
У версіях InsightIQ 4.0–4.2 та OneFS 8.0.x (або пізніших версіях) API OneFS RESTful збирає дані звітів 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.