Uzyskiwanie dzienników w celu rozwiązywania problemów z usługami danych z obsługą usługi Azure Arc
Wymagania wstępne
Przed kontynuowaniem potrzebne są następujące elementy:
- Interfejs wiersza polecenia platformy
arcdata
Azure (az
) z rozszerzeniem . Aby uzyskać więcej informacji, zobacz Instalowanie narzędzi klienckich do wdrażania usług danych Usługi Azure Arc i zarządzania nimi. - Konto administratora do logowania się do kontrolera danych z obsługą usługi Azure Arc.
Pobieranie plików dziennika
Dzienniki usług można pobrać we wszystkich zasobnikach lub określonych zasobnikach na potrzeby rozwiązywania problemów. Jednym ze sposobów jest użycie standardowych narzędzi Kubernetes, takich jak kubectl logs
polecenie. W tym artykule użyjesz rozszerzenia interfejsu wiersza polecenia arcdata
platformy Azure (az
), co ułatwia jednoczesne uzyskiwanie wszystkich dzienników.
Uruchom następujące polecenie, aby zrzucić dzienniki:
az arcdata dc debug copy-logs --exclude-dumps --skip-compress --use-k8s --k8s-namespace
Na przykład:
#az arcdata dc debug copy-logs --exclude-dumps --skip-compress --use-k8s --k8s-namespace
Kontroler danych tworzy pliki dziennika w bieżącym katalogu roboczym w podkatalogu o nazwie logs
.
Opcje
Polecenie az arcdata dc debug copy-logs
udostępnia następujące opcje zarządzania danymi wyjściowymi:
- Wyprowadź pliki dziennika do innego katalogu przy użyciu parametru
--target-folder
. - Kompresuj pliki, pomijając
--skip-compress
parametr . - Wyzwalanie i dołączanie
--exclude-dumps
zrzutów pamięci przez pominięcie . Nie zalecamy tej metody, chyba że pomoc techniczna firmy Microsoft zażądał zrzutów pamięci. Pobranie zrzutu pamięci wymaga ustawienia kontroleraallowDumps
danych ustawionego podczastrue
tworzenia kontrolera danych. - Filtruj, aby zbierać dzienniki tylko dla określonego zasobnika (
--pod
) lub kontenera (--container
) według nazwy. - Filtruj, aby zbierać dzienniki dla określonego zasobu niestandardowego, przekazując
--resource-kind
parametry i--resource-name
. Wartośćresource-kind
parametru powinna być jedną z niestandardowych nazw definicji zasobów. Te nazwy można pobrać przy użyciu poleceniakubectl get customresourcedefinition
.
Za pomocą tych parametrów możesz zastąpić element <parameters>
w poniższym przykładzie:
az arcdata dc debug copy-logs --target-folder <desired folder> --exclude-dumps --skip-compress -resource-kind <custom resource definition name> --resource-name <resource name> --use-k8s --k8s-namespace
Na przykład:
az arcdata dc debug copy-logs --target-folder C:\temp\logs --exclude-dumps --skip-compress --resource-kind postgresql-12 --resource-name pg1 --use-k8s --k8s-namespace
Poniższa hierarchia folderów jest przykładem. Jest on uporządkowany według nazwy zasobnika, a następnie kontenera, a następnie hierarchii katalogów w kontenerze.
<export directory>
├───debuglogs-arc-20200827-180403
│ ├───bootstrapper-vl8j2
│ │ └───bootstrapper
│ │ ├───apt
│ │ └───fsck
│ ├───control-j2dm5
│ │ ├───controller
│ │ │ └───controller
│ │ │ ├───2020-08-27
│ │ │ └───2020-08-28
│ │ └───fluentbit
│ │ ├───agent
│ │ ├───fluentbit
│ │ └───supervisor
│ │ └───log
│ ├───controldb-0
│ │ ├───fluentbit
│ │ │ ├───agent
│ │ │ ├───fluentbit
│ │ │ └───supervisor
│ │ │ └───log
│ │ └───mssql-server
│ │ ├───agent
│ │ ├───mssql
│ │ ├───mssql-server
│ │ └───supervisor
│ │ └───log
│ ├───controlwd-ln6j8
│ │ └───controlwatchdog
│ │ └───controlwatchdog
│ ├───logsdb-0
│ │ └───opensearch
│ │ ├───agent
│ │ ├───opensearch
│ │ ├───provisioner
│ │ └───supervisor
│ │ └───log
│ ├───logsui-7gg2d
│ │ └───kibana
│ │ ├───agent
│ │ ├───apt
│ │ ├───fsck
│ │ ├───kibana
│ │ └───supervisor
│ │ └───log
│ ├───metricsdb-0
│ │ └───influxdb
│ │ ├───agent
│ │ ├───influxdb
│ │ └───supervisor
│ │ └───log
│ ├───metricsdc-2f62t
│ │ └───telegraf
│ │ ├───agent
│ │ ├───apt
│ │ ├───fsck
│ │ ├───supervisor
│ │ │ └───log
│ │ └───telegraf
│ ├───metricsdc-jznd2
│ │ └───telegraf
│ │ ├───agent
│ │ ├───apt
│ │ ├───fsck
│ │ ├───supervisor
│ │ │ └───log
│ │ └───telegraf
│ ├───metricsdc-n5vnx
│ │ └───telegraf
│ │ ├───agent
│ │ ├───apt
│ │ ├───fsck
│ │ ├───supervisor
│ │ │ └───log
│ │ └───telegraf
│ ├───metricsui-h748h
│ │ └───grafana
│ │ ├───agent
│ │ ├───grafana
│ │ └───supervisor
│ │ └───log
│ └───mgmtproxy-r5zxs
│ ├───fluentbit
│ │ ├───agent
│ │ ├───fluentbit
│ │ └───supervisor
│ │ └───log
│ └───service-proxy
│ ├───agent
│ ├───nginx
│ └───supervisor
│ └───log
└───debuglogs-kube-system-20200827-180431
├───coredns-8bbb65c89-kklt7
│ └───coredns
├───coredns-8bbb65c89-z2vvr
│ └───coredns
├───coredns-autoscaler-5585bf8c9f-g52nt
│ └───autoscaler
├───kube-proxy-5c9s2
│ └───kube-proxy
├───kube-proxy-h6x56
│ └───kube-proxy
├───kube-proxy-nd2b7
│ └───kube-proxy
├───metrics-server-5f54b8994-vpm5r
│ └───metrics-server
└───tunnelfront-db87f4cd8-5xwxv
├───tunnel-front
│ ├───apt
│ └───journal
└───tunnel-probe
├───apt
├───journal
└───openvpn