API REST de NetWorker: Se agota el tiempo de espera de las solicitudes HTTP GET de forma intermitente

摘要: La interfaz de programación de aplicaciones (API) de transferencia de estado representacional (REST) de NetWorker se utiliza para solicitar información (HTTP GET) desde un NetWorker Server en el ambiente. Se agota el tiempo de espera de las consultas de la API REST de forma intermitente y el restapi.log muestra un mensaje de error interno del servidor debido a un tiempo de espera agotado del conector. ...

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

症状

La interfaz de programación de aplicaciones (API) de transferencia de estado representacional (REST) de NetWorker se utiliza para solicitar información (HTTP GET) desde un NetWorker Server en el ambiente. Se agota el tiempo de espera de las consultas de la API REST de forma intermitente y el restapi.log muestra un mensaje de error interno del servidor debido a un tiempo de espera agotado del conector.  
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]

Un comando curl a la API REST de NetWorker Server muestra lo siguiente:  

[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

原因

La API REST llama a "v3/global/backups" y "v3/global/jobs" por sí solo es una consulta de uso intensivo de recursos y puede hacer que se agote el tiempo de espera de la solicitud en entornos más grandes.  

Los servicios de API REST de NetWorker se alojan en un contenedor de servlets Java Apache Tomcat que se ejecuta en una máquina virtual Java (JVM). La API REST utiliza la memoria de JVM para procesar cada solicitud y se ha demostrado que no toda la memoria se libera después de una consulta con uso intensivo de recursos. El aumento en la utilización de la memoria de JVM puede llegar a provocar que se agote el tiempo de espera de otras solicitudes de API REST con uso intensivo de recursos.  

解决方案

Evite el uso de solicitudes con uso intensivo de recursos para recuperar información de NetWorker Server. Por ejemplo, la opción "v3/global/backups" o "v3/global/clients/CLIENT_NUMBER/backups" con un rango de tiempo definido se puede usar en lugar de usar el " globalv3/global/backups" para recuperar todos los respaldos.

Por ejemplo, restrinja los resultados de saveTime entre cualquier rango de tiempo especificado. Un ejemplo de una consulta de trabajos que se completaron en las últimas 24 horas:
 

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

 

NOTA: Modifique AAAA-MM-DDTHH:mm:SS en las horas START y END según corresponda. Estos ejemplos se proporcionan solo con fines de demostración. Es posible que se requieran especificaciones de consulta adicionales de la API REST o funciones de filtro para devolver los datos deseados. Encontrará más información y ejemplos en la documentación de la API REST: https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md

Si se agota el tiempo de espera de las solicitudes de API REST de uso intensivo de recursos, los servicios de NetWorker Server se pueden reiniciar para liberar el uso de memoria de JVM existente.

其他信息

Las correcciones de código se realizaron en NetWorker 19.4 para mejorar el uso de JVM a partir de la solicitud de networker/API REST; Sin embargo, NetWorker ha finalizado el soporte a partir del 30 de enero de 2023. Si el servidor de NetWorker es 19.4 o anterior, actualice el servidor de NetWorker a una versión compatible.

产品

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