Przekazywanie dzienników do usługi Azure Monitor
Okresowo można eksportować dzienniki, a następnie przekazywać je na platformę Azure. Eksportowanie i przekazywanie dzienników powoduje również utworzenie i zaktualizowanie kontrolera danych, wystąpienia zarządzanego SQL i zasobów serwera PostgreSQL na platformie Azure.
Zanim rozpoczniesz
Przed przekazaniem dzienników należy wykonać następujące czynności:
- Tworzenie obszaru roboczego usługi Log Analytics
- Przypisywanie identyfikatora i klucza współużytkowanego do zmiennych środowiskowych
Przykłady w tym artykule używają nawiasów kątowych < ... >
do identyfikowania wartości, które należy zastąpić przed uruchomieniem skryptu. Zastąp nawiasy i wartości wewnątrz nawiasów kwadratowych.
Tworzenie obszaru roboczego usługi Log Analytics
Aby utworzyć obszar roboczy usługi Log Analytics, wykonaj te polecenia, aby utworzyć obszar roboczy usługi Log Analytics i ustawić informacje o dostępie do zmiennych środowiskowych.
Uwaga
Pomiń ten krok, jeśli masz już obszar roboczy.
az monitor log-analytics workspace create --resource-group <resource group name> --workspace-name <some name you choose>
Przykładowe wyjście:
{
"customerId": "00000000-0000-0000-0000-000000000000",
"eTag": null,
"id": "/subscriptions/<Subscription ID>/resourcegroups/user-arc-demo/providers/microsoft.operationalinsights/workspaces/user-logworkspace",
"location": "eastus",
"name": "user-logworkspace",
"portalUrl": null,
"provisioningState": "Succeeded",
"resourceGroup": "user-arc-demo",
"retentionInDays": 30,
"sku": {
"lastSkuUpdate": "Thu, 30 Jul 2020 22:37:53 GMT",
"maxCapacityReservationLevel": 3000,
"name": "pergb2018"
},
"source": "Azure",
"tags": null,
"type": "Microsoft.OperationalInsights/workspaces"
}
Przypisywanie identyfikatora i klucza współużytkowanego do zmiennych środowiskowych
Zapisz analizę customerId
obszaru roboczego dziennika jako zmienną środowiskową, która będzie używana później:
SET WORKSPACE_ID=<customerId>
To polecenie zwraca klucze dostępu wymagane do nawiązania połączenia z obszarem roboczym usługi Log Analytics:
az monitor log-analytics workspace get-shared-keys --resource-group MyResourceGroup --workspace-name MyLogsWorkpace
Przykładowe wyjście:
{
"primarySharedKey": "<primarySharedKey>==",
"secondarySharedKey": "<secondarySharedKey>=="
}
Zapisz klucz podstawowy w zmiennej środowiskowej, która będzie używana później:
SET WORKSPACE_SHARED_KEY=<primarySharedKey>
Weryfikowanie zmiennych środowiskowych
Upewnij się, że wszystkie wymagane zmienne środowiskowe są ustawione, jeśli chcesz:
echo %WORKSPACE_ID%
echo %WORKSPACE_SHARED_KEY%
Po ustawieniu zmiennych środowiskowych można przekazać dzienniki do obszaru roboczego dziennika.
Konfigurowanie automatycznego przekazywania dzienników do obszaru roboczego usługi Azure Log Analytics w trybie bezpośrednim przy użyciu az
interfejsu wiersza polecenia
W trybie bezpośredniego połączenia przekazywanie dzienników można skonfigurować tylko w trybie automatycznym. To automatyczne przekazywanie metryk można skonfigurować podczas wdrażania lub po wdrożeniu kontrolera danych usługi Azure Arc.
Włączanie automatycznego przekazywania dzienników do obszaru roboczego usługi Azure Log Analytics
Jeśli automatyczne przekazywanie dzienników zostało wyłączone podczas wdrażania kontrolera danych usługi Azure Arc, uruchom poniższe polecenie, aby włączyć automatyczne przekazywanie dzienników.
az arcdata dc update --name <name of datacontroller> --resource-group <resource group> --auto-upload-logs true
#Example
az arcdata dc update --name arcdc --resource-group <myresourcegroup> --auto-upload-logs true
Włączanie automatycznego przekazywania dzienników do obszaru roboczego usługi Azure Log Analytics
Jeśli automatyczne przekazywanie dzienników zostało włączone podczas wdrażania kontrolera danych usługi Azure Arc, uruchom poniższe polecenie, aby wyłączyć automatyczne przekazywanie dzienników.
az arcdata dc update --name <name of datacontroller> --resource-group <resource group> --auto-upload-logs false
#Example
az arcdata dc update --name arcdc --resource-group <myresourcegroup> --auto-upload-logs false
Konfigurowanie automatycznego przekazywania dzienników do obszaru roboczego usługi Azure Log Analytics w trybie bezpośrednim przy użyciu kubectl
interfejsu wiersza polecenia
Włączanie automatycznego przekazywania dzienników do obszaru roboczego usługi Azure Log Analytics
Aby skonfigurować automatyczne przekazywanie dzienników przy użyciu polecenia kubectl
:
- upewnij się, że obszar roboczy usługi Log Analytics został utworzony zgodnie z opisem we wcześniejszej sekcji
- utwórz wpis tajny kubernetes dla obszaru roboczego usługi Log Analytics przy użyciu polecenia
WorkspaceID
iSharedAccessKey
w następujący sposób:
apiVersion: v1
data:
primaryKey: <base64 encoding of Azure Log Analytics workspace primary key>
workspaceId: <base64 encoding of Azure Log Analytics workspace Id>
kind: Secret
metadata:
name: log-workspace-secret
namespace: <your datacontroller namespace>
type: Opaque
Aby utworzyć wpis tajny, uruchom polecenie:
kubectl apply -f <myLogAnalyticssecret.yaml> --namespace <mynamespace>
Aby otworzyć ustawienia jako plik yaml w edytorze domyślnym, uruchom polecenie:
kubectl edit datacontroller <DC name> --name <namespace>
zaktualizuj właściwość autoUploadLogs na
"true"
, a następnie zapisz plik
Włączanie automatycznego przekazywania dzienników do obszaru roboczego usługi Azure Log Analytics
Aby wyłączyć automatyczne przekazywanie dzienników, uruchom polecenie:
kubectl edit datacontroller <DC name> --name <namespace>
- zaktualizuj właściwość autoUploadLogs na
"false"
, a następnie zapisz plik
Przekazywanie dzienników do usługi Azure Monitor w trybie pośrednim
Aby przekazać dzienniki dla wystąpienia zarządzanego SQL włączonego przez usługi Azure Arc i serwery PostgreSQL z obsługą usługi Azure Arc, uruchom następujące polecenia interfejsu wiersza polecenia:
Eksportuj wszystkie dzienniki do określonego pliku:
Uwaga
Eksportowanie informacji o użyciu/rozliczeniach, metryk i dzienników przy użyciu polecenia
az arcdata dc export
wymaga teraz pomijania weryfikacji SSL. Zostanie wyświetlony monit o obejście weryfikacji SSL lub ustawienie zmiennej środowiskowejAZDATA_VERIFY_SSL=no
w celu uniknięcia monitowania. Obecnie nie ma możliwości skonfigurowania certyfikatu SSL dla interfejsu API eksportu kontrolera danych.az arcdata dc export --type logs --path logs.json --k8s-namespace arc
Przekaż dzienniki do obszaru roboczego usługi Log Analytics usługi Azure Monitor:
az arcdata dc upload --path logs.json
Wyświetlanie dzienników w witrynie Azure Portal
Po przekazaniu dzienników powinno być możliwe wykonywanie do nich zapytań za pomocą eksploratora zapytań dziennika w następujący sposób:
- Otwórz witrynę Azure Portal, a następnie wyszukaj obszar roboczy według nazwy na pasku wyszukiwania u góry, a następnie wybierz go.
- Wybierz pozycję Dzienniki w panelu po lewej stronie.
- Wybierz pozycję Rozpocznij (lub wybierz linki na stronie Wprowadzenie, aby dowiedzieć się więcej o usłudze Log Analytics, jeśli dopiero zaczynasz).
- Postępuj zgodnie z samouczkiem, aby dowiedzieć się więcej o usłudze Log Analytics, jeśli po raz pierwszy korzystasz z usługi Log Analytics.
- Rozwiń pozycję Dzienniki niestandardowe w dolnej części listy tabel i zobaczysz tabelę o nazwie "sql_instance_logs_CL" lub "postgresInstances_postgresql_logs_CL".
- Wybierz ikonę "eye" obok nazwy tabeli.
- Wybierz przycisk "Wyświetl w edytorze zapytań".
- Teraz będziesz mieć zapytanie w edytorze zapytań, które będzie wyświetlać najnowsze 10 zdarzeń w dzienniku.
- W tym miejscu możesz poeksperymentować z wykonywaniem zapytań w dziennikach przy użyciu edytora zapytań, ustawianiem alertów itd.
Automatyzowanie przekazywania (opcjonalnie)
Jeśli chcesz przekazać metryki i dzienniki zgodnie z harmonogramem, możesz utworzyć skrypt i uruchomić go na czasomierzu co kilka minut. Poniżej przedstawiono przykład automatyzacji przekazywania przy użyciu skryptu powłoki systemu Linux.
W ulubionym edytorze tekstu/kodu dodaj następujący skrypt do pliku i zapisz go jako plik wykonywalny skryptu — taki jak .sh
(Linux/Mac), .cmd
, .bat
lub .ps1
(Windows).
az arcdata dc export --type logs --path logs.json --force --k8s-namespace arc
az arcdata dc upload --path logs.json
Utwórz plik wykonywalny pliku skryptu
chmod +x myuploadscript.sh
Uruchom skrypt co 20 minut:
watch -n 1200 ./myuploadscript.sh
Możesz również użyć harmonogramu zadań, takiego jak cron lub Harmonogram zadań systemu Windows lub orkiestrator, taki jak Ansible, Puppet lub Chef.
Powiązana zawartość
Przekazywanie metryk i dzienników do usługi Azure Monitor
Przekazywanie danych użycia, metryk i dzienników do usługi Azure Monitor
Przekazywanie danych rozliczeniowych na platformę Azure i wyświetlanie ich w witrynie Azure Portal
Wyświetlanie zasobu kontrolera danych usługi Azure Arc w witrynie Azure Portal