Function Compute s'intègre à Simple Log Service. Une fois la journalisation configurée pour une fonction, Function Compute collecte automatiquement les journaux et les livre dans un Logstore du projet spécifié. Consultez les journaux par requête, les journaux d'instance et les journaux de fonction dans la console Function Compute. Exécutez également des requêtes personnalisées sur les journaux depuis la console Simple Log Service.
Informations générales
Simple Log Service assure la collecte, le stockage, l'interrogation, l'analyse, la visualisation et l'alerte des journaux. Pour stocker les journaux de fonction, configurez un projet et un Logstore dans votre fonction, puis accordez-lui les autorisations d'accès à Simple Log Service. Après cette configuration, les journaux de la fonction sont écrits dans le Logstore indiqué.
Notes de facturation
Mode de facturation
Function Compute n'applique aucun frais supplémentaire pour l'activation de la fonctionnalité de journalisation. En revanche, Simple Log Service facture les journaux qui lui sont livrés.
Si le Logstore utilise le mode de facturation par fonctionnalité, Simple Log Service applique des tarifs basés sur l'espace de stockage, le trafic de lecture, le nombre de requêtes, la transformation des données et leur expédition après réception des journaux de Function Compute. Pour plus d'informations, consultez Éléments de facturation pour le mode de facturation par fonctionnalité.
Lorsque le Logstore recourt au mode de facturation par données ingérées, Simple Log Service facture en fonction du volume de données brutes ingérées suite à la livraison des journaux par Function Compute. Pour plus d'informations, consultez Éléments de facturation pour le mode de facturation par données ingérées.
Pour modifier le mode de facturation du Logstore, reportez-vous à Gérer les Logstores.
Arrêter la facturation
Pour interrompre la facturation, commencez par désactiver la fonctionnalité de journalisation dans la console Function Compute. Accédez ensuite à la console Simple Log Service pour supprimer le Logstore ou supprimer le projet.
La suppression d'un projet ou d'un Logstore Simple Log Service est irréversible. Après cette opération, les journaux ne peuvent plus être livrés à Simple Log Service et les données existantes sont définitivement effacées. Sauvegardez les données de journal importantes avant toute suppression.
Activer la journalisation pour une fonction
Configurer la journalisation via la console Function Compute
Prérequis
-
Function Compute
-
Facultatif : Simple Log Service (SLS)
Procédure
Connectez-vous à la console Function Compute. Dans le volet de navigation de gauche, choisissez .
Dans la barre de navigation supérieure, sélectionnez une région. Sur la page Functions, cliquez sur la fonction cible.
-
Sur la page de détails de la fonction, sélectionnez l'onglet Configuration, cliquez sur Advanced Settings à droite de Advanced Settings, repérez l'option Logs dans le panneau Advanced Settings, complétez la configuration des journaux en suivant les étapes ci-dessous, puis cliquez sur Deploy.
RemarqueLors de la création d'une fonction, la fonctionnalité de journalisation est activée par défaut. Le système sélectionne automatiquement le Log Service Project commençant par
serverless-<region_id>ainsi que le Logstore par défaut.La console active automatiquement les options Log Rotation Rules, Request-level Metrics et Instance-level Metrics, tout en créant les index nécessaires aux requêtes sur les journaux.
Élément de configuration
Obligatoire
Description
Logging
Oui
Indique s'il faut activer Simple Log Service. Valeurs valides :
-
Enable : Une fois cette fonctionnalité activée, Function Compute importe les journaux dans votre projet de journalisation. Interrogez et récupérez ces journaux depuis la console Function Compute et la console Simple Log Service afin de diagnostiquer et d'identifier les problèmes.
-
Disable : Les journaux de fonction ne sont pas conservés ; vous ne pouvez donc ni tracer ni localiser les incidents.
Configuration Mode
Oui
Choisissez entre Automatic Configuration et Custom Configuration. Si vous optez pour Custom Configuration, spécifiez un Log Service Project ainsi qu'un Logstore.
Log Service Project
Oui
Projet destiné au stockage des journaux d'invocation de fonction.
Logstore
Oui
Logstore utilisé pour conserver les journaux d'invocation de fonction.
Log Rotation Rules
Non
Détermine si les règles de segmentation des journaux doivent être activées. Valeurs valides :
-
Enable : Lorsque cette option est activée, Function Compute découpe les journaux selon les règles de segmentation définies, puis écrit chaque segment individuellement dans Simple Log Service.
La règle par défaut est
^.{0,2}\d{4}-\d{2}-\d{2}, qui correspond aux dates au formatxxxx-xx-xx, oùxreprésente un chiffre. La segmentation s'effectue selon qu'une ligne débute ou non par une date. Par exemple, si une ligne de journal commence par « 2023-10-10 », elle est considérée comme la première ligne d'un nouveau bloc de journal. Cette ligne ainsi que les suivantes, tant qu'elles ne comportent pas de date en début de ligne, sont écrites sous forme d'une seule entrée de journal. -
Disable : La segmentation des journaux est désactivée. Les journaux sont alors découpés à l'aide du délimiteur par défaut
\n.
Request-level Metrics
Non
Indique si les journaux de métriques de requête doivent être livrés au Logstore. Nous vous recommandons vivement d'activer cette fonctionnalité.
Valeurs valides :
-
Enable : Les métriques relatives à chaque invocation de fonction — telles que le temps d'exécution, l'utilisation de la mémoire, l'état d'erreur, la survenue d'un démarrage à froid et la durée de ses étapes — sont livrées au Logstore sélectionné lors de la configuration de la journalisation. Les journaux d'invocation de Function Compute affichent une liste de requêtes fondée sur ces métriques. Filtrez également les requêtes selon divers critères, par exemple toutes les requêtes en erreur ou celles impliquant un démarrage à froid.
-
Disable : Vous ne pouvez pas consulter les informations détaillées sur l'exécution des requêtes.
Instance-level Metrics
Non
Détermine si les métriques au niveau de l'instance doivent être activées. Valeurs valides :
-
Enable : Lorsque cette option est activée, les données de métriques provenant des instances de fonction sont livrées au Logstore choisi lors de la configuration des journaux. Consultez ainsi des indicateurs de performance au niveau de chaque instance, notamment l'utilisation du CPU, de la mémoire et des E/S réseau. Function Compute exploite ces métriques pour offrir une observabilité à la granularité de l'instance, ce qui facilite la surveillance et le dépannage de bout en bout des instances de fonction. Pour plus d'informations, consultez Métriques au niveau de l'instance.
-
Disable : Vous ne pouvez pas afficher les métriques détaillées des instances.
Configurer la journalisation avec Serverless Devs
Prérequis
Procédure
-
Créez un répertoire de code respectant la structure suivante.
. ├── code │ └── index.js └── s.yamlDans cet exemple, le champ logConfig permet de configurer la journalisation. Remplacez logstore et project par un Logstore et un projet existants dans votre compte. Définissez également logConfig: auto pour laisser Function Compute attribuer automatiquement un projet et un Logstore.
edition: 3.0.0 name: hello-world-app access: "default" vars: # Global variables region: "cn-hangzhou" resources: hello_world: component: fc3 # Component name props: region: ${vars.region} functionName: "start-nodejs-****" description: 'hello world by serverless devs' runtime: "nodejs16" code: ./code handler: index.handler memorySize: 128 timeout: 30 logConfig: # Replace logstore and project with actual values, or use logConfig: auto to auto-create project and Logstore enableInstanceMetrics: true # Enable instance-level metrics enableRequestMetrics: true # Enable request-level metrics logBeginRule: DefaultRegex # Log segmentation rule logstore: 'your-logstore' # Specify Logstore name (must exist) project: 'your-project' # Specify project name (must exist) -
Exécutez la commande suivante pour déployer l'application.
sudo s deploy -yUne fois le déploiement réussi, connectez-vous à la console Function Compute afin de vérifier que la fonction est bien déployée et que la journalisation est activée.
Désactiver la journalisation
Après la désactivation de la journalisation, les journaux d'exécution des fonctions ne sont plus collectés ni stockés. Cela peut nuire au dépannage et à l'analyse des performances. Agissez donc avec prudence.
Connectez-vous à la console Function Compute. Dans le volet de navigation de gauche, choisissez .
Dans la barre de navigation supérieure, sélectionnez une région. Sur la page Functions, cliquez sur la fonction cible.
Sur la page de détails de la fonction, sélectionnez l'onglet Configuration, cliquez sur Modify à droite de Advanced Settings, puis dans le panneau Advanced Settings, localisez l'option Logs, positionnez le bouton log feature sur Off, et cliquez sur Deploy.
Consulter les journaux d'invocation
Sur la page de détails de la fonction, cliquez sur l'onglet Logs pour interroger les enregistrements d'invocation de la fonction actuelle.
Toujours sur la page de détails de la fonction, cliquez sur l'onglet Version Management ou Alias Management. Sélectionnez une version ou un alias de fonction, puis cliquez sur l'onglet Logs de la page de détails correspondante pour consulter ses journaux.
Les journaux d'invocation de fonction sont accessibles aussi bien depuis l'onglet Invocation Requests que depuis l'onglet Search by Keyword. Voici leurs différences :
-
Invocation Requests
Cet onglet répertorie les heures de fin d'invocation, les ID de requête, les résultats d'invocation, les ID d'instance ainsi que les versions ou alias de fonction.
Cliquez sur un Request ID pour afficher les détails de la requête et des journaux associés.
Cliquez sur un Instance ID pour consulter les métriques de l'instance, telles que l'utilisation du CPU, de la mémoire et du trafic réseau.
Dans la colonne Actions, cliquez sur Request Logs pour voir le détail des journaux, ou sur Advanced Logs afin d'accéder à la console Simple Log Service pour interroger et analyser les journaux.
-
Search by Keyword
Cet onglet affiche les horaires d'invocation, le contenu des journaux ainsi que les versions ou alias de fonction. Dans la colonne Actions, cliquez sur Log Context pour consulter les entrées de journal environnantes, ou sur Logstore afin d'accéder à la console Simple Log Service pour interroger et analyser les journaux.
Saisissez un mot-clé dans le champ de recherche pour retrouver des journaux spécifiques. Par exemple, pour trouver les journaux contenant le texte
hello world, saisissezhello worlddans le champ de recherche. Les résultats incluront toutes les lignes de journal contenant ce mot-clé. Pour plus d'informations sur la syntaxe des requêtes, consultez Syntaxe et fonctionnalités des requêtes.
Références
Configurez également la journalisation d'une fonction en appelant le SDK ou l'API. Pour plus d'informations, consultez Créer une fonction.