Se produjo un error cuando se procesaban las actualizaciones

Estás viendo la documentación de Apigee Edge.
Ve a la Documentación de Apigee X.
información

Síntoma

La implementación de revisiones del proxy de la API a través de la IU de Edge o de las llamadas a la API de Edge Management falla con el error "Unexpected error occurred while processing the updates".

Mensajes de error

Error in deployment for environment sit.

The revision is deployed and traffic can flow, but flow may be impared. com.apigee.kernel.exceptions.spi.UncheckedException{ code = messaging.runtime.UpdateFailed, message = Unexpected error occurred while processing the updates, associated contexts = []}

Causas posibles

Puede haber muchas causas diferentes para este error. Estos son algunos ejemplos de causas:

Causa Detalles Para
Sin memoria El procesador de mensajes se quedó sin espacio del montón de Java, lo que provocó la implementación del proxy de la API. falla. Usuarios de la nube privada
Error en el paquete del proxy de API El paquete del proxy de API tiene errores que pueden provocar fallas en la implementación del proxy de la API. Usuarios de nubes privadas y públicas

Pasos comunes que puedes probar primero

  1. Verifica si hay errores de implementación o seguimiento de pila de excepciones en Message Processor registro /opt/apigee/var/log/apigee/edge-message-processor/logs/system.log
  2. Por lo general, ves un seguimiento de pila que proporciona información sobre la causa de la implementación. . Lee atentamente el seguimiento de pila para comprender la causa.

Sin memoria

Diagnóstico

Nota: Solo los usuarios de la nube privada perimetral pueden realizar los siguientes pasos. Si están en la nube pública de Edge, comunícate con el equipo de asistencia de Apigee.

  1. Es posible que veas una excepción similar a la que figura en el registro de Message Processor /opt/apigee/var/log/apigee/edge-message-processor/logs/system.log, como se muestra en el figura a continuación:
    Apigee-Main-4 ERROR BOOTSTRAP - RuntimeConfigurationServiceImpl.dispatchToListeners() : RuntimeConfigurationServiceImpl.dispatchToListeners : Error occurred while dispatching the request DeployEvent{organization=myorg', application='person-credentials-api', applicationRevision='275', deploymentSpec=basepath=/;env=dev;, deploymentID=null} to com.apigee.application.bootstrap.listeners.MessageProcessorBootstrapListener@5db88cb8
    com.apigee.kernel.exceptions.spi.UncheckedException: Unexpected error occurred while processing the updates
            at com.apigee.entities.AbstractConfigurator.throwUncheckedException(AbstractConfigurator.java:280) ~[config-entities-1.0.0.jar:na]
            at com.apigee.messaging.configuration.MessageProcessorServiceImpl.configure(MessageProcessorServiceImpl.java:665) ~[message-processor-1.0.0.jar:na]
            at com.apigee.application.bootstrap.listeners.MessageProcessorBootstrapListener.configureMessageProcessorService(MessageProcessorBootstrapListener.java:54) ~[application-bootstrap-1.0.0.jar:na]
            at com.apigee.application.bootstrap.listeners.MessageProcessorBootstrapListener.deploy(MessageProcessorBootstrapListener.java:29) ~[application-bootstrap-1.0.0.jar:na]
            …<snipped>
            at com.apigee.application.bootstrap.proto.RuntimeConfig_ConfigRPCService_BlockingSkeleton$1.run(RuntimeConfig_ConfigRPCService_BlockingSkeleton.java:38) [application-bootstrap-1.0.0.jar:na]
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_75]
            at java.util.concurrent.FutureTask.run(FutureTask.java:262) [na:1.7.0_75]
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_75]
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_75]
            at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75]
    Caused by: java.lang.OutOfMemoryError: Java heap space
  2. El mensaje Caused by: java.lang.OutofMemoryError: Java Heap space indica que Message Processor se quedó sin espacio de montón de Java.

Solución

Nota: Solo los usuarios de la nube privada perimetral pueden realizar los siguientes pasos. Si están en la nube pública de Edge, comunícate con el equipo de asistencia de Apigee.

Aumentar el espacio máximo de montón de Java en Message Processors

La propiedad JVM -Xmx controla el espacio máximo del montón de Java. Estos son los pasos aumentar el espacio de montón de Java en Message Processors:

  1. Determina la cantidad de memoria por la cual se puede aumentar el espacio del montón de Java:
    1. Comprueba el valor actual establecido para el espacio máximo de montón, max_mem, en el archivo. /opt/apigee/edge-message-processor/bin/setenv.sh
    2. Obtén MemTotal (cantidad total de RAM utilizable), MemFree. (cantidad de RAM física que queda sin usar en el sistema) con /proc/meminfo en el sistema.
      1. Asegúrate de que la información anterior incluya la memoria que consumen otros procesos como Edge Router, etc., que existan en el mismo sistema.
      2. A partir de la información anterior, determina cuánto espacio del montón de Java puede aumentó para Message Processor.
      3. Por ejemplo, el espacio máximo de montón actual en Message Processor es de 1024 MB, MemTotal es de 8 GB (8,192 MB), y MemFree es de 5 GB (5,120 MB). Luego, puedes aumentar el tamaño máximo de Java. espacio de montón de 3 GB (3072 MB).
      4. Si necesitas ayuda para determinar cuánto aumentar el espacio del montón de Java, comunícate con el equipo de asistencia de Apigee.
  2. Crea el siguiente archivo, si aún no existe:
    /opt/apigee/customer/application/message-processor.properties
  3. Agrega la siguiente línea en el archivo, con el aumento de la configuración de montón (por ejemplo, 3072M):
    bin_setenv_max_mem=3072m
  4. Guarda el archivo.
  5. Reinicia el procesador de mensajes:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  6. Si tienes más de un Message Processor, repite los pasos del 3 al 6 en todos Procesadores de mensajes.

Si el problema persiste, comunícate con Apigee Asistencia.

Error en el paquete del proxy de API

Si hay algún error en alguna de las políticas que se usan en el proxy de API, la implementación falla con el error "Unexpected error occurred while processing the updates".

Por ejemplo, consulta esta publicación de Comunidad.

Diagnóstico

Nota: Solo los usuarios de la nube privada perimetral pueden realizar los siguientes pasos. Si están en la nube pública de Edge, comunícate con el equipo de asistencia de Apigee.

  1. Revisa los registros de Message Processor para detectar excepciones o errores relacionados con el proxy de API. de Google Workspace. El error debería brindarte información sobre lo que debería cambiarse en el proxy de API paquete para abordar el problema.
  2. Si no aparecen mensajes de error en los registros de Message Processor, verifica las diferencias en la revisión. historial del proxy de API. Si las revisiones anteriores se implementan sin problemas, revisa qué código cambios no realizados.

Solución

  1. Realiza los cambios necesarios en el paquete del proxy de API para solucionar el problema.
  2. Revierte los cambios de código al proxy de API que causaron problemas para la implementación.

Si el problema persiste, comunícate con el equipo de asistencia de Apigee para asistencia adicional.