Partager via


Surveiller Azure Cache pour Redis à l’aide des paramètres de diagnostic

Azure Cache pour Redis offre deux options de supervision dans les paramètres de diagnostic :

  • Les métriques du cache journalisent les métriques Azure Monitor sur les opérations de cache.
  • Les journaux de connexion journalisent les connexions au cache. Azure capture ces journaux, également appelés journaux de plan de données, par demande. Le contenu des journaux de connexion varie selon le type de ressource.

Pour obtenir une vue d’ensemble de la fonctionnalité de surveillance et de journalisation d’Azure Monitor, consultez Les paramètres de diagnostic dans Azure Monitor.

Étendue de la disponibilité

Niveau De base, Standard et Premium Entreprise et Enterprise Flash
Mesures de cache Oui Oui
Journaux de connexion Oui Oui

Mesures de cache

Azure Redis émet de nombreuses métriques utiles, telles que la charge du serveur et les connexions par seconde. Pour obtenir la liste complète des métriques Redis Azure, consultez Métriques.

Pour journaliser les métriques de cache, activez l’option AllMetrics dans vos paramètres de diagnostic du cache en fonction des instructions de votre niveau. Vous pouvez configurer la durée pendant laquelle les métriques sont conservées. Pour plus d’informations sur la journalisation et l’exportation des métriques, consultez les métriques Azure Cache pour Redis.

Journaux de connexion

Azure Cache pour Redis utilise les paramètres de diagnostic Azure pour journaliser les informations de connexion du client sur votre cache. La journalisation et l’analyse de ces informations dans les paramètres de diagnostic vous aident à comprendre qui se connecte à votre cache et quand. Vous pouvez utiliser les données de journal à des fins d’audit de sécurité ou identifier l’étendue des problèmes de sécurité.

Remarque

Vous pouvez toujours utiliser les commandes redis-cli INFO ou CLIENT LIST pour vérifier qui est connecté à une instance de cache à la demande.

L’implémentation du journal de connexion et les journaux générés sont similaires entre les différents niveaux d'Azure Redis, mais les niveaux Basique, Standard et Premium présentent quelques différences par rapport aux niveaux Enterprise et Enterprise Flash.

Important

  • Dans les niveaux De base, Standard et Premium, la journalisation des connexions interroge les connexions clientes actuelles dans le cache. Les mêmes adresses IP clientes peuvent apparaître à plusieurs reprises tant que leurs connexions durent.
  • Dans les niveaux Enterprise et Enterprise Flash, la journalisation se concentre sur les événements de connexion. La journalisation se produit uniquement lorsque l’événement de connexion ou un autre événement lié à la connexion se produit en premier.

Conditions requises et limitations :

Les caches de base, Standard et Premium interrogent les connexions clientes par adresse IP, y compris le nombre de connexions provenant de chaque adresse IP unique. Ces journaux de bord ne sont pas cumulatifs, mais représentent des instantanés temporels pris à intervalles de 10 secondes. Ces niveaux ne consignent pas les événements d’authentification réussis ou ayant échoué ou les événements de déconnexion.

Gardez à l’esprit les limitations suivantes :

  • Étant donné que les journaux de connexion de ces niveaux sont constitués d’instantanés ponctuels pris toutes les 10 secondes, les connexions établies et supprimées dans un intervalle de 10 secondes ne sont pas enregistrées.
  • Les événements d’authentification et de déconnexion ne sont pas enregistrés.
  • Les paramètres de diagnostic peuvent prendre jusqu’à 90 minutes pour commencer à circuler vers votre destination sélectionnée.
  • La journalisation des connexions peut entraîner une petite dégradation des performances dans votre cache.
  • Pour diffuser des journaux vers Log Analytics, seul le plan tarifaire des journaux d’activité Analytics est pris en charge. Pour plus d’informations, consultez Tarification Azure Monitor.

Important

Lorsque vous sélectionnez des journaux, vous pouvez choisir des catégories ou des groupes de catégories, qui sont des regroupements prédéfinis de journaux dans les services Azure. Si vous utilisez des groupes de catégories, vous ne pouvez pas configurer les paramètres de rétention. Si vous devez définir la durée de rétention de vos journaux de connexion, sélectionnez l’élément dans Catégories à la place. Pour plus d’informations, consultez Groupes de catégories.

Destinations des journaux

Lorsque vous activez les paramètres de diagnostic pour votre instance Azure Redis, vous pouvez envoyer des journaux de ressources aux destinations suivantes :

  • Envoyer à l’espace de travail Log Analytics. Il n’est pas obligatoire que l’espace de travail réside dans la même région que la ressource supervisée.

  • Archive vers un compte de stockage. Le compte de stockage doit se trouver dans la même région que le cache.

  • Transmettre à un Event Hub. L’Event Hub doit se trouver dans la même région que le cache.

    Les paramètres de diagnostic ne peuvent pas accéder aux ressources event Hub si les réseaux virtuels sont activés. Activez le paramètre Autoriser les services Microsoft approuvés à contourner ce pare-feu dans Azure Event Hubs pour accorder l'accès aux ressources du concentrateur d’événements.

  • Envoyer à la solution partenaire. Pour obtenir la liste des solutions de journalisation de partenaires potentielles, consultez Étendre Azure avec Azure Native Integrations - Données et stockage.

Lorsque vous envoyez des journaux de diagnostic à un compte de stockage ou à un hub d’événements, vous êtes facturé des tarifs de données normaux pour l’une ou l’autre des destinations. Vous êtes facturé par Azure Monitor, et non par Azure Cache pour Redis. Lorsque vous envoyez des journaux à Log Analytics, vous êtes facturé uniquement pour l’ingestion de données Log Analytics. Pour plus d’informations sur la tarification, consultez la tarification d’Azure Monitor.

Activer les paramètres de diagnostic à l’aide du portail Azure

  1. Dans la page du portail Azure de votre cache, sélectionnez Paramètres de diagnostic sous Surveillance dans le volet de navigation gauche.

  2. Dans la page Paramètres de diagnostic, sélectionnez Ajouter un paramètre de diagnostic.

    Capture d’écran montrant la page Paramètres de diagnostic avec Ajouter paramètre de diagnostic mis en surbrillance.

  3. Dans la page Paramètres de diagnostic, entrez un nom pour votre paramètre de diagnostic, puis sélectionnez les options de surveillance souhaitées. Par exemple, sélectionnez AllMetrics pour journaliser toutes les métriques et allLogs pour journaliser à la fois la liste des clients connectés et le journal d’audit d’authentification MSEntra.

  4. Sélectionnez une ou plusieurs destinations et vos détails de destination, puis sélectionnez Enregistrer.

    Capture d’écran montrant la page de configuration des paramètres de diagnostic pour un cache Premium.

Activer la journalisation des connexions à l’aide de l’API REST

Pour créer un paramètre de diagnostic, utilisez l’API REST Azure Monitor dans une console interactive comme suit. Pour plus d’informations, consultez Paramètres de diagnostic - Créer ou mettre à jour.

Requête

PUT https://management.azure.com/{resourceUri}/providers/Microsoft.Insights/diagnosticSettings/{name}?api-version=2017-05-01-preview

Paramètres/en-têtes

  • Content-Type: application/json
  • name: nom de votre paramètre de diagnostic
  • resourceUri: subscriptions/<your subscription id>/resourceGroups/<cache resource group>/providers/Microsoft.Cache/Redis/<cache name>
  • api-version: 2017-05-01-preview

Exemple de contenu

{
    "properties": {
      "storageAccountId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1",
      "eventHubAuthorizationRuleId": "/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourceGroups/montest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule",
      "eventHubName": "myeventhub",
      "workspaceId": "/subscriptions/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/myworkspace",
      "logs": [
        {
          "category": "ConnectedClientList",
          "enabled": true,
          "retentionPolicy": {
            "enabled": false,
            "days": 0
          }
        }
      ]
    }
}

Activer la journalisation des connexions à l’aide d’Azure CLI

Utilisez la commande Azure CLI az monitor diagnostic-settings create pour créer un paramètre de diagnostic. Pour plus d’informations sur les descriptions des commandes et des paramètres, consultez Créer des paramètres de diagnostic pour envoyer des journaux de plateforme et des métriques à différentes destinations.

L’exemple suivant montre comment utiliser Azure CLI pour diffuser des données vers quatre points de terminaison différents :

az monitor diagnostic-settings create 
    --resource /subscriptions/{subscriptionID}/resourceGroups/{resourceGroupname}/providers/Microsoft.Cache/Redis/{cacheName}
    --name {logName}
    --logs '[{"category": "ConnectedClientList","enabled": true,"retentionPolicy": {"enabled": false,"days": 0}}]'    
    --event-hub {eventHubName}
    --event-hub-rule /subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/microsoft.eventhub/namespaces/{eventHubNamespace}/authorizationrule/{ruleName}
    --storage-account /subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}
    --workspace /subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{logAnalyticsWorkspaceName}
    --marketplace-partner-id/subscriptions/{subscriptionID}/resourceGroups{resourceGroupname}/providers/Microsoft.Datadog/monitors/mydatadog

Contenu du journal de connexion

Les champs et propriétés suivants s’affichent dans la catégorie journal ConnectedClientList. Dans Azure Monitor, les journaux d’activité sont collectés dans la table ACRConnectedClientList sous le nom du fournisseur de ressources MICROSOFT.CACHE.

Propriété ou champ du stockage Azure Propriété des journaux Azure Monitor Descriptif
time TimeGenerated Horodatage UTC lorsque le journal a été généré.
location Location La région Azure dans laquelle le cache Redis Azure a été utilisé.
category n/a Catégorie de journal disponible : ConnectedClientList.
resourceId _ResourceId Les journaux de ressources Azure Redis sont activés.
operationName OperationName Opération Redis associée à l’enregistrement de journal.
properties n/a Consultez les lignes suivantes.
tenant CacheName Nom de l’instance Redis Azure.
roleInstance RoleInstance Instance de rôle qui a consigné la liste des clients.
connectedClients.ip ClientIp Adresse IP du client Redis.
connectedClients.privateLinkIpv6 PrivateLinkIpv6 Adresse IPv6 de liaison privée du client Redis, si applicable.
connectedClients.count ClientCount Nombre de connexions au client Redis à partir de l’adresse IP associée.

Exemple de journal de compte de stockage

Le contenu d’un journal envoyé à un compte de stockage peut ressembler à l’exemple suivant.

{
    "time": "2021-08-05T21:04:58.0466086Z",
    "location": "canadacentral",
    "category": "ConnectedClientList",
    "properties": {
        "tenant": "mycache", 
        "connectedClients": [
            {
                "ip": "192.123.43.36", 
                "count": 86
            },
            {
                "ip": "10.1.1.4",
                "privateLinkIpv6": "fd40:8913:31:6810:6c31:200:a01:104", 
                "count": 1
            }
        ],
        "roleInstance": "1"
    },
    "resourceId": "/SUBSCRIPTIONS/eeee4efe-ff5f-aa6a-bb7b-cccccc8c8c8c/RESOURCEGROUPS/AZURE-CACHE/PROVIDERS/MICROSOFT.CACHE/REDIS/MYCACHE", 
    "Level": 4,
    "operationName": "Microsoft.Cache/ClientList"
}

Pour plus d’informations sur la création d’un paramètre de diagnostic à l’aide du portail Azure, d’Azure CLI ou d’Azure PowerShell, consultez Créer des paramètres de diagnostic pour collecter les journaux de plateforme et les métriques dans Azure.