Udostępnij przez


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 oraz zarządzanego wystąpienia SQL z obsługą Azure Arc.

Zanim rozpoczniesz

Przed przekazaniem dzienników należy wykonać następujące czynności:

  1. Tworzenie obszaru roboczego usługi Log Analytics
  2. 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.

Note

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>

Example output:

{
  "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

Example output:

{
  "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

In the direct connected mode, Logs upload can only be set up in automatic mode. 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

Configure automatic upload of logs to Azure Log Analytics Workspace in direct mode using kubectl CLI

Włączanie automatycznego przekazywania dzienników do obszaru roboczego usługi Azure Log Analytics

Aby skonfigurować automatyczne przekazywanie dzienników z użyciem 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 i SharedAccessKey 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ć tajny, uruchom:

    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, wykonaj polecenie:

kubectl edit datacontroller <DC name> --name <namespace>
  • zaktualizuj właściwość autoUploadLogs na "false", a następnie zapisz plik

Upload logs to Azure Monitor in indirect mode

Aby przekazać dzienniki dla usługi SQL Managed Instance włączonej przez usługę Azure Arc, uruchom następujące polecenia CLI:

  1. Eksportuj wszystkie dzienniki do określonego pliku:

    Note

    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 środowiskowej AZDATA_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
    
  2. Załaduj dzienniki do obszaru roboczego usługi Log Analytics w Azure Monitor.

    az arcdata dc upload --path logs.json
    

Wyświetl swoje dzienniki w portalu Azure

Po przesłaniu dzienników, powinieneś móc wykonywać do nich zapytania za pomocą eksploratora dzienników w sposób następujący:

  1. 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.
  2. Wybierz pozycję Dzienniki w panelu po lewej stronie.
  3. Wybierz pozycję Rozpocznij (lub wybierz linki na stronie Wprowadzenie, aby dowiedzieć się więcej o usłudze Log Analytics, jeśli dopiero zaczynasz).
  4. 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.
  5. Rozwiń pozycję Dzienniki niestandardowe u dołu listy tabel, aby zobaczyć tabelę o nazwie „sql_instance_logs_CL”.
  6. Wybierz ikonę "eye" obok nazwy tabeli.
  7. Wybierz przycisk "Wyświetl w edytorze zapytań".
  8. Teraz będziesz mieć zapytanie w edytorze zapytań, które będzie wyświetlać najnowsze 10 zdarzeń w dzienniku.
  9. 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 przesłać metryki i logi zgodnie z harmonogramem, możesz utworzyć skrypt i uruchomić go przy użyciu timera co kilka minut. Poniżej przedstawiono przykład automatyzacji przesyłania plików przy użyciu skryptu powłoki 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, .batlub .ps1 (Windows).

az arcdata dc export --type logs --path logs.json --force --k8s-namespace arc
az arcdata dc upload --path logs.json

Uczyń plik skryptu wykonywalnym

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.

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