Surveillance de Code Engine

Découvrez les performances de vos charges de travail déployées avec IBM Cloud® Code Engine. Les métriques peuvent vous aider à détecter les goulots d'étranglement ou à prévoir les problèmes de production.

Vous pouvez utiliser le service IBM Cloud® Monitoring pour surveiller vos charges de travail Code Engine. Code Engine transmet les informations sélectionnées à propos de vos charges de travail à Monitoring afin de pouvoir surveiller des indicateurs de mesure spécifiques tels que les demandes, les révisions et la durée.

Configuration d'une instance de service IBM Cloud Monitoring

Pour configurer vos tableaux de bord de métriques client d' Code Engine sur Monitoring, vous devez créer une instance de Monitoring, puis activer Platform Metrics dans la même région que les projets Code Engine que vous souhaitez surveiller. Si plusieurs régions comportent des déploiements, vous devez mettre Monitoring à disposition et activer les métriques de plateforme pour chaque région. Pour plus d'informations, voir le tutoriel d'initiation à Monitoring.

Pour configurer Monitoring :

  1. Dans le menu de navigation IBM Cloud, sélectionnez Observabilité.
  2. Sélectionnez Surveillance.
  3. Utilisez une instance de service Monitoring existante ou créez-en une.
  4. Lorsque l'instance est prête, activez les métriques de plateforme en cliquant sur Configurer les métriques de plateforme.
  5. Sélectionnez une région et une instance Monitoring située dans cette région. Si plusieurs régions comportent des déploiements, vous devez mettre Monitoring à disposition et activer les métriques de plateforme pour chaque région.

Vous pouvez également démarrer la surveillance à partir de votre tableau de bord Code Engine en sélectionnant Lancer la surveillance.

Vous pouvez adapter les tableaux de bord en créant une copie d'un modèle de tableau de bord et en l'éditant.

Accès à vos métriques IBM Cloud Monitoring

Pour afficher les tableaux de bord des métriques d'un client Code Engine dans Monitoring :

  1. Dans le menu de navigation IBM Cloud, sélectionnez Observabilité.
  2. Sélectionnez Surveillance.
  3. Cliquez sur « Tableau de bord » dans la colonne « Affichage » de votre instance de surveillance pour ouvrir le tableau de bord correspondant à cette instance.
  4. Dans le menu de navigation, sélectionnez Tableaux de bord->IBM->IBM Code Engine Présentation du projet ou Tableaux de bord->IBM->IBM Code Engine Présentation des fonctions. Si le tableau de bord « Code Engine » n'apparaît pas dans le menu, vous pouvez lancer la surveillance depuis votre application ou votre tâche « Code Engine » en sélectionnant « Ajouter une surveillance ».
  5. Sélectionnez le calendrier 10M ou une valeur supérieure. Comme les données de métrique de plateforme possèdent une granularité d'une minute, le premier calendrier affichant les métriques est le calendrier 10M.

Vous pouvez également démarrer le tableau de bord Monitoring à tout moment en sélectionnant Surveillance dans le menu Action Code Engine.

Lorsque vous utilisez le service « IBM Cloud Monitoring » pour surveiller les charges de travail d’ Code Engine, des délais peuvent survenir avant que les données ne soient traitées et disponibles sur Monitoring. Par exemple, juste après la création de votre instance de surveillance, l'affichage de données de surveillance significatives prend quelques minutes. Veuillez noter qu'il faudra peut-être environ 5 minutes avant que vos données de surveillance n'apparaissent sur Monitoring.

Indicateurs disponibles pour Code Engine

Tableau 1: Métriques disponibles pour Code Engine
Nom d'indicateur
ibm_codeengine_application_actual_instances
ibm_codeengine_application_requested_instances
ibm_codeengine_application_not_ready_instances
ibm_codeengine_application_pending_instances
ibm_codeengine_application_desired_instances
ibm_codeengine_application_terminating_instances
ibm_codeengine_application_requests_total
ibm_codeengine_application_revision_count
ibm_codeengine_application_service_count
ibm_codeengine_application_route_count
ibm_codeengine_application_target_concurrency_per_pod
ibm_codeengine_application_panic_request_concurrency
ibm_codeengine_application_stable_request_concurrency
ibm_codeengine_application_panic_mode
ibm_codeengine_functions_activations
ibm_codeengine_functions_exceeded_limit
ibm_codeengine_functions_execution_time_count
ibm_codeengine_functions_execution_time_sum
ibm_codeengine_functions_init_time_count
ibm_codeengine_functions_init_time_sum
ibm_codeengine_functions_status_success
ibm_codeengine_functions_status_error_application
ibm_codeengine_functions_status_error_developer
ibm_codeengine_jobruns

ibm_codeengine_application_actual_instances

Nombre de pods actuellement alloués.

Utilisez cette métrique pour observer le comportement de la mise à l'échelle automatique des applications et pour observer le nombre d'instances d'application en cours d'exécution. Surveillez cette valeur pour déterminer si vous devez ajuster les valeurs configurables pour votre application.

Le nombre d'instances actives d'une application est automatiquement augmenté ou réduit en fonction des paramètres de configuration et de vos charges de travail. La mise à l'échelle de l'application est configurable. Voir Configuration de la mise à l'échelle de l'application et prenez connaissance des valeurs par défaut et des limites de l'application.

Tableau 2: Nombre de pods actuellement alloués
Métadonnées Description
Metric Name ibm_codeengine_application_actual_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_requested_instances

Nombre de pods que le régulateur automatique a demandés à Kubernetes.

Utilisez cet indicateur pour observer le comportement de la mise à l'échelle automatique des applications. Surveillez cette valeur pour déterminer si vous devez ajuster les valeurs configurables pour votre application.

Le nombre d'instances actives d'une application est automatiquement augmenté ou réduit en fonction des paramètres de configuration et de vos charges de travail. La mise à l'échelle de l'application est configurable. Voir Configuration de la mise à l'échelle de l'application et prenez connaissance des valeurs par défaut et des limites de l'application.

Tableau 3: Nombre de pods demandés par le programme de mise à l'échelle automatique
Métadonnées Description
Metric Name ibm_codeengine_application_requested_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_not_ready_instances

Nombre de pods qui ne sont pas prêts actuellement.

Utilisez cette mesure pour déterminer s'il existe des problèmes avec votre application en cours d'exécution.

Les instances d'application qui sont à l'état not ready ne peuvent pas servir les demandes. Cet état not ready indique que quelque chose empêche l'application de devenir prête.

Tableau 4: Nombre de pods qui ne sont pas prêts actuellement
Métadonnées Description
Metric Name ibm_codeengine_application_not_ready_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_pending_instances

Nombre de pods qui sont actuellement en attente

Utilisez cette mesure pour déterminer s'il existe des problèmes avec votre application en cours d'exécution.

Vous pouvez observer les applications en attente lorsque vous observez la mise à l'échelle automatique des applications. Les instances d'application en attente sont en attente de planification. Si votre application reste en attente, il se peut qu'elle ne puisse pas démarrer en raison de ressources insuffisantes, telles que la mémoire ou l'unité centrale. Voir Combinaisons de mémoire et d'unité centrale prises en charge.

Tableau 5: Nombre de pods actuellement en attente
Métadonnées Description
Metric Name ibm_codeengine_application_pending_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_desired_instances

Nombre de pods que le régulateur automatique souhaite allouer.

Utilisez cet indicateur pour observer le comportement de la mise à l'échelle automatique des applications. Surveillez cette valeur pour déterminer si vous devez ajuster les valeurs configurables pour votre application.

Le nombre d'instances actives d'une application est automatiquement augmenté ou réduit en fonction des paramètres de configuration et de vos charges de travail. La mise à l'échelle de l'application est configurable. Voir Configuration de la mise à l'échelle de l'application et prenez connaissance des valeurs par défaut et des limites de l'application.

Tableau 6: Nombre de pods que le programme de mise à l'échelle automatique souhaite allouer
Métadonnées Description
Metric Name ibm_codeengine_application_desired_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_terminating_instances

Nombre de pods en cours d'arrêt.

Utilisez cet indicateur pour observer le comportement de la mise à l'échelle automatique des applications. Surveillez cette valeur pour déterminer si une application s'arrête lorsque les applications sont réduites.

Le nombre d'instances actives d'une application est automatiquement augmenté ou réduit en fonction des paramètres de configuration et de vos charges de travail. La mise à l'échelle de l'application est configurable. Voir Configuration de la mise à l'échelle de l'application et prenez connaissance des valeurs par défaut et des limites de l'application.

Tableau 7: Nombre de pods en cours d'arrêt
Métadonnées Description
Metric Name ibm_codeengine_application_terminating_instances
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_requests_total

Nombre total de demandes HTTPS adressées à l'application.

Utilisez cet indicateur pour suivre le nombre de requêtes « HTTPS » reçues par votre application.

Tableau 8 : Nombre total de requêtes « HTTPS » adressées à l'application
Métadonnées Description
Metric Name ibm_codeengine_application_requests_total
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name, http status code

ibm_codeengine_application_revision_count

Nombre de révisions par application.

Utilisez cette mesure pour observer le nombre de révisions par application.

Une demande comporte une ou plusieurs versions. Chaque mise à jour d'une propriété de configuration d'application crée une nouvelle révision de l'application. Code Engine a un quota pour le nombre d'applications et de révisions d'application dans un projet. Pour plus d'informations sur les limites applicables aux projets, voir Quotas de projet.

Tableau 9: Nombre de révisions par application
Métadonnées Description
Metric Name ibm_codeengine_application_revision_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_service_count

Nombre d'applications par projet.

Utilisez cet indicateur pour observer le nombre d'applications dans votre projet.

Code Engine applique un quota pour le nombre d'applications et de révisions d'application dans un projet. Pour plus d'informations sur les limites applicables aux projets, voir Quotas de projet.

Tableau 10: Nombre d'applications par projet
Métadonnées Description
Metric Name ibm_codeengine_application_service_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_route_count

Nombre de routes par application.

Code Engine ne prend en charge qu'une seule route par application.

Tableau 11: Nombre de routes par application
Métadonnées Description
Metric Name ibm_codeengine_application_route_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name

ibm_codeengine_application_target_concurrency_per_pod

Nombre de demandes simultanées que vous souhaitez pour chaque pod.

Utilisez cette métrique pour observer la valeur d'accès concurrent cible définie pour votre application.

L'accès concurrent cible pour la mise à l'échelle de l'application est configurable. Voir Configuration de la mise à l'échelle d'application.

Tableau 12 : Nombre de requêtes simultanées souhaité pour chaque pod
Métadonnées Description
Metric Name ibm_codeengine_application_target_concurrency_per_pod
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_panic_request_concurrency

Nombre moyen de demandes dans la fenêtre de panique.

Utilisez cet indicateur pour observer le comportement de la mise à l'échelle automatique des applications. Surveillez cette valeur pour voir si le trafic de l'application arrive en rafales ou si le trafic est stable.

Alors que le mode stable est utilisé pour les opérations générales, le mode panique a une fenêtre beaucoup plus courte et est utilisé pour augmenter rapidement une révision d'application si une rafale de trafic se produit.

Tableau 13: Nombre moyen de demandes dans la fenêtre de panique
Métadonnées Description
Metric Name ibm_codeengine_application_panic_request_concurrency
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_stable_request_concurrency

Nombre moyen de demandes dans la fenêtre stable.

Utilisez cet indicateur pour observer le comportement de la mise à l'échelle automatique des applications. Surveillez cette valeur pour voir si le trafic de l'application arrive en rafales ou si le trafic est stable.

Alors que le mode stable est utilisé pour les opérations générales, le mode panique a une fenêtre beaucoup plus courte et est utilisé pour augmenter rapidement une révision d'application si une rafale de trafic se produit.

Tableau 14: Nombre moyen de demandes dans la fenêtre stable
Métadonnées Description
Metric Name ibm_codeengine_application_stable_request_concurrency
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_application_panic_mode

Indique si le mode de panique est activé.

Utilisez cet indicateur pour observer le comportement de la mise à l'échelle automatique des applications. Surveillez cette valeur pour déterminer si le mode de panique est utilisé.

Alors que le mode stable est utilisé pour les opérations générales, le mode panique a une fenêtre beaucoup plus courte et est utilisé pour augmenter rapidement une révision d'application si une rafale de trafic se produit.

Tableau 15: Indique si le mode de panique est activé
Métadonnées Description
Metric Name ibm_codeengine_application_panic_mode
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, application name, application revision name

ibm_codeengine_functions_activations

Nombre de fonctions appelées.

Tableau 16: Nombre de fonctions appelées
Métadonnées Description
Metric Name ibm_codeengine_functions_activations
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_exceeded_limit

Nombre de fonctions appelées après le dépassement de la limite pour votre projet. Pour plus d'informations sur les limites applicables aux projets, voir Quotas de projet.

Tableau 17: Nombre de fonctions appelées après dépassement de la limite du projet
Métadonnées Description
Metric Name ibm_codeengine_functions_exceeded_limit
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_execution_time_count

Nombre de fonctions appelées qui s'exécutent jusqu'à la fin.

Les métriques ibm_codeengine_functions_execution_time_count et ibm_codeengine_functions_execution_time_sum sont utilisées pour déterminer le temps d'exécution moyen par fonction appelée.

Tableau 18: Nombre de fonctions appelées qui ont terminé l'exécution
Métadonnées Description
Metric Name ibm_codeengine_functions_execution_time_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_execution_time_sum

Somme de tous les temps d'exécution des fonctions appelées qui s'exécutent jusqu'à la fin.

Les métriques ibm_codeengine_functions_execution_time_count et ibm_codeengine_functions_execution_time_sum sont utilisées pour déterminer le temps d'exécution moyen par fonction appelée.

Tableau 19: Somme de tous les temps d'exécution pour les fonctions appelées
Métadonnées Description
Metric Name ibm_codeengine_functions_execution_time_sum
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_init_time_count

Nombre de fonctions qui terminent l'initialisation de sorte que le code soit chargé dans Code Engine et prêt à être exécuté.

Les métriques ibm_codeengine_functions_init_time_count et ibm_codeengine_functions_init_time_sum sont utilisées pour déterminer le temps d'initialisation moyen des fonctions appelées.

Tableau 20: Nombre de fonctions ayant terminé l'initialisation
Métadonnées Description
Metric Name ibm_codeengine_functions_init_time_count
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_init_time_sum

Somme de toutes les heures d'initialisation pour les fonctions appelées.

Les métriques ibm_codeengine_functions_init_time_count et ibm_codeengine_functions_init_time_sum sont utilisées pour déterminer le temps d'initialisation moyen des fonctions appelées.

Tableau 21: Somme de tous les temps d'initialisation pour les fonctions appelées
Métadonnées Description
Metric Name ibm_codeengine_functions_init_time_sum
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name

ibm_codeengine_functions_status_success

Nombre de fonctions appelées avec succès. Une fonction est appelée avec succès dans « Code Engine » une fois que celle-ci a terminé son initialisation, s'est exécutée jusqu'à son terme et que le code de votre fonction a renvoyé un code d'état de réponse « HTTP » indiquant que l'opération a réussi.

Tableau 22: Nombre de fonctions appelées avec succès
Métadonnées Description
Metric Name ibm_codeengine_functions_status_success
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_status_error_application

Nombre de fonctions appelées qui échouent lors du traitement de Code Engine.

Tableau 23: Nombre de fonctions appelées qui échouent dans Code Engine
Métadonnées Description
Metric Name ibm_codeengine_functions_status_error_application
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_functions_status_error_developer

Nombre de fonctions appelées qui échouent avec une erreur dans votre code.

Tableau 24: Nombre de fonctions appelées qui échouent avec une erreur dans votre code
Métadonnées Description
Metric Name ibm_codeengine_functions_status_error_developer
Metric Type counter
Value Type none
Segment By Service instance, name of the namespace, project name, function name, function pod name, function type

ibm_codeengine_jobruns

Nombre total d'exécutions de tâches.

Utilisez cette mesure pour surveiller le nombre d'exécutions de travail dans votre projet. Code Engine a un quota pour le nombre de travaux et de travaux exécutés dans un projet. Pour plus d'informations sur les limites applicables aux projets, voir Quotas de projet.

Tableau 25: Nombre total d'exécutions de travail
Métadonnées Description
Metric Name ibm_codeengine_jobruns
Metric Type gauge
Value Type none
Segment By Service instance, name of the namespace, project name, job Name, jobrun condition

Attributs de segmentation

Attributs globaux

Les attributs suivants sont disponibles afin de segmenter toutes les mesures précédemment répertoriées.

Tableau 26: Attributs globaux
Attribut Nom d'attribut Description de l'attribut
Cloud Type ibm_ctype Le type de cloud défini par la valeur public, dedicated ou local.
Location ibm_location Emplacement de la ressource surveillée : une région, un centre de données ou un emplacement global.
Resource ibm_resource Ressource mesurée par le service, généralement un nom d'identification ou un identificateur global unique (GUID).
Resource Type ibm_resource_type Type de ressource mesuré par le service.
Resource group ibm_resource_group_name Groupe de ressources où l'instance de service a été créée.
Scope ibm_scope Compte, organisation ou GUID de l'espace associé à cette métrique.
Service name ibm_service_name Nom du service qui génère cette métrique.

Plus d'attributs

Les attributs ci-dessous sont disponibles pour segmenter un ou plusieurs attributs décrits dans les tableaux précédents. Voir les métriques individuelles pour les options de segmentation.

Tableau 27: Options de segmentation
Attribut Nom d'attribut Description de l'attribut
Name of the namespace ibm_codeengine_namespace Nom de l'espace de nom. Cet identifiant unique figure dans le fichier « URL » de votre application. L' URL par défaut des applications se présente sous la forme https://<appname>.<uuid>.<region>.codeengine.appdomain.cloud, où appname correspond au nom de votre application, uuid à l'identifiant unique généré automatiquement et region à la région dans laquelle se trouve votre projet Code Engine. La partie UUID de l' URL e correspond au nom de l'espace de noms.
Service instance ibm_service_instance Le segment de l'instance de service identifie l'instance à laquelle la métrique est associée.
HTTP status code ibm_codeengine_status Code de statut HTTP.
Application name ibm_codeengine_application_name Nom de l'application.
Application revision name ibm_codeengine_revision_name Nom de la version de l'application.
Gateway instance ibm_codeengine_gateway_instance Instance de la passerelle.
Job Name ibm_codeengine_job_name Nom du travail utilisé pour créer l'exécution de travail.
Jobrun condition ibm_codeengine_jobrun_condition L'état de l'exécution de la tâche.
Project name ibm_codeengine_project_name Nom du projet.
Function name ibm_codeengine_function_name Nom de la fonction appelée.
Function pod name ibm_codeengine_function_podname Nom du pod système qui a appelé la fonction.
Function type ibm_codeengine_function_type Type d'appel de la fonction (sync ou async).