Monitorowanie danych usługi Azure Managed Redis (wersja zapoznawcza) przy użyciu ustawień diagnostycznych
Ustawienia diagnostyczne na platformie Azure umożliwiają zbieranie dzienników zasobów. Zasób platformy Azure emituje dzienniki zasobów i udostępnia bogate, częste dane dotyczące działania tego zasobu. Te dzienniki są przechwytywane na żądanie i są również określane jako "dzienniki płaszczyzny danych". Zobacz ustawienia diagnostyczne w usłudze Azure Monitor , aby zapoznać się z zalecanym omówieniem funkcji na platformie Azure. Zawartość tych dzienników różni się w zależności od typu zasobu. W usłudze Azure Managed Redis (wersja zapoznawcza) dostępne są dwie opcje rejestrowania:
- Metryki pamięci podręcznej (czyli "AllMetrics") używane do rejestrowania metryk z usługi Azure Monitor
- Dzienniki połączeń rejestruje połączenia z pamięcią podręczną na potrzeby zabezpieczeń i diagnostyki.
Metryki pamięci podręcznej
Usługa Azure Managed Redis (wersja zapoznawcza) emituje wiele metryk , takich jak obciążenie serwera i połączenia na sekundę , które są przydatne do rejestrowania. Wybranie opcji AllMetrics umożliwia rejestrowanie tych i innych metryk pamięci podręcznej. Możesz skonfigurować czas przechowywania metryk. Zobacz tutaj, aby zapoznać się z przykładem eksportowania metryk pamięci podręcznej do konta magazynu.
Dzienniki połączeń
Usługa Azure Managed Redis używa ustawień diagnostycznych platformy Azure do rejestrowania informacji o połączeniach klientów z pamięcią podręczną. Rejestrowanie i analizowanie tego ustawienia diagnostycznego pomaga zrozumieć, kto łączy się z pamięciami podręcznymi i znacznikiem czasu tych połączeń. Dane dziennika mogą służyć do identyfikowania zakresu naruszenia zabezpieczeń i do celów inspekcji zabezpieczeń.
Usługa Azure Managed Redis używa funkcji inspekcji zdarzeń połączenia wbudowanych w stos usługi Redis Enterprise. Zdarzenia inspekcji połączeń umożliwiają rejestrowanie każdego połączenia, rozłączenia i zdarzenia uwierzytelniania, w tym zdarzeń uwierzytelniania, które zakończyły się niepowodzeniem.
Ważne
Rejestrowanie w usłudze Azure Managed Redis koncentruje się na każdym zdarzeniu połączenia. Dzienniki występują tylko wtedy, gdy rzeczywiste zdarzenie wystąpiło po raz pierwszy.
Wymagania wstępne/ograniczenia rejestrowania połączeń
- W przypadku korzystania z zasad klastra systemu operacyjnego dzienniki są emitowane z każdego węzła danych. W przypadku korzystania z zasad klastra przedsiębiorstwa tylko węzeł używany jako serwer proxy emituje dzienniki. Obie wersje nadal obejmują wszystkie połączenia z pamięcią podręczną. Jest to tylko różnica architektoniczna.
- Utrata danych (czyli brak zdarzenia połączenia) jest rzadka, ale możliwa. Utrata danych jest zwykle spowodowana problemami z siecią.
- Dzienniki rozłączania nie są jeszcze w pełni stabilne, a zdarzenia mogą zostać pominięte.
- Ponieważ dzienniki połączeń w usłudze Azure Managed Redis są oparte na zdarzeniach, należy zachować ostrożność w zasadach przechowywania. Jeśli na przykład okres przechowywania jest ustawiony na 10 dni, a zdarzenie połączenia miało miejsce 15 dni temu, połączenie to może nadal istnieć, ale dziennik dla tego połączenia nie jest zachowywany.
- W przypadku korzystania z aktywnej replikacji geograficznej rejestrowanie musi być skonfigurowane dla każdego wystąpienia pamięci podręcznej w grupie replikacji geograficznej osobno.
- Rozpoczęcie przepływu wszystkich ustawień diagnostycznych do wybranego miejsca docelowego może potrwać do 90 minut .
- Włączenie dzienników połączeń może spowodować niewielkie obniżenie wydajności wystąpienia usługi Redis.
Uwaga
Zawsze można użyć poleceń INFO lub CLIENT LIST , aby sprawdzić, kto jest połączony z wystąpieniem pamięci podręcznej na żądanie.
Ważne
Podczas wybierania dzienników można wybrać określoną kategorię lub grupy kategorii, które są wstępnie zdefiniowanymi grupami dzienników w usługach platformy Azure. W przypadku korzystania z grup kategorii nie można już skonfigurować ustawień przechowywania. Jeśli musisz określić czas przechowywania dzienników połączeń, wybierz element w sekcji Kategorie .
Miejsca docelowe dziennika
Możesz włączyć ustawienia diagnostyczne dla wystąpień usługi Azure Managed Redis i wysłać dzienniki zasobów do następujących miejsc docelowych:
- Obszar roboczy usługi Log Analytics — nie musi znajdować się w tym samym regionie co monitorowany zasób.
- Konto magazynu — musi znajdować się w tym samym regionie co pamięć podręczna. Konta usługi Premium Storage nie są jednak obsługiwane jako miejsce docelowe.
- Centrum zdarzeń — ustawienia diagnostyczne nie mogą uzyskiwać dostępu do zasobów centrum zdarzeń po włączeniu sieci wirtualnych. Włącz ustawienie Zezwalaj na zaufane usługi firmy Microsoft obejście tej zapory? w centrach zdarzeń w celu udzielenia dostępu do zasobów centrum zdarzeń. Centrum zdarzeń musi znajdować się w tym samym regionie co pamięć podręczna.
- Rozwiązanie partnerskie — listę potencjalnych rozwiązań do rejestrowania partnerów można znaleźć tutaj
Aby uzyskać więcej informacji na temat wymagań diagnostycznych, zobacz ustawienia diagnostyczne.
Podczas wysyłania dzienników diagnostycznych do dowolnego miejsca docelowego są naliczane normalne stawki danych za użycie konta magazynu i centrum zdarzeń. Opłaty są naliczane w usłudze Azure Monitor, a nie za usługę Azure Managed Redis. Podczas wysyłania dzienników do usługi Log Analytics opłaty są naliczane tylko za pozyskiwanie danych usługi Log Analytics.
Aby uzyskać więcej informacji o cenach, cennik usługi Azure Monitor.
Włączanie rejestrowania połączeń przy użyciu witryny Azure Portal
Zaloguj się w witrynie Azure Portal.
Przejdź do konta usługi Azure Managed Redis. Otwórz okienko Ustawienia diagnostyczne — inspekcja w sekcji Monitorowanie po lewej stronie. Następnie wybierz pozycję Dodaj ustawienie diagnostyczne.
W okienku Ustawienia diagnostyczne — Inspekcja wybierz pozycję Zdarzenia połączenia z kategorii.
Aby uzyskać więcej informacji na temat zarejestrowanych danych, zobacz poniżej zawartość dzienników połączeń.
Po wybraniu pozycji Zdarzenia połączenia wyślij dzienniki do preferowanego miejsca docelowego. Wybierz informacje w okienku roboczym.
Włączanie rejestrowania połączeń przy użyciu interfejsu API REST
Użyj interfejsu API REST usługi Azure Monitor do utworzenia ustawienia diagnostycznego za pośrednictwem konsoli interaktywnej. Aby uzyskać więcej informacji, zobacz Tworzenie lub aktualizowanie.
Żądanie
PUT https://management.azure.com/{resourceUri}/providers/Microsoft.Insights/diagnosticSettings/{name}?api-version=2017-05-01-preview
Nagłówki
Parametry/nagłówki | Wartość/opis |
---|---|
name |
Nazwa ustawienia diagnostycznego. |
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 |
Treść
{
"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
}
}
]
}
}
Włączanie rejestrowania połączeń przy użyciu interfejsu wiersza polecenia platformy Azure
Użyj polecenia , az monitor diagnostic-settings create
aby utworzyć ustawienie diagnostyczne za pomocą interfejsu wiersza polecenia platformy Azure. Aby uzyskać więcej informacji na temat opisów poleceń i parametrów, zobacz Create diagnostic settings to send platform logs and metrics to different destinations (Tworzenie ustawień diagnostycznych w celu wysyłania dzienników i metryk platformy do różnych miejsc docelowych). W tym przykładzie pokazano, jak za pomocą interfejsu wiersza polecenia platformy Azure przesyłać strumieniowo dane do czterech różnych punktów końcowych:
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
Zawartość dzienników połączeń
Te pola i właściwości są wyświetlane w ConnectionEvents
kategorii dziennika. W usłudze Azure Monitor dzienniki są zbierane w REDConnectionEvents
tabeli pod nazwą MICROSOFT.CACHE
dostawcy zasobów .
Pole lub właściwość usługi Azure Storage | Właściwość Dzienniki usługi Azure Monitor | opis |
---|---|---|
time |
TimeGenerated |
Sygnatura czasowa (UTC) przechwycona w dzienniku zdarzeń. |
location |
Location |
Lokalizacja (region) wystąpienia usługi Azure Managed Redis została dostępna. |
category |
nie dotyczy | Dostępne kategorie dzienników: ConnectionEvents . |
resourceId |
_ResourceId |
Zasób usługi Azure Managed Redis, dla którego są włączone dzienniki. |
operationName |
OperationName |
Operacja redis skojarzona z rekordem dziennika. |
properties |
nie dotyczy | Zawartość tego pola jest opisana w kolejnych wierszach. |
eventEpochTime |
EventEpochTime |
Sygnatura czasowa systemu UNIX (liczba sekund od 1 stycznia 1970 r.), gdy zdarzenie miało miejsce w formacie UTC. Znacznik czasu można przekonwertować na format daty/godziny przy użyciu funkcji unixtime_seconds_todatetime w obszarze roboczym usługi Log Analytics. |
clientIP |
ClientIP |
Adres IP klienta redis. W przypadku korzystania z usługi Azure Storage adres IP to format IPv4 lub IPv6 linku prywatnego na podstawie typu pamięci podręcznej. W przypadku korzystania z usługi Log Analytics wynik jest zawsze w wersji IPv4, ponieważ podano oddzielne pole IPv6. |
nie dotyczy | PrivateLinkIPv6 |
Adres IPv6 łącza prywatnego klienta Redis (emitowany tylko w przypadku korzystania z usługi Private Link i analizy dzienników). |
id |
ConnectionId |
Unikatowy identyfikator połączenia przypisany przez usługę Redis. |
eventType |
EventType |
Typ zdarzenia połączenia (new_conn, uwierzytelnianie lub close_conn). |
eventStatus |
EventStatus |
Wyniki żądania uwierzytelniania jako kod stanu (dotyczy tylko zdarzenia uwierzytelniania). |
Uwaga
Jeśli jest używany link prywatny, tylko adres IPv6 zostanie zarejestrowany (chyba że przesyłasz strumieniowo dane do usługi Log Analytics). Adres IPv6 można przekonwertować na równoważny adres IPv4, sprawdzając ostatnie cztery bajty danych w adresie IPv6. Na przykład w adresie IPv6 łącza prywatnego "fd40:8913:31:6810:6c31:200:a01:104", ostatnie cztery bajty w szesnastkowym formacie to "0a", "01", "01" i "04". (Należy pamiętać, że zera wiodące są pomijane po każdym dwukropku). Odpowiadają one wartościom "10", "1", "1" i "4" w przecinku, dając nam adres IPv4 "10.1.1.4".
Przykładowy dziennik konta magazynu
Jeśli wysyłasz dzienniki do konta magazynu, dziennik zdarzenia połączenia wygląda następująco:
{
"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"
}
}
Dziennik zdarzenia uwierzytelniania wygląda następująco:
{
"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
}
}
Dziennik zdarzenia rozłączenia wygląda następująco:
{
"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"
}
}
Następne kroki
Aby uzyskać szczegółowe informacje na temat tworzenia ustawienia diagnostycznego przy użyciu witryny Azure Portal, interfejsu wiersza polecenia lub programu PowerShell, zobacz tworzenie ustawienia diagnostycznego w celu zbierania dzienników platformy i metryk na platformie Azure .