FSA raporları oluştururken InsightIQ "HTTP isteği zaman aşımına uğradı" veya boş
Summary: OneFS Uygulama Programlama Arayüzü (API) zaman aşımı çok düşükse InsightIQ kullanıcı arayüzü, Dosya Sistemi Analizi (FSA) raporunun tamamını veya bir kısmını yükleyemez.
Symptoms
InsightIQ 4.0 ila 4.2 ve OneFS 8.0.x te (veya sonraki sürümlerde) OneFS RESTful API, FSA rapor verilerini toplar. InsightIQ bu verileri toplayamıyorsa FSA raporu yüklenmeyebilir, kısmen yüklenebilir veya kullanıcıların dizinlerde gezinmesine izin vermeyebilir.
Cause
Sorun, InsightIQ sunucusu OneFS'ye yapılan API çağrısını çok erken zaman aşımına uğrattığında oluşur.
Bu nedeni doğrulamak için aşağıdaki komutu çalıştırın ( CLUSTER_GUID uygun dizinle):
$ grep "HTTP request timed out" /var/log/insightiq_clusters/CLUSTER_GUID/api_connection.log
Aşağıdakine benzer bir çıktı görünür:
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
Tanımlanan zaman aşımı değeri şu komut çalıştırılarak görülür:
$ grep 'read timeout=' /var/log/insightiq.log
Çıktı aşağıdaki gibi görünür. Bu örnek çıktıda zaman aşımı 20 saniyedir:
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
Sorunu çözmek için OneFS'ye API çağrıları için varsayılan zaman aşımını artırmak için api.py dosyasında adlandırma çakışmalarını önlemek üzere hedef sistem için farklı uygulamaların farklı adlar kullanmasını gerekli hale getirme.
InsightIQ düzenlemek için bu komutu çalıştırın api.py :
$ sudo vi /usr/share/isilon/lib/python2.7/site-packages/insightiq/lib/api_connection/api.py
35. satırda, değiştir TIMEOUT = 20 özniteliğinin değerini TIMEOUT = 300.
Ardından InsightIQ sunucusunu yeniden başlatın:
$ sudo service insightiq restart
InsightIQ 4.2 için yol şu şekildedir /usr/share/isilon/lib/python3.10/site-packages/insightiq/lib/api_connection/api.py.