Interfejs API REST NetWorker: Żądania HTTP GET sporadycznie przekraczają limit czasu

摘要: Interfejs aplikacji (API) transferu stanu reprezentacji (REST) NetWorker służy do żądania informacji (HTTP GET) z serwera NetWorker w środowisku. Interfejs API REST sporadycznie przekracza limit czasu, a restapi.log wyświetla wewnętrzny komunikat o błędzie serwera z powodu przekroczenia limitu czasu gniazda. ...

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

Interfejs aplikacji (API) transferu stanu reprezentacji (REST) NetWorker służy do żądania informacji (HTTP GET) z serwera NetWorker w środowisku. Interfejs API REST sporadycznie przekracza limit czasu, a restapi.log wyświetla wewnętrzny komunikat o błędzie serwera z powodu przekroczenia limitu czasu gniazda.  
YYYY-MM-DD HH:MM:SS INFO [https-jsse-nio-9090-exec-26] c.e.n.w.WebApiResponse - Response status Method: 'GET', URI:'v3/global/backups', Status '200'
YYYY-MM-DD HH:MM:SS INFO [https-jsse-nio-9090-exec-26] c.e.n.w.WebApiResponse - Response status Method: 'GET', URI:'v3/global/backups', Status '500'
...
YYYY-MM-DD HH:MM:SS ERROR [https-jsse-nio-9090-exec-11] c.e.n.w.WebApiExceptionMapper - Status 'Internal Server Error', msg: java.io.IOException: Broken pipe
org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe
	at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:333) ~[catalina.jar:9.0.10]

Polecenie curl do interfejsu API REST serwera NetWorker pokazuje:  

[root@NetworkerServer]# curl -X GET -H "Content-Type: application/json" "https://mynsr.mydomain.com:9090/nwrestapi/v3/global/backups" -u "administrator" -k -1
Enter host password for user 'administrator':
curl: (28) Operation timed out after 300406 milliseconds with 0 out of 0 bytes received

原因

Wywołania interfejsu API REST "v3/global/backups" oraz "v3/global/jobs" jest zapytaniem wymagającym dużej ilości zasobów i może spowodować przekroczenie limitu czasu żądania w większych środowiskach.  

Usługi interfejsu API REST NetWorker są hostowane w kontenerze serwletów Java Apache Tomcat, który jest uruchamiany na wirtualnej maszynie Java (JVM). Interfejs API REST używa pamięci JVM do przetwarzania każdego żądania i wykazano, że nie cała pamięć jest zwalniana po zapytaniu wymagającym dużej ilości zasobów. Wzrost wykorzystania pamięci JVM może ostatecznie doprowadzić do przekroczenia limitu czasu innych, mniej zasobożernych żądań interfejsu API REST.  

解决方案

Należy unikać korzystania z żądań wymagających dużej ilości zasobów w celu pobierania informacji z serwera NetWorker. Na przykład "v3/global/backups" lub "v3/global/clients/CLIENT_NUMBER/backups" ze zdefiniowanym zakresem czasu może być używany zamiast używać globalnego "v3/global/backups", aby pobrać wszystkie kopie zapasowe.

Na przykład ogranicz wyniki saveTime między dowolnym określonym zakresem czasu. Przykład zapytania dotyczącego zadań, które zostały ukończone w ciągu ostatnich 24 godzin:
 

.. Przykład /global/backups:

https://NETWORKER_SERVER_ADDRESS:9090/nwrestapi/v3/global/backups?q=saveTime:["START" TO "END"]
https://nsr.amer.lan:9090/nwrestapi/v3/global/backups?q=saveTime:["2024-07-24T00:00:01" TO "2024-07-24T23:59:59"]

.
./global/clients/client_resourceId_number/backups

https://NETWORKER_SERVER_ADDRESS:9090/nwrestapi/v3/global/clients/client_resourceID_number/backups?q=saveTime:["START" TO "END"]
https://nsr.amer.lan:9090/nwrestapi/v3/global/clients/87.0.90.20.0.0.0.0.196.80.99.102.192.168.9.150/backups?q=saveTime:["2024-07-24T00:00:01" TO "2024-07-24T23:59:59"]


../global/jobs:

https://NETWORKER_SERVER_ADDRESS:9090/nwrestapi/v3/global/jobs?q=endTime:["START" TO "END"]
https://nsr.amer.lan:9090/nwrestapi/v3/global/jobs?q=endTime:["2024-07-29T00:00:01" TO "2024-07-29T23:59:59"]

 

UWAGA: Zmodyfikuj odpowiednio RRRR-MM-DDT HH:mm:SS w godzinach START i END. Przykłady te służą wyłącznie do celów demonstracyjnych. Do zwrócenia żądanych danych mogą być wymagane dodatkowe specyfikacje zapytań interfejsu API REST lub funkcje filtrowania. Więcej informacji i przykłady są dostępne w dokumentacji interfejsu API REST: https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md

Jeśli upływa limit czasu żądań interfejsu API REST wymagających mniejszej ilości zasobów, można ponownie uruchomić usługi serwera NetWorker w celu zwolnienia istniejącego użycia pamięci JVM.

其他信息

Poprawki kodu zostały wprowadzone do NetWorker 19.4 w celu zwiększenia wykorzystania JVM z żądania NetWorker/REST API; jednak networker zakończył obsługę na lata 11-30-2023. Jeśli serwer NetWorker ma wersję 19.4 lub starszą, uaktualnij serwer NetWorker do obsługiwanej wersji.

产品

NetWorker
文章属性
文章编号: 000172472
文章类型: Solution
上次修改时间: 07 11月 2025
版本:  8
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。