NetWorker REST API: HTTP GET 요청이 간헐적으로 시간 초과됨

Summary: NetWorker REST(Representational State Transfer) API(Application Program Interface)는 환경의 NetWorker Server에서 정보(HTTP GET)를 요청하는 데 사용됩니다. REST API 쿼리가 간헐적으로 시간 초과되고 소켓 시간 초과로 인해 restapi.log에 내부 서버 오류 메시지가 표시됩니다. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

NetWorker REST(Representational State Transfer) API(Application Program Interface)는 환경의 NetWorker Server에서 정보(HTTP GET)를 요청하는 데 사용됩니다. REST API 쿼리가 간헐적으로 시간 초과되고 소켓 시간 초과로 인해 restapi.log에 내부 서버 오류 메시지가 표시됩니다.  
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]

NetWorker Server REST API에 대한 curl 명령은 다음을 표시합니다.  

[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

Cause

REST API가 "v3/global/backups" 및 "v3/global/jobs" 단독은 리소스를 많이 사용하는 쿼리이며 더 큰 환경에서는 요청 시간 초과가 발생할 수 있습니다.  

NetWorker REST API 서비스는 JVM(Java Virtual Machine)에서 실행되는 Apache Tomcat Java 서블릿 컨테이너에서 호스팅됩니다. REST API는 JVM 메모리를 사용하여 모든 요청을 처리하며, 리소스를 많이 사용하는 쿼리 후에 모든 메모리가 해제되는 것은 아닌 것으로 나타났습니다. JVM 메모리 사용률이 증가하면 결국 리소스를 덜 사용하는 다른 REST API 요청이 시간 초과될 수 있습니다.  

Resolution

리소스를 많이 사용하는 요청을 사용하여 NetWorker Server에서 정보를 검색하지 마십시오. 예를 들어, "v3/global/backups" 또는 "v3/global/clients/CLIENT_NUMBER/backups전역을 사용하는 대신 정의된 시간 범위와 함께 사용할 수 있습니다.v3/global/backups"를 클릭하여 모든 백업을 검색합니다.

예를 들어, saveTime에 대한 결과를 지정된 시간 범위 사이로 제한합니다. 지난 24시간 이내에 완료된 작업에 대한 쿼리의 예:
 

.. /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"]

 

참고: START 및 END 시간에 따라 YYYY-MM-DDTHH:mm:SS를 수정합니다. 이러한 예는 데모용으로만 제공됩니다. 원하는 데이터를 반환하려면 추가 REST API 쿼리 사양 또는 필터 기능이 필요할 수 있습니다. 추가 정보 및 예는 REST API 문서 자료에서 확인할 수 있습니다. https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md

리소스를 덜 사용하는 REST API 요청이 시간 초과되면 NetWorker Server 서비스를 재시작하여 기존 JVM 메모리 사용량을 해제할 수 있습니다.

Additional Information

NetWorker/REST API 요청에서 JVM 사용량을 개선하기 위해 NetWorker 19.4에 코드 수정이 적용되었습니다. 그러나 NetWorker는 2023년 11월 30일 현재 지원이 종료됩니다. NetWorker 서버가 19.4 이상인 경우 NetWorker 서버를 지원되는 릴리스로 업그레이드합니다.

Products

NetWorker
Article Properties
Article Number: 000172472
Article Type: Solution
Last Modified: 07 Nov 2025
Version:  8
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.