Crie instantâneos para ajudar a diagnosticar problemas de clusters

Quando tem um problema com um dos seus clusters, pode obter ajuda do Cloud Customer Care. O apoio ao cliente pode pedir-lhe que faça uma "captura instantânea" do cluster, que pode usar para diagnosticar o problema. Um instantâneo captura os ficheiros de configuração do cluster e do nó, e agrupa essas informações num único ficheiro TAR.

Este documento descreve como criar instantâneos predefinidos ou instantâneos mais personalizados de um cluster. Também explica como criar instantâneos quando um cluster está a ter erros específicos.

Se precisar de assistência adicional, contacte o apoio ao cliente do Google Cloud. Também pode consultar o artigo Receber apoio técnico para mais informações sobre recursos de apoio técnico, incluindo o seguinte:

  • Requisitos para abrir um registo de apoio ao cliente.
  • Ferramentas para ajudar a resolver problemas, como a configuração do ambiente, os registos e as métricas.
  • Componentes suportados.

Capturas de ecrã predefinidas

As secções seguintes descrevem o conteúdo de uma imagem instantânea padrão e como criar uma. Para ver informações sobre resumos personalizados, consulte a secção sobre resumos personalizados.

Que informações contém uma captura de ecrã predefinida?

O resumo de um cluster é um ficheiro TAR de ficheiros de configuração e registos sobre o cluster. Especificamente, a configuração predefinida do comando captura as seguintes informações sobre o seu cluster:

  • Versão do Kubernetes.

  • Estado dos recursos do Kubernetes nos espaços de nomes kube-system e gke-system: cluster, máquina, nós, serviços, pontos finais, ConfigMaps, ReplicaSets, CronJobs, pods e os proprietários desses pods, incluindo implementações, DaemonSets e StatefulSets.

  • Detalhes sobre cada configuração de nó, incluindo endereços IP, regras de iptables, pontos de montagem, sistema de ficheiros, ligações de rede e processos em execução.

  • Informações sobre o tempo de execução da VM no GDC e quaisquer VMs e recursos relacionados com VMs em execução no seu cluster. Para mais informações sobre o que é recolhido por predefinição e como criar instantâneos específicos da VM, consulte Informações da VM em instantâneos neste documento.

  • Registos do comando bmctl check cluster --snapshot.

As informações de credenciais de um cluster não estão incluídas na captura instantânea predefinida. Se o apoio técnico ao cliente da nuvem solicitar essas informações, consulte o artigo Obter informações do cluster.

Para ver uma lista abrangente das informações recolhidas quando executa o comando snapshot, consulte a secção seguinte sobre o ficheiro de configuração em detalhe. Este ficheiro de configuração mostra os comandos executados quando é tirada uma captura de ecrã predefinida.

Crie um instantâneo predefinido

O comando bmctl check cluster tira um instantâneo de um cluster. Pode usar este comando para realizar qualquer uma das seguintes ações:

  • Crie um instantâneo e carregue-o automaticamente para um contentor do Cloud Storage.
  • Crie um instantâneo de um cluster e guarde o ficheiro de instantâneo na máquina local na qual está a executar o comando.

Método n.º 1: crie uma imagem instantânea predefinida e carregue-a automaticamente para o contentor do Cloud Storage

Para criar e carregar uma captura instantânea para um contentor do Cloud Storage, faça o seguinte:

  1. Configure a API e a conta de serviço conforme descrito no artigo Configure uma conta de serviço que possa aceder a um contentor do Cloud Storage.

    Este é um passo único.

  2. Execute o seguinte comando bmctl para criar e carregar automaticamente uma captura de ecrã para um contentor do Cloud Storage:

    bmctl check cluster --snapshot --cluster=CLUSTER_NAME \
        --admin-kubeconfig=ADMIN_KUBECONFIG \
        --service-account-key-file SA_KEY_FILE
    

    Substitua as seguintes entradas por informações específicas do seu ambiente de cluster:

    • CLUSTER_NAME: o nome do cluster do qual quer tirar uma captura de ecrã.
    • ADMIN_KUBECONFIG: o caminho para o ficheiro kubeconfig do cluster de administrador.
    • SA_KEY_FILE: o caminho para o ficheiro de chave JSON transferido para a conta de serviço criada no passo anterior. Se não usar a flag --service-account-key-file, o comando usa as credenciais associadas à variável de ambiente GOOGLE_APPLICATION_CREDENTIALS. A especificação explícita das credenciais da conta de serviço com a flag tem precedência.

    Este comando gera um ficheiro tar de instantâneo e guarda-o localmente. Quando a conta de serviço está configurada corretamente, o comando também carrega o ficheiro TAR da captura de ecrã para um contentor no Cloud Storage. O comando pesquisa no seu projeto um contentor de armazenamento com um nome que comece por "anthos-snapshot-". Se existir um contentor deste tipo, o comando carrega a captura de ecrã para esse contentor. Se o comando não encontrar um contentor com um nome correspondente, cria um novo contentor com o nome anthos-snapshot-UUID, em que UUID é um identificador exclusivo universal de 32 dígitos.

  3. Partilhe o acesso com o Cloud Customer Care, conforme descrito no artigo Permita que o Cloud Customer Care veja a sua captura instantânea do cluster carregada.

Método n.º 2: crie um instantâneo predefinido apenas na máquina local

Use a flag --local para garantir que a captura instantânea do cluster é guardada apenas localmente. Pode capturar o estado dos clusters criados com o seguinte comando:

bmctl check cluster --snapshot --cluster=CLUSTER_NAME \
    --admin-kubeconfig=ADMIN_KUBECONFIG --local

Substitua o seguinte:

  • CLUSTER_NAME: o nome do cluster de destino.

  • ADMIN_KUBECONFIG: o caminho para o ficheiro kubeconfig do cluster de administrador.

Este comando gera um ficheiro TAR na sua máquina local. O nome deste ficheiro TAR tem o formato snapshot-CLUSTER_NAME-TIMESTAMP.tar.gz, em que TIMESTAMP indica a data e a hora em que o ficheiro foi criado. Este ficheiro TAR inclui informações de depuração relevantes sobre os componentes do sistema e as máquinas de um cluster.

Quando executa este comando, são recolhidas informações sobre os pods dos seguintes espaços de nomes: gke-system, gke-connect, capi-system, capi-webhook-system, cert-manager e capi-kubeadm-bootstrap-system

No entanto, pode alargar o âmbito das informações de diagnóstico recolhidas usando a flag --snapshot-scenario all. Esta flag aumenta o âmbito da captura de ecrã de diagnóstico para incluir todos os pods num cluster:

bmctl check cluster --snapshot --snapshot-scenario all \
    --cluster=CLUSTER_NAME \
    --kubeconfig=KUBECONFIG_PATH \
    --local

Cenários de instantâneos

O comando bmctl check cluster --snapshot suporta dois cenários. Para especificar um cenário, use a flag --scenario. A lista seguinte mostra os possíveis valores:

  • system: recolha um resumo dos componentes do sistema, incluindo os respetivos registos.

  • all: recolher um instantâneo de todos os pods, incluindo os respetivos registos.

Pode usar cada um dos dois cenários com um cluster de administrador ou um cluster de utilizador. O exemplo seguinte cria uma captura instantânea do cluster de administrador através do cenário system:

bmctl check cluster --snapshot --snapshot-scenario system \
    --cluster=ADMIN_CLUSTER_NAME \
    --kubeconfig=ADMIN_KUBECONFIG_PATH

O exemplo seguinte cria uma imagem instantânea de um cluster de utilizadores através do all cenário:

bmctl check cluster --snapshot --snapshot-scenario all \
    --cluster=USER_CLUSTER_NAME \
    --kubeconfig=USER_KUBECONFIG_PATH

Faça um ensaio de um instantâneo

Quando usa a flag --snapshot-dry-run, o comando não cria uma captura de ecrã. Em alternativa, mostra as ações que o comando snapshot executaria e gera um ficheiro de configuração de instantâneo. Para obter informações sobre o ficheiro de configuração do resumo, consulte o artigo Como criar um resumo personalizado.

Para fazer uma simulação de instantâneo no cluster de administrador, introduza o seguinte comando:

bmctl check cluster --snapshot --snapshot-dry-run \
    --cluster=ADMIN_CLUSTER_NAME \
    --kubeconfig=ADMIN_KUBECONFIG_PATH

Para executar um instantâneo de teste num cluster de utilizadores, introduza o seguinte comando:

bmctl check cluster --snapshot --snapshot-dry-run \
    --cluster=USER_CLUSTER_NAME \
    --kubeconfig=USER_KUBECONFIG_PATH

Obtenha registos de um período específico

Pode usar a flag --since para obter registos de um período de tempo que lhe interessa particularmente. Desta forma, pode criar instantâneos mais pequenos e mais focados do registo que ocorreu nos últimos segundos, minutos ou horas.

Por exemplo, o seguinte comando bmctl cria uma captura de ecrã do registo que ocorreu nas últimas três horas:

bmctl check cluster --snapshot --since=3h \
    --cluster=CLUSTER_NAME \
    --kubeconfig=ADMIN_KUBECONFIG_PATH

Especifique um diretório no qual a imagem instantânea é guardada temporariamente

Pode usar a flag --snapshot-temp-output-dir para especificar um diretório no qual a captura de ecrã é guardada temporariamente:

bmctl check cluster --snapshot --snapshot-temp-output-dir=TEMP_OUTPUT_DIR \
    --cluster=CLUSTER_NAME \
    --kubeconfig=ADMIN_KUBECONFIG_PATH

Se não especificar um diretório, a captura instantânea é guardada temporariamente no diretório /tmp. A utilização da opção --snapshot-temp-output-dir é uma boa ideia quando, por exemplo, o espaço é limitado no diretório /tmp predefinido.

Suprimir registo na consola

Pode usar a flag --quiet para impedir que as mensagens de registo apareçam na consola durante a execução de uma captura instantânea. Em alternativa, os registos da consola são guardados no ficheiro "bmctl_diagnose_snapshot.log" como parte da captura instantânea.

Execute o seguinte comando para impedir a apresentação de mensagens de registo na consola:

bmctl check cluster --snapshot --quiet \
    --cluster=CLUSTER_NAME \
    --kubeconfig=ADMIN_KUBECONFIG_PATH

Ajuste a execução em paralelo na linha de comandos

Normalmente, a rotina de instantâneo executa vários comandos. Vários processos paralelos permitem-lhe executar comandos em simultâneo, o que ajuda a rotina a ser executada mais rapidamente.

Na versão 1.31 e posteriores, o comando bmctl check cluster suporta uma flag --num-of-parallel-threads. Use esta flag para definir o número de threads paralelos usados para tirar capturas de ecrã.

Por predefinição, a rotina de instantâneo usa 10 threads. Se as capturas de ecrã demorarem demasiado tempo, aumente este valor.

O comando de exemplo seguinte define o número de threads paralelos como 30.

bmctl check cluster --snapshot --cluster=cluster1 \
    --admin-kubeconfig=bmctl-workspace/admin-cluster/admin-cluster-kubeconfig \
    --num-of-parallel-threads=30

Esta capacidade é semelhante ao campo numOfParallelThreads no ficheiro de configuração do resumo, quando cria resumos personalizados.

Resumos personalizados

Pode querer criar uma imagem instantânea personalizada de um cluster pelos seguintes motivos:

  • Para incluir mais informações sobre o cluster do que as fornecidas na captura de ecrã predefinida.
  • Para excluir algumas informações que estão na captura de ecrã predefinida.

Crie um instantâneo personalizado

A criação de um instantâneo personalizado requer a utilização de um ficheiro de configuração do instantâneo. Os passos seguintes explicam como criar o ficheiro de configuração, modificá-lo e usá-lo para criar uma imagem instantânea personalizada de um cluster:

  1. Crie um ficheiro de configuração de instantâneo executando o seguinte comando no cluster e escrevendo o resultado num ficheiro:

    bmctl check cluster \
        --snapshot --snapshot-dry-run --cluster CLUSTER_NAME \
        --kubeconfig KUBECONFIG_PATH
    
  2. Defina o tipo de informações que quer que apareçam na sua vista geral personalizada. Para tal, modifique o ficheiro de configuração da captura de ecrã que criou no passo 1. Por exemplo, se quiser que a captura instantânea contenha informações adicionais, como o tempo de execução de um nó específico, adicione o comando Linux uptime à secção relevante do ficheiro de configuração.

    O seguinte fragmento de um ficheiro de configuração mostra como fazer com que o comando snapshot forneça informações uptime sobre o nó 10.200.0.3. Estas informações não aparecem numa captura de ecrã padrão.

    ...
    nodeCommands:
    - nodes:
      - 10.200.0.3
      commands:
      - uptime
    ...
    
  3. Depois de modificar o ficheiro de configuração para definir o tipo de instantâneo que quer, crie o instantâneo personalizado executando o seguinte comando:

    bmctl check cluster --snapshot --snapshot-config SNAPSHOT_CONFIG_FILE \
        --cluster CLUSTER_NAME--kubeconfig KUBECONFIG_PATH
    

    A flag --snapshot-config direciona o comando bmctl para usar o conteúdo do ficheiro de configuração do instantâneo para definir as informações que aparecem no instantâneo.

O ficheiro de configuração em detalhe

O seguinte ficheiro de configuração de exemplo de uma captura de ecrã mostra os comandos e os ficheiros padrão usados para criar uma captura de ecrã, mas pode adicionar mais comandos e ficheiros quando forem necessárias informações de diagnóstico adicionais:

numOfParallelThreads: 10
excludeWords:
- password
nodeCommands:
- nodes:
  - 10.200.0.3
  - 10.200.0.4
  commands:
  - uptime
  - df --all --inodes
  - ip addr
  - ip neigh
  - iptables-save --counters
  - mount
  - ip route list table all
  - top -bn1 || true
  - docker info || true
  - docker ps -a || true
  - crictl ps -a || true
  - docker ps -a | grep anthos-baremetal-haproxy | cut -d ' ' -f1 | head -n 1 | xargs
    sudo docker logs || true
  - docker ps -a | grep anthos-baremetal-keepalived | cut -d ' ' -f1 | head -n 1 |
    xargs sudo docker logs || true
  - crictl ps -a | grep anthos-baremetal-haproxy | cut -d ' ' -f1 | head -n 1 | xargs
    sudo crictl logs || true
  - crictl ps -a | grep anthos-baremetal-keepalived | cut -d ' ' -f1 | head -n 1 |
    xargs sudo crictl logs || true
  - ps -edF
  - ps -eo pid,tid,ppid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm,args,cgroup
  - conntrack --count
  - dmesg
  - systemctl status -l docker || true
  - journalctl --utc -u docker
  - journalctl --utc -u docker-monitor.service
  - systemctl status -l kubelet
  - journalctl --utc -u kubelet
  - journalctl --utc -u kubelet-monitor.service
  - journalctl --utc --boot --dmesg
  - journalctl --utc -u node-problem-detector
  - systemctl status -l containerd || true
  - journalctl --utc -u containerd
  - systemctl status -l docker.haproxy || true
  - journalctl --utc -u docker.haproxy
  - systemctl status -l docker.keepalived || true
  - journalctl --utc -u docker.keepalived
  - systemctl status -l container.haproxy || true
  - journalctl --utc -u container.haproxy
  - systemctl status -l container.keepalived || true
  - journalctl --utc -u container.keepalived
nodeFiles:
- nodes:
  - 10.200.0.3
  - 10.200.0.4
  files:
  - /proc/sys/fs/file-nr
  - /proc/sys/net/netfilter/nf_conntrack_max
  - /proc/sys/net/ipv4/conf/all/rp_filter
  - /lib/systemd/system/kubelet.service
  - /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
  - /lib/systemd/system/docker.service || true
  - /etc/systemd/system/containerd.service || true
  - /etc/docker/daemon.json || true
  - /etc/containerd/config.toml || true
  - /etc/systemd/system/container.keepalived.service || true
  - /etc/systemd/system/container.haproxy.service || true
  - /etc/systemd/system/docker.keepalived.service || true
  - /etc/systemd/system/docker.haproxy.service || true
nodeSSHKey: ~/.ssh/id_rsa # path to your ssh key file

É provável que as seguintes entradas no seu ficheiro de configuração sejam diferentes das que aparecem no ficheiro de configuração de exemplo anterior:

  • Os endereços IP dos nós nas secções nodeCommands e nodeFiles
  • O caminho para o nodeSSHKey do seu cluster

Campos no ficheiro de configuração

Um ficheiro de configuração de instantâneo está no formato YAML. O ficheiro de configuração inclui os seguintes campos:

  • numOfParallelThreads: a rotina de instantâneo executa normalmente vários comandos. Vários threads paralelos ajudam a rotina a ser executada mais rapidamente. Recomendamos que defina numOfParallelThreads como 10, conforme mostrado no ficheiro de configuração de exemplo anterior. Se as capturas de ecrã demorarem demasiado tempo, aumente este valor.

  • excludeWords: o resumo contém uma grande quantidade de dados para os seus nós de cluster. Use excludeWords para reduzir os riscos de segurança quando partilha a sua captura rápida. Por exemplo, exclua password para que não seja possível identificar as strings de palavras-passe correspondentes.

  • nodeCommands: esta secção especifica as seguintes informações:

    • nodes: uma lista de endereços IP para os nós do cluster a partir dos quais quer recolher informações. Para criar uma captura de ecrã quando o cluster de administrador não estiver acessível, especifique, pelo menos, um endereço IP do nó.

    • commands: uma lista de comandos (e argumentos) a executar em cada nó. O resultado de cada comando está incluído na captura de ecrã.

  • nodeFiles: esta secção especifica as seguintes informações:

    • nodes: uma lista de endereços IP de nós de cluster a partir dos quais quer recolher ficheiros. Para criar uma captura de ecrã quando o cluster de administrador não estiver acessível, especifique, pelo menos, um endereço IP do nó.

    • files: uma lista de ficheiros a obter de cada nó. Quando os ficheiros especificados são encontrados num nó, são incluídos no instantâneo.

  • nodeSSHKey: caminho para o ficheiro de chave SSH. Quando o cluster de administrador está inacessível, este campo é obrigatório.

Crie instantâneos quando tiver erros específicos

Podem ser necessários passos ou parâmetros de comandos adicionais para criar com êxito um instantâneo quando ocorrem determinados eventos, como uma atualização bloqueada.

Crie um instantâneo predefinido durante instalações ou atualizações paradas

Ao instalar ou atualizar clusters de administrador, híbridos ou autónomos, o bmctl pode, por vezes, ficar parado em pontos em que é possível ver as seguintes saídas:

  • A aguardar que o kubeconfig do cluster fique pronto.
  • A aguardar que o cluster fique pronto.
  • A aguardar que os conjuntos de nós fiquem prontos.
  • A aguardar a conclusão da atualização.

Se tiver problemas com a instalação ou a atualização, pode tirar uma captura de ecrã de um cluster através do cluster de arranque, conforme mostrado no exemplo seguinte:

bmctl check cluster --snapshot --cluster=CLUSTER_NAME \
    --kubeconfig=WORKSPACE_DIR/.kindkubeconfig

Crie um resumo personalizado durante instalações ou atualizações paradas

Os passos seguintes mostram como criar um resumo personalizado de um cluster quando uma instalação ou uma atualização está parada:

  1. Recupere um ficheiro de configuração de uma captura instantânea do cluster a partir dos seus arquivos.

  2. Modifique o ficheiro de configuração do instantâneo para que o instantâneo contenha as informações pretendidas.

  3. Execute o seguinte comando para criar a captura de ecrã personalizada:

    bmctl check cluster --snapshot
        --snapshot-config=SNAPSHOT_CONFIG_FILE \
        --cluster=CLUSTER_NAME
        --kubeconfig=WORKSPACE_DIR/.kindkubeconfig
    

Crie uma captura de ecrã personalizada quando o cluster de administrador estiver inacessível

Quando o cluster de administrador está inacessível, pode tirar uma captura de ecrã personalizada do cluster executando o seguinte comando:

bmctl check cluster --snapshot --cluster CLUSTER_NAME
    --node-ssh-key SSH_KEY_FILE
    --nodes NODE_1_IP_ADDRESS, NODE_2_IP_ADDRESS, ...

No comando, substitua as seguintes entradas por informações específicas do seu ambiente de cluster:

  • CLUSTER_NAME: o nome do cluster do qual quer tirar um instantâneo.
  • SSH_KEY_FILE: o caminho para o ficheiro de chave SSH do nó.
  • NODE_x_IP_ADDRESS: o endereço IP de um nó do cluster sobre o qual quer obter informações.

Em alternativa, pode listar os endereços IP dos nós em linhas separadas:

bmctl check cluster
    --snapshot --cluster CLUSTER_NAME \
    --node-ssh-key SSH_KEY_FILE \
    --nodes NODE_1_IP_ADDRESS \
    --nodes NODE_2_IP_ADDRESS
  ...

Informações da VM em instantâneos

Se usar o VM Runtime no GDC para criar e gerir máquinas virtuais (VMs) no Google Distributed Cloud, pode recolher informações de diagnóstico relevantes em capturas de ecrã. As capturas de ecrã são um recurso essencial para diagnosticar e resolver problemas com as suas VMs.

O que é recolhido por predefinição

Quando cria um resumo predefinido, este contém as informações sobre o tempo de execução da VM no GDC e os recursos relacionados. O tempo de execução da VM no GDC está incluído no Google Distributed Cloud e o recurso personalizado VMRuntime está disponível nos seus clusters que executam cargas de trabalho. Mesmo que não tenha ativado o tempo de execução da VM no GDC, a captura de ecrã continua a conter a descrição YAML do recurso personalizado VMRuntime.

Se ativou o tempo de execução da VM no GDC, as capturas de ecrã contêm informações de estado e configuração para os recursos relacionados com a VM (quando os objetos estão presentes) no seu cluster. Os recursos relacionados com VMs incluem objetos do Kubernetes, como pods, implementações, DaemonSets e ConfigMaps.

Objetos no espaço de nomes vm-system

As informações de estado e configuração dos seguintes objetos encontram-se em kubectlCommands/vm-system no instantâneo gerado:

  • KubeVirt
  • VirtualMachineType
  • VMHighAvailabilityPolicy

Objetos noutros espaços de nomes

Quando cria uma VM (VirtualMachine), pode especificar o espaço de nomes. Se não especificar um espaço de nomes, a VM recebe o espaço de nomes default. Os outros objetos nesta secção, como VirtualMachineInstance, estão todos associados ao espaço de nomes da VM correspondente.

As informações de estado e configuração dos seguintes objetos encontram-se em kubectlCommands/VM_NAMESPACE no instantâneo gerado. Se não tiver definido um espaço de nomes específico para a sua VM, as informações encontram-se em kubectlCommands/default:

  • VirtualMachine
  • VirtualMachineInstance
  • VirtualMachineDisk
  • GuestEnvironmentData
  • VirtualMachineAccessRequest
  • VirtualMachinePasswordResetRequest

Objetos que não têm espaço de nomes

Os seguintes objetos não têm espaço de nomes, pelo que as respetivas informações correspondentes estão localizadas diretamente em kubectlCommands no resumo gerado:

  • VMRuntime
  • DataVolume
  • CDI
  • GPUAllocation

Use um ficheiro de configuração de instantâneo para capturar apenas os detalhes da VM

Se estiver a diagnosticar problemas especificamente para VMs, pode usar um ficheiro de configuração de instantâneo para restringir as informações recolhidas apenas a detalhes relacionados com a VM e personalizar as informações da VM recolhidas.

O ficheiro de configuração de instantâneo seguinte ilustra como pode criar um instantâneo específico da VM. Pode incluir comandos adicionais para recolher mais informações para a sua análise rápida.

---
kubectlCommands:
- commands:
    - kubectl get vm -o wide
    - kubectl get vmi -o wide
    - kubectl get gvm -o wide
    - kubectl get vm -o yaml
    - kubectl get vmi -o yaml
    - kubectl get gvm -o yaml
    - kubectl describe vm
    - kubectl describe vmi
    - kubectl describe gvm
  namespaces:
    - .*
- commands:
    - kubectl get virtualmachinetype -o wide
    - kubectl get virtualmachinedisk -o wide
    - kubectl get virtualmachinetype -o yaml
    - kubectl get virtualmachinedisk -o yaml
    - kubectl describe virtualmachinetype
    - kubectl describe virtualmachinedisk
  namespaces:
    - vm-system

Para mais informações sobre a utilização de ficheiros de configuração de capturas instantâneas, consulte a secção Capturas instantâneas personalizadas neste documento.

O que se segue?

Se precisar de assistência adicional, contacte o apoio ao cliente do Google Cloud. Também pode consultar o artigo Receber apoio técnico para mais informações sobre recursos de apoio técnico, incluindo o seguinte:

  • Requisitos para abrir um registo de apoio ao cliente.
  • Ferramentas para ajudar a resolver problemas, como a configuração do ambiente, os registos e as métricas.
  • Componentes suportados.