Solución de problemas de OCI Functions

Descubra cómo solucionar problemas con OCI Functions y las posibles soluciones a problemas comunes.

En este tema se tratan problemas comunes relacionados con OCI Functions y cómo abordarlos.

Utilice las siguientes técnicas para obtener más información sobre un error o problema:

  • Utilice el gráfico Errores de la página Métricas de la consola para ver códigos de error y mensajes para funciones individuales: si una función no se ejecuta o no funciona como se esperaba al llamarla, puede utilizar el gráfico Errores de la página Métricas de la consola para ver códigos de error y mensajes de error para esa función. Para obtener más información, consulte Métricas de función.
  • Utilizar el rastreo para observar la ejecución de la función: si una función no se ejecuta o no funciona como se espera al llamarla, puede utilizar el rastreo para depurar incidencias de ejecución y rendimiento. Para utilizar el rastreo, debe activar el rastreo para la aplicación que contiene la función y, a continuación, activar el rastreo para una o más funciones. A continuación, puede ver los rastreos de funciones en el explorador de rastreo de APM. Para obtener más información, consulte Rastreo distribuido para funciones.
  • Usar logs de funciones para revisar la información de llamada de función: el servicio Oracle Cloud Infrastructure Logging es la opción por defecto y recomendada para acceder, buscar y almacenar logs de funciones. Tenga en cuenta que, para almacenar y ver logs de una función, la función debe incluir sentencias de impresión. Para obtener más información, consulte Almacenamiento y visualización de logs de funciones.
  • Utilice DEBUG=1 para ver detalles sobre las solicitudes y respuestas enviadas desde y hacia el servicio OCI Functions: si encuentra un error inesperado al utilizar un comando de la CLI de Fn Project, puede ver más detalles sobre las solicitudes y respuestas HTTP enviadas desde y hacia el servicio OCI Functions. Inicie el comando con la cadena DEBUG=1 y vuelva a ejecutar el comando. Por ejemplo:

    $ DEBUG=1 fn invoke helloworld-app helloworld-func

    Tenga en cuenta que DEBUG=1 debe aparecer antes del comando y que DEBUG debe estar en mayúsculas.

    Si interactúa con los Servicios de Soporte Oracle y emite un ticket de soporte, puede adjuntar la salida al ticket.

    Tenga en cuenta también que si ha configurado una máquina local como entorno de desarrollo de OCI Functions (especificando --provider oracle en el contexto de la CLI de Fn Project), debe definir la variable de entorno OCI_GO_SDK_DEBUG=v e iniciar el comando con DEBUG=1.

Los temas de este tema se organizan en las siguientes categorías generales:

Configuración y ejecución de OCI Functions

Creación de aplicaciones y funciones

Número de error y mensaje (si procede) Descripción y enlace
Unable to create your app, please try again. Al crear una nueva aplicación, se muestra un mensaje de error en el cuadro de diálogo Nueva aplicación

Despliegue de aplicaciones y funciones

Número de error y mensaje (si procede) Descripción y enlace
unauthorized: incorrect username or password El despliegue de una aplicación devuelve el mensaje "unauthorized: incorrect username or password"

denied: requested access to the resource is denied

Fn: error running docker push, are you logged into docker?: exit status 1

El despliegue de una función devuelve un mensaje "error al ejecutar docker push, ¿está conectado a docker?"
500: Internal server error El despliegue de una función devuelve un mensaje ListTriggers y un error 500
Image <image-name> does not exist or you do not have access to use it. El despliegue de una función devuelve un mensaje del siguiente tipo: "La imagen no existe o no tiene acceso para utilizarla"
401: Missing subnets annotation El despliegue de una función en OCI Functions devuelve el mensaje "Fn: Missing subnets annotation"
Function's image architecture 'x86' is incompatible with the application's shape type 'GENERIC_X86_ARM' El despliegue de una función en OCI Functions devuelve el mensaje "La arquitectura de imagen de la función 'x86' es incompatible..."
OL8 CloudShell does not support cross-compilation and multi-arch functions builds. Please ensure the architecture of your App matches the CloudShell architecture. El despliegue de una función en OCI Functions en Cloud Shell devuelve el mensaje "OL8 Cloud Shell no soporta compilaciones cruzadas y compilaciones de funciones de varias archivos..."
Invalid or unsupported image manifest. Unable to get architecture from the OCIR Manifest/Headers… El despliegue de una función devuelve un manifiesto de imagen "No válido o no soportado. No se ha podido obtener la arquitectura del manifiesto/cabeceras de OCIR..." mensaje

Llamada a funciones

Número de error y mensaje (si procede) Descripción y enlace

413: Request content too large

FunctionInvokeRequestContentTooLarge

La llamada a una función devuelve un mensaje FunctionInvokeRequestContentTooLarge y un error 413

429: User-rate limit exceeded

TooManyRequests

La llamada a una función devuelve un mensaje TooManyRequests y un error 429

444 La llamada a una función hace que el cliente informe un timeout y se muestra un error 444 en los logs de la función
502: Function failed La llamada a una función devuelve un mensaje Function failed y un error 502
502: Syslog endpoint unavailable La llamada a una función devuelve un mensaje FunctionInvokeSyslogUnavailable y un error 502
502: Failed to pull function image La llamada a una función devuelve un mensaje FunctionInvokeImageNotAvailable y un error 502
502: subnet ocid1.subnet.... is out of IPs La llamada a una función devuelve un mensaje FunctionInvokeSubnetOutOfIPs y un error 502
502: subnet ocid1.subnet.... does not exist or Oracle Functions is not authorized to use it La llamada a una función devuelve un mensaje FunctionInvokeSubnetNotAvailable y un error 502 (debido a un problema de subred)
502: dhcp options ocid1.dhcpoptions.... does not exist or Oracle Functions is not authorized to use it La llamada a una función devuelve un mensaje FunctionInvokeSubnetNotAvailable y un error 502 (debido a un problema de opciones de DHCP)

502: function response body too large

FunctionInvokeResponseBodyTooLarge

La llamada a una función devuelve un mensaje FunctionInvokeResponseBodyTooLarge y un error 502

502: FunctionInvokeResponseHeaderTooLarge

function response header too large

La llamada a una función devuelve un mensaje FunctionInvokeResponseHeaderTooLarge y un error 502

502: Unable to get resource authorization token due to Function resource matching too many Dynamic Groups. Update your Dynamic Groups' matching rules

FunctionInvokeTooManyMatchingDGs

La llamada a una función devuelve un mensaje FunctionInvokeTooManyMatchingDGs y un error 502

502: error receiving function response

FunctionInvokeExecutionError

La llamada a una función devuelve un mensaje FunctionInvokeExecutionError y un error 502

502: function failed

FunctionInvokeExecutionFailed

La llamada a una función devuelve un mensaje FunctionInvokeExecutionFailed y un error 502

502: invalid function response

FunctionInvokeInvalidResponse

La llamada a una función devuelve un mensaje FunctionInvokeInvalidResponse y un error 502

502: Customer subnet DNS resolver error. Please fix the subnet configuration and try again

La llamada a una función devuelve un mensaje FunctionInvokeSubnetConfigError y un error 502

502: The combined uncompressed size of all Function images in an application has exceeded the allowed limit. Please reduce the size of the images or number of functions from the application.

La llamada a una función devuelve el mensaje "El tamaño combinado sin comprimir de todas las imágenes de la función en una aplicación ha superado el límite asignado...." y un error 502

503: Timed out - server too busy

FunctionInvokeServiceUnavailable

La llamada a una función devuelve un mensaje FunctionInvokeServiceUnavailable y un error 503

504: Container failed to initialize, please ensure you are using the latest fdk and check the logs

'ModuleNotFoundError: No module named 'contextvars'

La llamada a una función devuelve un mensaje de error FunctionInvokeContainerInitFail, un error 504 y un mensaje de log 'ModuleNotFoundError: no hay ningún módulo denominado 'contextvars'
504: Container failed to initialize, please ensure you are using the latest fdk and check the logs La llamada a una función devuelve los mensajes FunctionInvokeContainerInitFail y de timeout de la inicialización del contenedor, y un error 504
504: Timed out La llamada a una función devuelve un mensaje FunctionInvokeTimeout y un error 504

504: Container initialization timed out, please ensure you are using the latest fdk and check the logs

FunctionInvokeContainerInitTimeout

La llamada a una función devuelve un mensaje FunctionInvokeContainerInitTimeout y un error 504

504: Image pull timed out

FunctionInvokeImagePullTimeout

La llamada a una función devuelve un mensaje FunctionInvokeImagePullTimeout y un error 504

Varios

Número de error y mensaje (si procede) Descripción y enlace
error getting credentials - err: exit status 1, out: Error spawning command line 'dbus-launch --autolaunch... Al ejecutar OCI Functions en Ubuntu, la conexión a Docker devuelve el mensaje "error getting credentials - err: exit status 1..."