InsightIQ "HTTP request timed out" ou em branco ao gerar relatórios de FSA
Summary: A interface do usuário do InsightIQ não carrega todo ou parte de um relatório do File System Analytics (FSA) se o tempo de espera excedido da interface de programação de aplicativos (API) do OneFS estiver muito baixo. ...
Symptoms
No InsightIQ 4.0 a 4.2 e no OneFS 8.0.x (ou versões posteriores), a API RESTful do OneFS coleta dados de relatório da FSA. Se o InsightIQ não conseguir coletar esses dados, o relatório da FSA poderá não carregar, será carregado parcialmente ou não permitirá que os usuários naveguem pelos diretórios.
Cause
O problema ocorre quando o servidor do InsightIQ excede a chamada de API para o OneFS muito cedo.
Para validar essa causa, execute o seguinte comando (substituindo CLUSTER_GUID com o diretório adequado):
$ grep "HTTP request timed out" /var/log/insightiq_clusters/CLUSTER_GUID/api_connection.log
Um resultado parecido com este será exibido:
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
O valor de tempo limite definido é visto executando este comando:
$ grep 'read timeout=' /var/log/insightiq.log
O resultado é semelhante a este. Neste exemplo de resultado, o tempo limite é de 20 segundos:
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
Para resolver o problema, aumente o tempo de espera excedido padrão para chamadas de API para o OneFS editando o api.py .
Execute este comando para editar o InsightIQ api.py do servidor do NetWorker Management Console (NMC):
$ sudo vi /usr/share/isilon/lib/python2.7/site-packages/insightiq/lib/api_connection/api.py
Na linha 35, modificar TIMEOUT = 20 para TIMEOUT = 300.
Em seguida, reinicie o servidor do InsightIQ:
$ sudo service insightiq restart
Para o InsightIQ 4.2, o caminho é /usr/share/isilon/lib/python3.10/site-packages/insightiq/lib/api_connection/api.py.