Monitorování dat služby Azure Cache for Redis pomocí nastavení diagnostiky

Nastavení diagnostiky v Azure slouží ke shromažďování protokolů prostředků. Prostředek Azure generuje protokoly prostředků a poskytuje bohaté a časté údaje o provozu tohoto prostředku. Tyto protokoly se zaznamenávají na požadavek a označují se také jako "protokoly roviny dat". Doporučené informace o funkcích v Azure najdete v nastavení diagnostiky ve službě Azure Monitor . Obsah těchto protokolů se liší podle typu prostředku. V Azure Cache for Redis jsou k dispozici dvě možnosti pro protokolování:

Rozsah dostupnosti

Úroveň Basic, Standard a Premium Enterprise a Enterprise Flash
Metriky mezipaměti Ano Yes
Protokoly Připojení ion Ano Yes

Metriky mezipaměti

Azure Cache for Redis generuje mnoho metrik, jako je načtení serveru a Připojení iony za sekundu, které jsou užitečné k protokolování. Výběr možnosti AllMetrics umožňuje protokolovat tyto a další metriky mezipaměti. Můžete nakonfigurovat, jak dlouho se metriky uchovávají. Tady najdete příklad exportu metrik mezipaměti do účtu úložiště.

Protokoly Připojení ion

Azure Cache for Redis používá nastavení diagnostiky Azure k protokolování informací o klientských připojeních k mezipaměti. Protokolování a analýza tohoto nastavení diagnostiky vám pomůže pochopit, kdo se připojuje k vašim mezipamětí a časové razítko těchto připojení. Data protokolu se dají použít k identifikaci rozsahu porušení zabezpečení a pro účely auditování zabezpečení.

Rozdíly mezi úrovněmi Azure Cache for Redis

Implementace protokolů připojení se mezi úrovněmi mírně liší:

  • Mezipaměti úrovně Basic, Standard a Premium se dotazují na připojení klientů podle IP adresy, včetně počtu připojení pocházejících z každé jedinečné IP adresy. Tyto protokoly nejsou kumulativní. Představují snímky k určitému bodu v čase pořízené v 10sekundových intervalech. Události ověřování (úspěšné a neúspěšné) a události odpojení se v těchto úrovních neprotokolují.
  • Mezipaměti podnikové a podnikové úrovně Flash používají funkci událostí auditu připojení integrovanou do Redis Enterprise. Auditovat události připojení umožňují protokolovat všechna připojení, odpojení a událost ověřování, včetně neúspěšných událostí ověřování.

Protokoly připojení vytvořené ve vrstvách vypadají podobně, ale mají určité rozdíly. Dva formáty jsou podrobněji uvedeny dále v článku.

Důležité

Protokolování připojení v úrovních Basic, Standard a Premium se dotazuje na aktuální klientská připojení v mezipaměti. Stejné IP adresy klienta se zobrazí znovu a znovu. Protokolování na úrovni Enterprise a Enterprise Flash se zaměřuje na každou událost připojení. K protokolům dochází pouze v případě, že k události došlo poprvé.

Požadavky/omezení protokolování Připojení ionu

Úrovně Basic, Standard a Premium

  • Vzhledem k tomu, že protokoly připojení v těchto úrovních se skládají ze snímků k určitému bodu v čase pořízených každých 10 sekund, nebudou se zaprotokolovaná a odebraná připojení mezi 10sekundovými intervaly.
  • Události ověřování nejsou protokolovány.
  • Spuštění všech nastavení diagnostiky do vybraného cíle může trvat až 90 minut .
  • Povolení protokolů připojení může způsobit malé snížení výkonu instance mezipaměti.
  • Při streamování protokolů do Azure Log Analytics se podporuje jenom cenový plán protokolů Analytics. Další informace najdete v tématu o cenách služby Azure Monitor.

Úrovně Enterprise a Enterprise Flash

  • Při použití zásad clusteru OSS se protokoly vygenerují z každého datového uzlu. Pokud používáte zásady podnikového clusteru, generuje protokoly pouze uzel používaný jako proxy server. Obě verze stále pokrývají všechna připojení k mezipaměti. Jedná se jen o rozdíl v architektuře.
  • Ztráta dat (tj. chybějící událost připojení) je vzácná, ale je to možné. Ztráta dat je obvykle způsobená síťovými problémy.
  • Protokoly odpojení ještě nejsou plně stabilní a události se můžou zmeškat.
  • Vzhledem k tomu, že protokoly připojení na úrovních Enterprise jsou založené na událostech, dávejte pozor na zásady uchovávání informací. Pokud je například uchovávání nastavené na 10 dnů a došlo k události připojení před 15 dny, může připojení stále existovat, ale protokol pro toto připojení se nezachová.
  • Pokud používáte aktivní geografickou replikaci, musí být protokolování nakonfigurováno pro každou instanci mezipaměti ve skupině geografické replikace jednotlivě.
  • Spuštění všech nastavení diagnostiky do vybraného cíle může trvat až 90 minut .
  • Povolení protokolů připojení může způsobit malé snížení výkonu instance mezipaměti.

Poznámka:

Vždy je možné pomocí příkazů INFO nebo CLIENT LIST zkontrolovat, kdo je připojený k instanci mezipaměti na vyžádání.

Důležité

Při výběru protokolů můžete zvolit buď konkrétní kategorie, nebo skupiny kategorií, které jsou předdefinované seskupení protokolů napříč službami Azure. Když používáte skupiny kategorií, už nemůžete konfigurovat nastavení uchovávání informací. Pokud potřebujete určit dobu uchování protokolů připojení, vyberte místo toho položku v části Kategorie .

Cíle protokolu

Můžete zapnout nastavení diagnostiky pro instance Azure Cache for Redis a odesílat protokoly prostředků do následujících cílů:

  • Pracovní prostor služby Log Analytics – nemusí být ve stejné oblasti jako monitorovaný prostředek.
  • Účet úložiště – musí být ve stejné oblasti jako mezipaměť. Účty premium storage se ale jako cíl nepodporují .
  • Centrum událostí – Nastavení diagnostiky nemá přístup k prostředkům centra událostí, když jsou povolené virtuální sítě. Povolte povolit důvěryhodné služby Microsoft obejít toto nastavení brány firewall? v centrech událostí a udělte tak přístup k prostředkům centra událostí. Centrum událostí musí být ve stejné oblasti jako mezipaměť.
  • Partnerské řešení – seznam potenciálních řešení protokolování partnerů najdete tady.

Další informace o diagnostických požadavcích najdete v nastavení diagnostiky.

Při odesílání diagnostických protokolů do libovolného cíle se vám účtují běžné sazby za využití účtu úložiště a centra událostí. Účtuje se vám služba Azure Monitor, nikoli Azure Cache for Redis. Při odesílání protokolů do Log Analytics se vám účtují jenom příjem dat Log Analytics.

Další informace o cenách najdete v cenách služby Azure Monitor.

Povolení protokolování připojení pomocí webu Azure Portal

  1. Přihlaste se k portálu Azure.

  2. Přejděte ke svému účtu Azure Cache for Redis. Otevřete podokno Nastavení diagnostiky v části Monitorování na levé straně. Pak vyberte Přidat nastavení diagnostiky.

    Select diagnostics

  3. V podokně Nastavení diagnostiky vyberte Připojení edClientList z kategorií.

    Další podrobnosti o protokolovaných datech najdete v části Obsah protokolů Připojení ion.

  4. Jakmile vyberete Připojení edClientList, odešlete protokoly do preferovaného cíle. Vyberte informace v pracovním podokně.

    Select enable resource-specific

Povolení protokolování připojení pomocí rozhraní REST API

K vytvoření nastavení diagnostiky prostřednictvím interaktivní konzoly použijte rozhraní REST API služby Azure Monitor. Další informace najdete v tématu Vytvoření nebo aktualizace.

Požádat

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

Hlavičky

Parametry nebo hlavičky Hodnota/popis
name Název nastavení diagnostiky
resourceUri subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.Cache/Redis/{CACHE_NAME}
api-version 2017-05-01-preview
Content-Type application/json

Body

{
    "properties": {
      "storageAccountId": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1",
      "eventHubAuthorizationRuleId": "/subscriptions/1a66ce04-b633-4a0b-b2bc-a912ec8986a6/resourceGroups/montest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule",
      "eventHubName": "myeventhub",
      "workspaceId": "/subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/myworkspace",
      "logs": [
        {
          "category": "ConnectedClientList",
          "enabled": true,
          "retentionPolicy": {
            "enabled": false,
            "days": 0
          }
        }
      ]
    }
}

Povolení protokolování Připojení pomocí Azure CLI

az monitor diagnostic-settings create Pomocí příkazu vytvořte nastavení diagnostiky pomocí Azure CLI. Další informace o popisech příkazů a parametrů najdete v tématu Vytvoření nastavení diagnostiky pro odesílání protokolů platformy a metrik do různých cílů. Tento příklad ukazuje, jak pomocí Azure CLI streamovat data do čtyř různých koncových bodů:

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}/proviers/Microsoft.Datadog/monitors/mydatadog

Obsah protokolů Připojení ionu

Tato pole a vlastnosti se zobrazí v ConnectedClientList kategorii protokolu. Ve službě ACRConnectedClientList Azure Monitor se protokoly shromažďují v tabulce pod názvem MICROSOFT.CACHEposkytovatele prostředků .

Pole nebo vlastnost Služby Azure Storage Vlastnost Protokolů služby Azure Monitor Popis
time TimeGenerated Časové razítko vygenerování protokolu v UTC.
location Location K umístění (oblasti) instance Azure Cache for Redis se přistupovalo.
category Není k dispozici Dostupné kategorie protokolů: ConnectedClientList.
resourceId _ResourceId Prostředek Azure Cache for Redis, pro který jsou povolené protokoly.
operationName OperationName Operace Redis přidružená k záznamu protokolu.
properties Není k dispozici Obsah tohoto pole je popsán v následujících řádcích.
tenant CacheName Název instance Azure Cache for Redis.
roleInstance RoleInstance Instance role, která protokolovala seznam klientů.
connectedClients.ip ClientIp IP adresa klienta Redis.
connectedClients.privateLinkIpv6 PrivateLinkIpv6 Adresa IPv6 klienta Redis (pokud je k dispozici).
connectedClients.count ClientCount Počet připojení klientů Redis z přidružené IP adresy.

Ukázkový protokol účtu úložiště

Pokud odesíláte protokoly do účtu úložiště, obsah protokolů vypadá takto.

{
    "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/E6761CE7-A7BC-442E-BBAE-950A121933B5/RESOURCEGROUPS/AZURE-CACHE/PROVIDERS/MICROSOFT.CACHE/REDIS/MYCACHE", 
    "Level": 4,
    "operationName": "Microsoft.Cache/ClientList"
}

Dotazy Log Analytics

Poznámka:

Kurz použití Azure Log Analytics najdete v přehledu služby Log Analytics ve službě Azure Monitor. Mějte na paměti, že může trvat až 90 minut, než se protokoly zobrazí v Log Analtyics.

Tady je několik základních dotazů, které se mají použít jako modely.

  • Připojení klientů Azure Cache for Redis za hodinu v zadaném rozsahu IP adres:
let IpRange = "10.1.1.0/24";
ACRConnectedClientList
// For particular datetime filtering, add '| where TimeGenerated between (StartTime .. EndTime)'
| where ipv4_is_in_range(ClientIp, IpRange)
| summarize ConnectionCount = sum(ClientCount) by TimeRange = bin(TimeGenerated, 1h)
  • Jedinečné IP adresy klienta Redis, které jsou připojené k mezipaměti:
ACRConnectedClientList
| summarize count() by ClientIp

Další kroky

Podrobné informace o tom, jak vytvořit nastavení diagnostiky pomocí webu Azure Portal, rozhraní příkazového řádku nebo PowerShellu, najdete v článku o vytvoření nastavení diagnostiky pro shromažďování protokolů platformy a metrik v Azure .