"Se agotó el tiempo de espera de la solicitud HTTP" de InsightIQ o está en blanco cuando se generan informes de FSA
Summary: La interfaz de usuario de InsightIQ no puede cargar todo o parte de un informe de análisis del sistema de archivos (FSA) si el tiempo de espera agotado de la interfaz de programación de aplicaciones (API) de OneFS es demasiado bajo. ...
Symptoms
En InsightIQ 4.0 a 4.2 y OneFS 8.0.x (o versiones posteriores), la API RESTful de OneFS recopila datos de informes de FSA. Si InsightIQ no puede recopilar estos datos, es posible que el informe de FSA no se cargue, se cargue parcialmente o no permita que los usuarios naveguen por los directorios.
Cause
El problema se produce cuando el servidor de InsightIQ agota el tiempo de espera de la llamada de la API a OneFS demasiado pronto.
Para validar esta causa, ejecute el siguiente comando (reemplazo CLUSTER_GUID con el directorio adecuado):
$ grep "HTTP request timed out" /var/log/insightiq_clusters/CLUSTER_GUID/api_connection.log
Aparece una salida similar a lo siguiente:
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
El valor de tiempo de espera agotado definido se observa mediante la ejecución de este comando:
$ grep 'read timeout=' /var/log/insightiq.log
El resultado se ve así. En este ejemplo de salida, el tiempo de espera es 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 el problema, aumente el tiempo de espera predeterminado para las llamadas de API a OneFS editando el api.py de NetWorker.
Ejecute este comando para editar InsightIQ api.py archivo:
$ sudo vi /usr/share/isilon/lib/python2.7/site-packages/insightiq/lib/api_connection/api.py
En la línea 35, modifíquese TIMEOUT = 20 como TIMEOUT = 300.
A continuación, reinicie el servidor de InsightIQ:
$ sudo service insightiq restart
Para InsightIQ 4.2, la ruta es /usr/share/isilon/lib/python3.10/site-packages/insightiq/lib/api_connection/api.py.