取得記錄,針對已啟用 Azure Arc 的資料服務進行疑難排解
必要條件
在繼續之前,您需要:
- 具備
arcdata
擴充功能的 Azure CLI (az
)。 如需詳細資訊,請參閱安裝用戶端工具以部署和管理 Azure Arc 資料服務。 - 系統管理員帳戶,用來登入已啟用 Azure Arc 的資料控制器。
取得記錄檔
您可以取得所有 Pod 或特定 Pod 的服務記錄來進行疑難排解。 其中一種方式是使用標準 Kubernetes 工具,例如 kubectl logs
命令。 在本文中,您將使用 Azure (az
) CLI arcdata
擴充功能,這可讓您更輕鬆地一次取得所有記錄。
執行下列命令來傾印記錄:
az arcdata dc debug copy-logs --exclude-dumps --skip-compress --use-k8s --k8s-namespace
例如:
#az arcdata dc debug copy-logs --exclude-dumps --skip-compress --use-k8s --k8s-namespace
資料控制器會在目前工作目錄中建立記錄檔,並位於名為 logs
的子目錄中。
選項。
此 az arcdata dc debug copy-logs
命令會提供下列選項來管理輸出:
- 使用
--target-folder
參數,將記錄檔輸出至不同的目錄。 - 省略
--skip-compress
參數來壓縮檔案。 - 省略
--exclude-dumps
來觸發並包含記憶體傾印。 除非 Microsoft 支援服務要求記憶體傾印,否則不建議您使用此方法。 若要取得記憶體傾印,您需要在建立資料控制器時,將資料控制器設定allowDumps
設為true
。 - 依名稱進行篩選,以收集特定 Pod (
--pod
) 或容器 (--container
) 的記錄。 - 傳遞
--resource-kind
和--resource-name
參數來進行篩選,藉此收集特定自訂資源的記錄。resource-kind
參數值應該是其中一個自訂資源定義名稱。 您可以使用kubectl get customresourcedefinition
命令來擷取這些名稱。
透過這些參數,您可以在下列範例中取代 <parameters>
:
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
例如:
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
下列資料夾階層是範例。 分類順序是 Pod 名稱、容器,接著是容器內的目錄階層。
<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