Dépannage d'OCI Functions

Découvrez comment résoudre les problèmes liés à OCI Functions et les solutions possibles aux problèmes courants.

Cette rubrique traite des problèmes courants liés à OCI Functions et explique comment les résoudre.

Utilisez les techniques suivantes pour en savoir plus sur une erreur ou un problème :

  • Utilisez le graphique Erreurs sur la page Mesures de la console pour afficher les codes d'erreur et les messages pour des fonctions individuelles : si une fonction ne s'exécute pas ou ne fonctionne pas comme prévu lorsque vous l'appelez, vous pouvez utiliser le graphique Erreurs sur la page Mesures de la console pour afficher les codes d'erreur et les messages d'erreur de cette fonction. Pour plus d'informations, reportez-vous à Mesures de fonction.
  • Utiliser la fonction de trace pour observer l'exécution d'une fonction : si une fonction ne s'exécute pas ou ne fonctionne pas comme prévu lorsque vous l'appelez, vous pouvez utiliser la fonction de trace pour déboguer les problèmes d'exécution et de performances. Pour utiliser la fonction de trace, vous devez activer la fonction de trace pour l'application contenant la fonction, puis activer la fonction de trace pour une ou plusieurs fonctions. Vous pouvez ensuite afficher les traces de fonction dans l'explorateur de traces APM. Pour plus d'informations, reportez-vous à Fonction de trace distribuée pour Functions.
  • Utiliser les journaux de fonction pour consulter les informations d'appel de fonction : le service Oracle Cloud Infrastructure Logging est l'option par défaut et recommandée pour l'accès aux journaux de fonction, leur recherche et leur stockage, ainsi que pour y accéder. Pour stocker et afficher les journaux d'une fonction, celle-ci doit inclure des instructions d'impression. Pour plus d'informations, reportez-vous à Stockage et affichage des journaux de fonction.
  • Utilisez DEBUG=1 pour afficher des détails sur les demandes et les réponses envoyées vers et depuis le service OCI Functions : si vous rencontrez une erreur inattendue lors de l'utilisation d'une commande d'interface de ligne de commande de projet Fn, vous pouvez afficher plus de détails sur les demandes et réponses HTTP envoyées vers et depuis le service OCI Functions. Démarrez la commande avec la chaîne DEBUG=1 et exécutez à nouveau la commande. Par exemple :

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

    DEBUG=1 doit apparaître avant la commande et DEBUG doit être en majuscules.

    Si vous contactez le support technique Oracle et soulevez un ticket de support, vous pouvez joindre la sortie au ticket.

    Si vous avez configuré une machine locale en tant qu'environnement de développement OCI Functions (indiquant --provider oracle dans le contexte de l'interface de ligne de commande du projet Fn), vous devez définir la variable d'environnement OCI_GO_SDK_DEBUG=v et démarrer la commande avec DEBUG=1.

Les questions abordées dans cette rubrique sont classées dans les grandes catégories suivantes :

Configurer et exécuter OCI Functions

Créer des applications et des fonctions

Numéro d'erreur et message (le cas échéant) Description et lien
Unable to create your app, please try again. La création d'une application entraîne l'affichage d'un message d'erreur dans la boîte de dialogue Nouvelle application

Déploiement d'applications et de fonctions

Numéro d'erreur et message (le cas échéant) Description et lien
unauthorized: incorrect username or password Le déploiement d'une application renvoie un message "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

Le déploiement d'une fonction renvoie un message "error running docker push, are you log into docker ?"
500: Internal server error Le déploiement d'une fonction renvoie un message ListTriggers et une erreur 500
Image <image-name> does not exist or you do not have access to use it. Le déploiement d'une fonction renvoie le message "L'image n'existe pas ou vous n'y avez pas accès"
401: Missing subnets annotation Le déploiement d'une fonction vers OCI Functions renvoie le message "Fn : Missing subnets annotation"
Getting image source signatures Error: trying to reuse blob ... at destination: checking whether a blob ... exists in .... :StatusCode: 403, Fn: error running docker push: exit status 125 Le déploiement d'une fonction renvoie un message "Obtention des signatures de source d'image Erreur : tentative de réutilisation de blob ... à destination : vérification de l'existence d'un blob ... dans .... :StatusCode : 403, Fn : erreur lors de l'exécution de docker push : état de sortie 125"
Function's image architecture 'x86' is incompatible with the application's shape type 'GENERIC_X86_ARM' Le déploiement d'une fonction vers OCI Functions renvoie le message "L'architecture d'image de la fonction 'x86' est incompatible..."
OL8 CloudShell does not support cross-compilation and multi-arch functions builds. Please ensure the architecture of your App matches the CloudShell architecture. Le déploiement d'une fonction vers OCI Functions dans Cloud Shell renvoie le message "OL8 Cloud Shell ne prend pas en charge la compilation croisée et les builds de fonctions multi-arch...".
Invalid or unsupported image manifest. Unable to get architecture from the OCIR Manifest/Headers… Le déploiement d'une fonction renvoie un manifeste d'image non valide ou non pris en charge. Impossible d'obtenir l'architecture à partir du message Manifeste/En-têtes OCIR...

Appel de fonctions

Numéro d'erreur et message (le cas échéant) Description et lien

413: Request content too large

FunctionInvokeRequestContentTooLarge

L'appel d'une fonction renvoie un message FunctionInvokeRequestContentTooLarge et une erreur 413

429: User-rate limit exceeded

TooManyRequests

L'appel d'une fonction renvoie un message TooManyRequests et une erreur 429

444 L'appel d'une fonction entraîne le signalement d'un délai d'expiration par le client et une erreur 444 est affichée dans les journaux de la fonction
502: Function failed L'appel d'une fonction renvoie un message d'échec de fonction et une erreur 502
502: Syslog endpoint unavailable L'appel d'une fonction renvoie un message FunctionInvokeSyslogUnavailable et une erreur 502
502: Failed to pull function image L'appel d'une fonction renvoie un message FunctionInvokeImageNotAvailable et une erreur 502
502: subnet ocid1.subnet.... is out of IPs L'appel d'une fonction renvoie un message FunctionInvokeSubnetOutOfIPs et une erreur 502
502: subnet ocid1.subnet.... does not exist or Oracle Functions is not authorized to use it L'appel d'une fonction renvoie un message FunctionInvokeSubnetNotAvailable et une erreur 502 (due à un problème de sous-réseau)
502: dhcp options ocid1.dhcpoptions.... does not exist or Oracle Functions is not authorized to use it L'appel d'une fonction renvoie un message FunctionInvokeSubnetNotAvailable et une erreur 502 (due à un problème d'options DHCP)

502: function response body too large

FunctionInvokeResponseBodyTooLarge

L'appel d'une fonction renvoie un message FunctionInvokeResponseBodyTooLarge et une erreur 502

502: FunctionInvokeResponseHeaderTooLarge

function response header too large

L'appel d'une fonction renvoie un message FunctionInvokeResponseHeaderTooLarge et une erreur 502

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

FunctionInvokeTooManyMatchingDGs

L'appel d'une fonction renvoie un message FunctionInvokeTooManyMatchingDGs et une erreur 502

502: error receiving function response

FunctionInvokeExecutionError

L'appel d'une fonction renvoie un message FunctionInvokeExecutionError et une erreur 502

502: function failed

FunctionInvokeExecutionFailed

L'appel d'une fonction renvoie un message FunctionInvokeExecutionFailed et une erreur 502

502: invalid function response

FunctionInvokeInvalidResponse

L'appel d'une fonction renvoie un message FunctionInvokeInvalidResponse et une erreur 502

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

L'appel d'une fonction renvoie un message FunctionInvokeSubnetConfigError et une erreur 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.

L'appel d'une fonction renvoie le message "La taille combinée non compressée de toutes les images de fonction dans une application a dépassé la limite allouée..." et une erreur 502

503: Timed out - server too busy

FunctionInvokeServiceUnavailable

L'appel d'une fonction renvoie un message FunctionInvokeServiceUnavailable et une erreur 503

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

'ModuleNotFoundError: No module named 'contextvars'

L'appel d'une fonction renvoie un message d'erreur FunctionInvokeContainerInitFail, une erreur 504 et un message de journal 'ModuleNotFoundError : No module Baptisé 'contextvars'
504: Container failed to initialize, please ensure you are using the latest fdk and check the logs L'appel d'une fonction renvoie les messages FunctionInvokeContainerInitFail et "Container initialization timed out", ainsi qu'une erreur 504
504: Timed out L'appel d'une fonction renvoie un message FunctionInvokeTimeout et une erreur 504

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

FunctionInvokeContainerInitTimeout

L'appel d'une fonction renvoie un message FunctionInvokeContainerInitTimeout et une erreur 504

504: Image pull timed out

FunctionInvokeImagePullTimeout

L'appel d'une fonction renvoie un message FunctionInvokeImagePullTimeout et une erreur 504

Divers

Numéro d'erreur et message (le cas échéant) Description et lien
error getting credentials - err: exit status 1, out: Error spawning command line 'dbus-launch --autolaunch... Lors de l'exécution d'OCI Functions sur Ubuntu, la connexion à Docker renvoie le message "error getting Credentials - err : exit status 1..."