Logboeken ophalen om problemen met gegevensservices met Azure Arc op te lossen
Vereisten
Voordat u verdergaat, hebt u het volgende nodig:
- Azure CLI (
az
) met dearcdata
extensie. Zie Clienthulpprogramma's installeren voor het implementeren en beheren van Azure Arc-gegevensservices voor meer informatie. - Een beheerdersaccount om u aan te melden bij de gegevenscontroller met Azure Arc.
Logboekbestanden ophalen
U kunt servicelogboeken voor alle pods of specifieke pods ophalen voor probleemoplossingsdoeleinden. Een manier is om standaard Kubernetes-hulpprogramma's zoals de kubectl logs
opdracht te gebruiken. In dit artikel gebruikt u de Azure(az
) CLI-extensie arcdata
, waardoor u alle logboeken in één keer gemakkelijker kunt ophalen.
Voer de volgende opdracht uit om de logboeken te dumpen:
az arcdata dc debug copy-logs --exclude-dumps --skip-compress --use-k8s --k8s-namespace
Voorbeeld:
#az arcdata dc debug copy-logs --exclude-dumps --skip-compress --use-k8s --k8s-namespace
De gegevenscontroller maakt de logboekbestanden in de huidige werkmap in een submap met de naam logs
.
Opties
De az arcdata dc debug copy-logs
opdracht biedt de volgende opties voor het beheren van de uitvoer:
- Voer de logboekbestanden uit naar een andere map met behulp van de
--target-folder
parameter. - Comprimeer de bestanden door de
--skip-compress
parameter weg te laten. - Trigger en neem geheugendumps op door weg te
--exclude-dumps
laten. We raden deze methode niet aan, tenzij Microsoft Ondersteuning de geheugendumps heeft aangevraagd. Voor het ophalen van een geheugendump moet de instellingallowDumps
van de gegevenscontroller worden ingesteldtrue
op het moment dat de gegevenscontroller wordt gemaakt. - Filter om logboeken te verzamelen voor alleen een specifieke pod (
--pod
) of container (--container
) op naam. - Filter om logboeken voor een specifieke aangepaste resource te verzamelen door de
--resource-kind
en--resource-name
parameters door te geven. Deresource-kind
parameterwaarde moet een van de namen van de aangepaste resourcedefinities zijn. U kunt deze namen ophalen met behulp van de opdrachtkubectl get customresourcedefinition
.
Met deze parameters kunt u het <parameters>
volgende voorbeeld vervangen:
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
Voorbeeld:
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
De volgende maphiërarchie is een voorbeeld. Deze is geordend op podnaam, vervolgens container en vervolgens op maphiërarchie binnen de container.
<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