Share via


Azure Managed Redis-gegevens bewaken met behulp van diagnostische instellingen

Diagnostische instellingen in Azure worden gebruikt om resourcelogboeken te verzamelen. Een Azure-resource verzendt resourcelogboeken en biedt uitgebreide, frequente gegevens over de werking van die resource. Deze logboeken worden per aanvraag vastgelegd en worden ook wel gegevensvlaklogboeken genoemd. Zie diagnostische instellingen in Azure Monitor voor een aanbevolen overzicht van de functionaliteit in Azure. De inhoud van deze logboeken verschilt per resourcetype. In Azure Managed Redis zijn twee opties beschikbaar voor logboekregistratie:

Metrische gegevens van cache

Met Azure Managed Redis worden veel metrische gegevens verzonden, zoals Serverbelasting en Verbindingen per seconde die nuttig zijn voor logboekregistratie. Als u de optie AllMetrics selecteert, kunnen deze en andere metrische cachegegevens worden vastgelegd. U kunt configureren hoe lang de metrische gegevens worden bewaard. Zie hier voor een voorbeeld van het exporteren van metrische cachegegevens naar een opslagaccount.

Verbindingslogboeken

Azure Managed Redis maakt gebruik van diagnostische Azure-instellingen om informatie over clientverbindingen met uw cache te registreren. Door deze diagnostische instelling te registreren en te analyseren, krijgt u inzicht in wie verbinding maakt met uw caches en de tijdstempel van deze verbindingen. De logboekgegevens kunnen worden gebruikt om het bereik van een beveiligingsschending te identificeren en voor beveiligingscontroledoeleinden.

Azure Managed Redis maakt gebruik van de functionaliteit Verbindingsgebeurtenissen controleren die is ingebouwd in de Redis Enterprise-stack. Bij controle van verbindingsgebeurtenissen kan elke verbinding, verbroken verbinding en verificatiegebeurtenis worden vastgelegd, inclusief mislukte verificatiegebeurtenissen.

Belangrijk

Logboekregistratie in Azure Managed Redis is gericht op elke verbindingsgebeurtenis. Logboeken vinden alleen plaats wanneer de werkelijke gebeurtenis voor het eerst heeft plaatsgevonden.

Vereisten/beperkingen van logboekregistratie van verbindingen

  • Wanneer u OSS-clusterbeleid gebruikt, worden logboeken verzonden vanuit elk gegevensknooppunt. Wanneer u Enterprise Cluster Policy gebruikt, worden alleen de logboeken van het knooppunt dat als proxy wordt gebruikt, verzonden. Beide versies hebben nog steeds betrekking op alle verbindingen met de cache. Dit is slechts een architectonisch verschil.
  • Gegevensverlies (dat wil gezegd, ontbrekende verbindings gebeurtenis) is zeldzaam, maar mogelijk. Gegevensverlies wordt meestal veroorzaakt door netwerkproblemen.
  • Ontkoppelingslogboeken zijn nog niet volledig stabiel en er kunnen gebeurtenissen worden gemist.
  • Omdat verbindingslogboeken in Azure Managed Redis op gebeurtenissen zijn gebaseerd, moet u voorzichtig zijn met uw bewaarbeleid. Als retentie bijvoorbeeld is ingesteld op 10 dagen en er 15 dagen geleden een verbindingsgebeurtenis is opgetreden, bestaat die verbinding mogelijk nog steeds, maar blijft het logboek voor die verbinding niet behouden.
  • Als u actieve geo-replicatie gebruikt, moet logboekregistratie worden geconfigureerd voor elk cache-exemplaar in de geo-replicatiegroep afzonderlijk.
  • Het kan tot 90 minuten duren voordat alle diagnostische instellingen naar de geselecteerde bestemming worden gestroomd.
  • Het inschakelen van verbindingslogboeken kan leiden tot een kleine prestatievermindering van het Redis-exemplaar.

Opmerking

Het is altijd mogelijk om de OPDRACHTEN INFO of CLIENT LIST te gebruiken om te controleren wie is verbonden met een cache-exemplaar op aanvraag.

Belangrijk

Wanneer u logboeken selecteert, kunt u de specifieke categorie - of categoriegroepen kiezen. Dit zijn vooraf gedefinieerde groeperingen van logboeken in Azure-services. Wanneer u categoriegroepen gebruikt, kunt u de bewaarinstellingen niet meer configureren. Als u de bewaarduur voor uw verbindingslogboeken wilt bepalen, selecteert u in plaats daarvan het item in de sectie Categorieën .

Logboekbestemmingen

U kunt diagnostische instellingen voor Azure Managed Redis-exemplaren inschakelen en resourcelogboeken verzenden naar de volgende bestemmingen:

  • Log Analytics-werkruimte : hoeft zich niet in dezelfde regio te bevinden als de resource die wordt bewaakt.
  • Opslagaccount : moet zich in dezelfde regio bevinden als de cache. Premium-opslagaccounts worden echter niet ondersteund als bestemming.
  • Event Hub: diagnostische instellingen hebben geen toegang tot Event Hub-resources wanneer virtuele netwerken zijn ingeschakeld. Schakel de instelling Toestaan dat vertrouwde Microsoft-services deze firewall omzeilen? in event hubs in om toegang te verlenen tot uw event hub-resources. De Event Hub moet zich in dezelfde regio bevinden als de cache.
  • Partneroplossing : hier vindt u een lijst met mogelijke oplossingen voor partnerlogboekregistratie

Zie diagnostische instellingen voor meer informatie over diagnostische vereisten.

Er worden normale gegevenstarieven in rekening gebracht voor opslagaccount- en Event Hub-gebruik wanneer u diagnostische logboeken naar een van beide bestemmingen verzendt. U wordt gefactureerd onder Azure Monitor, niet Azure Managed Redis. Wanneer u logboeken naar Log Analytics verzendt, worden er alleen kosten in rekening gebracht voor opname van Log Analytics-gegevens.

Voor meer prijsinformatie, prijzen van Azure Monitor.

Logboekregistratie van verbindingen inschakelen met behulp van Azure Portal

  1. Meld u aan bij het Azure-portaal.

  2. Navigeer naar uw Azure Managed Redis-account. Open het deelvenster Diagnostische instellingen - Controle onder de sectie Bewaking aan de linkerkant. Selecteer vervolgens Diagnostische instelling toevoegen. Schermopname van diagnostische instellingen - Controle geselecteerd in het menu Resource.

  3. Selecteer in het deelvenster Diagnostische instelling - ControleVerbindingsgebeurtenissen uit Categorieën.

    Zie de onderstaande inhoud van de verbindingslogboeken voor meer informatie over de vastgelegde gegevens.

  4. Zodra u Verbindingsgebeurtenissen hebt geselecteerd, verzendt u uw logboeken naar uw favoriete bestemming. Selecteer de informatie in het werkvenster. Schermopname van verbindingsgebeurtenissen die worden gecontroleerd in het werkvenster.

Logboekregistratie van verbindingen inschakelen met behulp van de REST API

Gebruik de Azure Monitor REST API voor het maken van een diagnostische instelling via de interactieve console. Zie Maken of bijwerken voor meer informatie.

Aanvraag

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

Kopteksten

Parameters/headers Waarde/beschrijving
name De naam van uw diagnostische instelling.
resourceUri subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.Cache/RedisEnterprise/{CACHE_NAME}/databases/default
api-version 2017-05-01-preview
Content-Type application/json

Lichaam

{ 
    "properties": {
      "storageAccountId": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/myteststorage",
      "eventHubAuthorizationRuleID": "/subscriptions/1a66ce04-b633-4a0b-b2bc-a912ec8986a6/resourceGroups/montest/providers/microsoft.eventhub/namespaces/mynamespace/authorizationrules/myrule", 
      "eventHubName": "myeventhub",
      "marketplacePartnerId": "/subscriptions/abcdeabc-1234-1234-ab12-123a1234567a/resourceGroups/test-rg/providers/Microsoft.Datadog/monitors/mydatadog",
      "workspaceId": "/subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights integration/providers/Microsoft.OperationalInsights/workspaces/myworkspace",
      "logs": [
        {
          "category": "ConnectionEvents",
          "enabled": true,
          "retentionPolicy": {
            "enabled": false,
            "days": 0
          }
        }
      ]
    }
}

Logboekregistratie van verbindingen inschakelen met behulp van Azure CLI

Gebruik de az monitor diagnostic-settings create opdracht om een diagnostische instelling te maken met de Azure CLI. Zie Diagnostische instellingen maken om platformlogboeken en metrische gegevens naar verschillende bestemmingen te verzenden voor meer informatie over opdracht- en parameterbeschrijvingen. In dit voorbeeld ziet u hoe u de Azure CLI gebruikt om gegevens naar vier verschillende eindpunten te streamen:

az monitor diagnostic-settings create 
    --resource /subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisenterprise/{cacheName}/databases/default
    --name {logName}
    --logs '[{"category": "ConnectionEvents","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

Inhoud van de verbindingslogboeken

Deze velden en eigenschappen worden weergegeven in de ConnectionEvents logboekcategorie. In Azure Monitor worden logboeken verzameld in de REDConnectionEvents tabel onder de naam van de resourceprovider.MICROSOFT.CACHE

Azure Storage-veld of -eigenschap Eigenschap Azure Monitor-logboeken Beschrijving
time TimeGenerated De tijdstempel (UTC) van het gebeurtenislogboek toen het werd opgenomen.
location Location De locatie (regio) waarin het Azure Managed Redis-exemplaar is geopend.
category n.v.t Beschikbare logboekcategorieën: ConnectionEvents.
resourceId _ResourceId De Azure Managed Redis-resource waarvoor logboeken zijn ingeschakeld.
operationName OperationName De Redis-bewerking die is gekoppeld aan het logboek.
properties n.v.t De inhoud van dit veld wordt beschreven in de volgende rijen.
eventEpochTime EventEpochTime De UNIX-tijdstempel (aantal seconden sinds 1 januari 1970) toen de gebeurtenis in UTC plaatsvond. De tijdstempel kan worden geconverteerd naar datum/tijd-indeling met behulp van functie unixtime_seconds_todatetime in de Log Analytics-werkruimte.
clientIP ClientIP Het IP-adres van de Redis-client. Als u Azure Storage gebruikt, is het IP-adres IPv4- of Private Link IPv6-indeling op basis van het cachetype. Als u Log Analytics gebruikt, is het resultaat altijd in IPv4, omdat er een afzonderlijk IPv6-veld wordt opgegeven.
n.v.t PrivateLinkIPv6 Het IPv6-adres van de Redis-client private link (alleen verzonden als u zowel Private Link als Log Analytics gebruikt).
id ConnectionId Unieke verbindings-id die is toegewezen door Redis.
eventType EventType Type verbindings gebeurtenis (new_conn, verificatie of close_conn).
eventStatus EventStatus Resultaten van een verificatieaanvraag als statuscode (alleen van toepassing op verificatie-gebeurtenis).

Opmerking

Als private link wordt gebruikt, wordt alleen een IPv6-adres geregistreerd (tenzij u de gegevens naar Log Analytics streamt). U kunt het IPv6-adres converteren naar het equivalente IPv4-adres door de laatste vier bytes aan gegevens in het IPv6-adres te bekijken. In het IPv6-adres fd40:8913:31:6810:6c31:200:a01:104 van de privékoppeling zijn bijvoorbeeld de laatste vier bytes in hexadecimaal zijn 0a, 01, 01en 04. (Voorloopnullen worden na elke dubbele punt weggelaten.) Deze bytes komen overeen met10, 1en 14 in decimalen, wat ons het IPv4-adres 10.1.1.4geeft.

Voorbeeldlogboek van opslagaccount

Als u uw logboeken naar een opslagaccount verzendt, ziet een logboek voor een verbindings gebeurtenis er als volgt uit:

    {
        "time": "2023-01-24T10:00:02.3680050Z",
        "resourceId": "/SUBSCRIPTIONS/4A1C78C6-5CB1-422C-A34E-0DF7FCB9BD0B/RESOURCEGROUPS/TEST/PROVIDERS/MICROSOFT.CACHE/REDISENTERPRISE/AUDITING-SHOEBOX/DATABASES/DEFAULT",
        "category": "ConnectionEvents",
        "location": "westus",
        "operationName": "Microsoft.Cache/redisEnterprise/databases/ConnectionEvents/Read",
        "properties": {
            "eventEpochTime": 1674554402,
            "id": 6185063009002,
            "clientIP": "20.228.16.39",
            "eventType": "new_conn"
        }
    }

En het logboek voor een verificatie-gebeurtenis ziet er als volgt uit:

 {
        "time": "2023-01-24T10:00:02.3680050Z",
        "resourceId": "/SUBSCRIPTIONS/4A1C78C6-5CB1-422C-A34E-0DF7FCB9BD0B/RESOURCEGROUPS/TEST/PROVIDERS/MICROSOFT.CACHE/REDISENTERPRISE/AUDITING-SHOEBOX/DATABASES/DEFAULT",
        "category": "ConnectionEvents",
        "location": "westus",
        "operationName": "Microsoft.Cache/redisEnterprise/databases/ConnectionEvents/Read",
        "properties": {
            "eventEpochTime": 1674554402,
            "id": 6185063009002,
            "clientIP": "20.228.16.39",
            "eventType": "auth",
            "eventStatus": 8
        }
    }

Het logboek voor een onderbrekingsevent ziet er als volgt uit:

    {
        "time": "2023-01-24T10:00:03.3680050Z",
        "resourceId": "/SUBSCRIPTIONS/4A1C78C6-5CB1-422C-A34E-0DF7FCB9BD0B/RESOURCEGROUPS/TEST/PROVIDERS/MICROSOFT.CACHE/REDISENTERPRISE/AUDITING-SHOEBOX/DATABASES/DEFAULT",
        "category": "ConnectionEvents",
        "location": "westus",
        "operationName": "Microsoft.Cache/redisEnterprise/databases/ConnectionEvents/Read",
        "properties": {
            "eventEpochTime": 1674554402,
            "id": 6185063009002,
            "clientIP": "20.228.16.39",
            "eventType": "close_conn"
        }
    }

Volgende stappen

Zie het artikel Diagnostische instellingen maken om platformlogboeken en metrische gegevens te verzamelen in Azure voor gedetailleerde informatie over hoe u een diagnostische instelling kunt maken met behulp van de Azure Portal, CLI of PowerShell.