Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo explica como coletar logs sob demanda para operações desconectadas para Azure Local usando o módulo do PowerShell. Você aprenderá a fornecer logs para solução de problemas e suporte quando Azure Local opera no modo desconectado.
Sobre a coleta de logs sob demanda
A coleção de logs sob demanda envolve a coleta manual e o envio de logs de diagnóstico para a Microsoft. Esses logs são armazenados em um banco de dados Azure Data Explorer que Suporte da Microsoft pode acessar para ajudar a investigar e resolver seus problemas relatados. Os dados de diagnóstico coletados são mantidos por até 30 dias e gerenciados de acordo com as práticas de privacidade padrão da Microsoft.
A coleta de logs ajuda a diagnosticar e solucionar problemas em operações desconectadas para Azure Local. Use esse recurso para enviar logs para Suporte da Microsoft. Os logs incluem detalhes sobre o ambiente de operações desconectado, como o ponto de extremidade de gerenciamento, o tempo de execução integrado e outros componentes. Durante a coleta de logs, erros podem ocorrer devido a limitações ambientais ou de ferramentas.
Importante
Antes de usar a coleção de logs diretos sob demanda, conclua os pré-requisitos e configure a observabilidade com o Set-ApplianceObservabilityConfiguration cmdlet. Se você ignorar essas etapas, poderá ver um erro.
Pré-requisitos
Antes de configurar a observabilidade para seu dispositivo de Azure Local, verifique se você:
- Implantar Operações Desconectadas para o Azure Local
- Configurar a observabilidade para diagnóstico e suporte
- Tenha espaço em disco suficiente para logs:
- Para a coleção de logs típica: pelo menos 25 GB de espaço livre.
- Para pacotes de log maiores, como logs de sistema:
- Os logs compactados podem exceder 25 GB
- Os logs descompactados exigem mais espaço.
- Como regra, mantenha pelo menos o dobro do tamanho do log compactado disponível. Por exemplo:
- Para um pacote de log compactado de 10 GB, mantenha pelo menos 20 GB livres.
- Para um pacote compactado de 25 GB, mantenha pelo menos 50 GB livres.
Observação
Carregue logs em lotes pequenos para reduzir o tempo de processamento e o uso do disco. Antes de começar, verifique o espaço em disco para evitar falhas devido ao armazenamento baixo.
Workflow
Para coletar logs sob demanda, siga os passos abaixo:
- Pré-requisitos
- Selecione um método de coleção de logs para seu cenário de conectividade
- Coletar registros
- Monitorar a coleção de logs
- Examine os logs localmente ou endê-los para Microsoft
Configurar a observabilidade para diagnóstico e suporte
Recomendamos que você configure a observabilidade para obter a telemetria e os logs para a sua primeira implantação. Isso permite que Azure Local Desconectado se conecte ao Azure por meio do registro do Arc e use uma identidade gerenciada para carregar logs, métricas e telemetria da VM do dispositivo.
Observação
Configuração de observabilidade não se aplica se você planeja operar um sistema desconectado, pois telemetria e diagnóstico exigem conectividade.
Aqui está uma lista de parâmetros necessários:
- Grupo de recursos do Azure: crie um grupo de recursos no Azure para o appliance, como azure-disconnectedoperations.
-
Service Principal Name (SPN): crie um SPN que tenha direitos de
Azure Connected Machine Resource Administratorao grupo de recursos. - Credenciais da Entidade de Serviço: obtenha a ID da entidade de serviço (appId) e o segredo (senha).
- Subscription: identifique sua assinatura Azure.
- ID do locatário: identifique a ID do locatário.
- Região do Azure: especifique a região do Azure (local) para implantação.
-
Provedores de recursos necessários: registre esses provedores de recursos em sua assinatura:
- Microsoft.Compute (para Update Manager e upgrades de extensão)
- Microsoft.AzureArcData (se você usar o SQL habilitado pelo Arc)
- Microsoft. HybridConnectivity
- Microsoft. GuestConfiguration
- Microsoft. HybridCompute
- Conectividade: verifique se o dispositivo pode se conectar a Azure para telemetria e diagnóstico.
Siga estas etapas para configurar a observabilidade para diagnóstico e suporte:
Entre no Azure. Use CLI do Azure ou Azure Cloud Shell e execute este comando:
az loginCrie um grupo de recursos usando o mesmo nome usado em DeviceARMResourceURI. Execute este comando:
az group create -g <ResourceGroupName> -l <AzureRegion>Identifique a nuvem ativa. Execute este comando:
az cloud list -o tableObtenha as IDs de assinatura e de locatário. Execute este comando:
az account showCrie uma entidade de serviço. Substitua <SubscriptionID> pela ID da assinatura e execute este comando:
az ad sp create-for-rbac --name "<SPNName>" --role "Azure Connected Machine Resource Administrator" --scopes /subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroupName>Exemplo de saída:
{ "appId": "<AppId>", "displayName": "<SPNName>", "password": "<RETRACTED>", "tenant": "<RETRACTED>" }Observação
Use o appID como a ID da Entidade de Serviço e a senha como o Segredo da Entidade de Serviço
Defina a configuração de observabilidade. Altere os valores para corresponder aos detalhes do ambiente.
$observabilityConfiguration = New-ApplianceObservabilityConfiguration -ResourceGroupName "azure-disconnectedoperations" -TenantId "<TenantID>" -Location "<Location>" -SubscriptionId "<SubscriptionId>" -ServicePrincipalId "<AppId>" -ServicePrincipalSecret ("<Password>"|ConvertTo-SecureString -AsPlainText -Force) Set-ApplianceObservabilityConfiguration -ObservabilityConfiguration $observabilityConfigurationObservação
Se você quiser configurar a observabilidade como parte de uma implantação de inicialização, poderá passar o
$observabilityConfigurationparâmetro como um parâmetro paraInstall-Appliancee ignorarSet-ApplianceObservabilityConfiguration. Isso simplifica a implantação e ajuda você a obter logs e telemetria como parte da implantação.Verifique se a observabilidade está configurada.
Get-ApplianceObservabilityConfiguration
Cenários com suporte
Há suporte para os seguintes cenários sob demanda para a coleta de logs:
| Cenário para a coleta de logs | Como coletar logs |
|---|---|
| Use a coleta direta de logs sob demanda quando um dispositivo local com operações Azure Local em modo desconectado se conecta à Azure e o ponto de extremidade de gerenciamento para operações desconectadas é acessível. | Para coletar logs, execute o Invoke-ApplianceLogCollection cmdlet. |
| Usar coleta indireta de logs sob demanda quando um dispositivo local usando operações desconectadas para Azure Local não consegue se conectar ao Azure mas ainda pode alcançar o ponto de extremidade de gerenciamento para operações desconectadas. | Iniciar a coleção de logs com o Invoke-AzureLocalDisconnectedLogCollection cmdlet.Depois de executar o Invoke-AzureLocalDisconnectedLogCollection cmdlet, use o Send-DiagnosticData cmdlet para carregar os logs do dispositivo (plano de controle). Use o cmdlet Send-AzStackHciDiagnosticData para carregar logs de nós do host local do Azure. |
| Use a coleta de logs de fallback sob demanda quando o ponto de extremidade de gerenciamento para operações desconectadas não estiver acessível ou as operações de runtime integradas em modo desconectado com a máquina virtual (VM) local do Azure estiverem inativas. | Colete logs depois de desligar a VM do appliance de operações desconectadas, montar e desbloquear os VHDs (discos rígidos virtuais) e copiar os logs usando o cmdlet Copy-DiagnosticData dos VHDs montados para um local definido pelo usuário. Para obter mais informações, consulte a coleção de logs de fallback do dispositivo para operações desconectadas. Use o cmdlet Send-DiagnosticData para enviar manualmente dados de diagnóstico para Microsoft. |
Para obter uma lista de recursos sem suporte no modo desconectado, consulte recursos sem suporte no modo desconectado.
Importante
Não execute o cmdlet Send-DiagnosticData em nós de host local do Azure. As operações desconectadas para o plano de controle do Azure Local gerenciam esses nós. Execute o cmdlet de um computador Windows com conectividade Azure, como seu laptop ou área de trabalho.
Operações desconectadas para Azure Local quando a VM do dispositivo está conectada ao Azure
Quando a VM do dispositivo estiver conectada ao Azure, envie logs do plano de controle diretamente usando o cmdlet Invoke-ApplianceLogCollection. Você não precisa salvá-los localmente. Para os logs dos nós do host, use o cmdlet Invoke-AzureLocalDisconnectedLogCollection para copiar os logs e, em seguida, envie-os à Microsoft usando o cmdlet Send-AzStackDiagnosticData.
O diagrama a seguir mostra os principais componentes da coleção de logs em operações desconectadas para Azure Local quando a VM do dispositivo está conectada ao Azure:
Observação
Para cada implantação, o endereço IP de gerenciamento, o certificado de cliente do endpoint de gerenciamento e a senha do certificado são diferentes. Certifique-se de usar os valores corretos para sua implantação.
Antes de coletar logs em um cenário de operações desconectadas, verifique se você:
Conclua cada um dos pré-requisitos.
Instale o módulo de operações se ele não estiver instalado. Use o
Import-Modulecmdlet e altere o caminho para corresponder à estrutura da pasta.Import-Module "Q:\AzureLocalVHD\OperationsModule\ApplianceFallbackLogging.psm1" -ForceExemplo de saída:
PS C:\Users\administrator.s46r2004\Documents> Import-Module "Q:\AzureLocalVHD\OperationsModule\ApplianceFallbackLogging.psm1" -Force VERBOSE: [2025-03-26 19:49:12Z][Test-RunningRequirements] PSVersionTable: Name Value ---- ----- PSVersion 5.1.26100.2161 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} BuildVersion 10.0.26100.2161 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 VERBOSE: See Readme.md for directions on how to use this module.Depois de copiar o módulo Operações Desconectadas para o caminho da pasta, desbloqueie os arquivos.
Get-ChildItem <disconnected operations module folder path> -Recurse | Unblock-FileObservação
Use Windows PowerShell com permissão de Administrador para executar o upload de log. O PowerShell 7 e o Windows PowerShell ISE não são suportados para carregamento de logs.
Instale o módulo Azure Local necessário para a coleção de logs.
Import-Module "<Azure Local module folder path>\AzureLocal.Orchestration.psd1" -ForceExemplo de saída:
PS C:\Users\administrator.s46r2004\Documents> Import-Module "Q:\AzureLocalVHD\Azurelocal.Orchestration\AzureLocal.Orchestration.psd1" -Force CommandType Name Version Source ----------- ---- ------- ------ Function Invoke-AzureLocalDisconnectedLogCollection 2602.1.... AzureLocal.Orchestration Function Invoke-AzureLocalEnvironmentValidation 2602.1.... AzureLocal.OrchestrationUse operações desconectadas Deploy para Azure Local para o ponto de extremidade de gerenciamento.
Identifique o endereço IP do ponto de extremidade de gerenciamento.
Identifique o certificado do cliente de gerenciamento usado para autenticar com as operações desconectadas do ponto de extremidade de gerenciamento local do Azure.
Configure o contexto do cliente do endpoint de gerenciamento. Execute este script:
# Replace with your actual values $certPassword = Read-Host -AsSecureString "Management endpoint client certificate password" $context = Set-DisconnectedOperationsClientContext -ManagementEndpointClientCertificatePath "<Management Endpoint Client Cert Path>" -ManagementEndpointClientCertificatePassword $certPassword -ManagementEndpointIpAddress "<Management Endpoint IP address>"
Coletar logs do plano de controle. Execute este comando em um sistema que pode acessar a VM do dispositivo (geralmente a mesma Hyper-V host):
Invoke-ApplianceLogCollectionEsse comando coleta logs da VM do dispositivo e os envia diretamente para Microsoft suporte.
Exemplo:
$fromDate = (Get-Date).AddMinutes(-30) $toDate = (Get-Date) $operationId = Invoke-ApplianceLogCollection -FromDate $fromDate -ToDate $toDateExemplo de saída:
PS G:\azurelocal\OperationsModule> $fromDate = (Get-Date).AddMinutes(-30) PS G:\azurelocal\OperationsModule> $toDate = (Get-Date) PS G:\azurelocal\OperationsModule> $operationId = Invoke-ApplianceLogCollection -FromDate $fromDate -ToDate $toDate VERBOSE: [2025-11-13 18:33:26Z][Invoke-ApplianceLogCollection] Get health state with URI: https://169.254.53.25:9443/sysconfig/SystemReadiness VERBOSE: [2025-11-13 18:33:26Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] Executing 'Get health state ...' with timeout 600 seconds ... VERBOSE: [2025-11-13 18:33:26Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] [CHECK][Attempt 0] for task 'Get health state ...' ... VERBOSE: [2025-11-13 18:33:56Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] Task 'Get health state ...' succeeded. VERBOSE: [2025-11-13 18:33:56Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] Executing 'Get system configuration ...' with timeout 600 seconds ... VERBOSE: [2025-11-13 18:33:56Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] [CHECK][Attempt 0] for task 'Get system configuration ...' ... VERBOSE: [2025-11-13 18:34:37Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] Task 'Get system configuration ...' succeeded. VERBOSE: [2025-11-13 18:34:37Z][Invoke-ApplianceLogCollection] Trigger log collections with parameters: https://169.254.53.25:9443/logs/logCollectionJob/default and body { "fromDate": "2025-11-13T18:03:08.4868568Z", "toDate": "2025-11-13T18:33:13.7369896Z" } VERBOSE: [2025-11-13 18:34:37Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] Executing 'Trigger log collection ...' with timeout 600 seconds ... VERBOSE: [2025-11-13 18:34:37Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] [CHECK][Attempt 0] for task 'Trigger log collection ...' ... VERBOSE: [2025-11-13 18:34:37Z][Invoke-ScriptsWithRetry][Invoke-ApplianceLogCollection] Task 'Trigger log collection ...' succeeded. VERBOSE: [2025-11-13 18:34:37Z][Invoke-ApplianceLogCollection] Log collections trigger result: "d5cb5a24-7f35-4fdb-a0a5-f6dbab77a68c"Coletar logs de nós de host.
Invoke-AzureLocalDisconnectedLogCollection -FromDate (Get-Date).AddHours(-2) ` -ToDate (Get-Date) ` -AzureLocalNodeNames @("ALNode01", "ALNode02", "ALNode03") ` -AzureLocalNodeCredential (Get-Credential -UserName "Admin" -Message "Enter Azure Local node admin credentials") ` -SaveToPath "\\fileserver\logshare\AzureLocalLogs" ` -ShareCredential (Get-Credential -UserName "fileuser" -Message "Enter SMB share credentials") -SkipAldoLogCollectionEste comando coleta logs do nó do host, incluindo diagnósticos em nível de sistema e de cluster. Para obter mais informações, consulte Invoke-AzureLocalDisconnectedLogCollection.
Carregue logs de nós de host usando a ferramenta de observabilidade autônoma e executando o comando
Send-AzStackHciDiagnosticData. Para obter mais informações, consulte Obtenha suporte para problemas de implantação local do Azure.
Operações desconectadas para Azure Local quando a VM do dispositivo não está conectada ao Azure
Em ambientes de operações desconectados, você pode coletar logs do plano de controle (dispositivo) e dos nós de host e carregá-los manualmente com uma ferramenta autônoma.
O diagrama a seguir mostra os principais componentes da coleção de logs em operações desconectadas para ambientes Azure Local quando a VM do dispositivo não está conectada a Azure.
Antes de coletar logs em um cenário de operações desconectadas, verifique se você:
Instale o módulo de operações se ele não estiver instalado. Use o
Import-Modulecmdlet e altere o caminho para corresponder à estrutura da pasta.# Replace with your actual values Import-Module "<disconnected operations module folder path>\Azure.Local.DisconnectedOperations.psd1" -ForceExemplo de saída:
PS C:\Users\administrator.s46r2004\Documents> Import-Module "Q:\AzureLocalVHD\OperationsModule\Azure.Local.DisconnectedOperations.psd1" -Force VERBOSE: [2025-03-26 19:49:12Z][Test-RunningRequirements] PSVersionTable: Name Value ---- ----- PSVersion 5.1.26100.2161 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} BuildVersion 10.0.26100.2161 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 VERBOSE: See Readme.md for directions on how to use this module.Instale o módulo Azure Local necessário para a coleção de logs.
Import-Module "<Azure Local module folder path>\AzureLocal.Orchestration.psd1" -ForceExemplo de saída:
PS C:\Users\administrator.s46r2004\Documents> Import-Module "Q:\AzureLocalVHD\Azurelocal.Orchestration\AzureLocal.Orchestration.psd1" -Force CommandType Name Version Source ----------- ---- ------- ------ Function Invoke-AzureLocalDisconnectedLogCollection 2602.1.... AzureLocal.Orchestration Function Invoke-AzureLocalEnvironmentValidation 2602.1.... AzureLocal.OrchestrationImplante operações desconectadas do Azure Local para o seu ponto de extremidade de gerenciamento.
Identifique o endereço IP do ponto de extremidade de gerenciamento.
Identifique o certificado do cliente de gerenciamento usado para autenticar nas operações desconectadas pelo ponto de extremidade de gerenciamento do Azure Local.
Configure o contexto do cliente do endpoint de gerenciamento. Execute este script:
# Replace with your actual values $certPassword = Read-Host -AsSecureString "Management endpoint client certificate password" $context = Set-DisconnectedOperationsClientContext -ManagementEndpointClientCertificatePath "<Management Endpoint Client Cert Path>" -ManagementEndpointClientCertificatePassword $certPassword -ManagementEndpointIpAddress "<Management Endpoint IP address>"
Crie um compartilhamento. Execute este comando:
New-SMBShare -Name `<share-name>` -Path `<path-to-share>` -FullAccess Users -ChangeAccess 'Server Operators'Configure as credenciais para o compartilhamento. Substitua o texto do espaço reservado
<share-name>e<path-to-share>com seus próprios valores e execute este comando:# Replace with your actual values $user = "<username>" $pass = "<password>" $sec=ConvertTo-SecureString -String $pass -AsPlainText -Force $shareCredential = New-Object System.Management.Automation.PSCredential ($user, $sec)Colete os logs do painel de controle e do nó do host. Execute este comando em um sistema que pode acessar a VM do dispositivo (geralmente a mesma Hyper-V host):
Exemplo:
#replace with your actual values Invoke-AzureLocalDisconnectedLogCollection -FromDate (Get-Date).AddHours(-2) ` -ToDate (Get-Date) ` -AzureLocalNodeNames @("ALNode01", "ALNode02", "ALNode03") ` -AzureLocalNodeCredential (Get-Credential -UserName "Admin" -Message "Enter Azure Local node admin credentials") ` -SaveToPath "\\fileserver\logshare\AzureLocalLogs" ` -ShareCredential (Get-Credential -UserName "fileuser" -Message "Enter SMB share credentials")Esse comando também inclui diagnósticos em níveis de sistema e de cluster. Para obter mais informações, consulte Invoke-AzureLocalDisconnectedLogCollection.
Após a coleta, examine os logs localmente ou carregue-os para a Microsoft usando a ferramenta de observação independente . Há empacotadores específicos do produto em torno de Microsoft.AzureStack.Observability.Standalone.
Quando você coleta logs usando
Invoke-AzureLocalDisconnectedLogCollection, os logs dos nós hospedeiros e do dispositivo são salvos em subpastas separadas na mesma<SaveToPath>localização.Observação
Esses cmdlets devem ser carregados utilizando outros cmdlets.
Locais de log e comandos de upload:
Logs do dispositivo:
# Logs from disconnected operations appliance for Azure Local infrastructure <SaveToPath>\ALDOCarregar logs coletados da appliance VM usando o cmdlet
Send-DiagnosticDatadas operações offline para o módulo do PowerShell Local do Azure.Logs de nó de host (nós de cluster):
# Logs from Azure Local host nodes <SaveToPath>\AzureLocalCarregue os logs coletados dos nós de host do Azure Local usando o cmdlet
Send-AzStackHciDiagnosticData. Para obter mais informações, consulte Get support for Azure Local deployment issues.
Opcional. Se o
Send-DiagnosticDatacomando falhar ou for interrompido, use oClear-DiagnosticPipelinecmdlet.
Métodos de coleção de logs
Coleção direta (conectada a Azure)
Quando o aplicativo puder se conectar ao Azure e o ponto de extremidade de gerenciamento estiver acessível, use o cmdlet Invoke-ApplianceLogCollection.
O cmdlet permite que você especifique um intervalo de tempo para a coleção de logs. Execute esse cmdlet a partir de um host que tenha o módulo do PowerShell necessário importado e que possa acessar o ponto de extremidade de gerenciamento do appliance.
Para obter mais informações, consulte Operações desconectadas para o Azure Local quando a VM do appliance está conectada ao Azure.
Coleção indireta (desconectada do Azure, endpoint acessível)
Quando o appliance não consegue se conectar ao Azure mas pode alcançar o endpoint de gerenciamento, use Invoke-AzureLocalDisconnectedLogCollection cmdlet. Em seguida, carregue os logs com o cmdlet Send-DiagnosticData.
Para obter mais informações, consulte Operações desconectadas no Azure Local quando a VM do dispositivo não está conectada ao Azure.
Coleção fallback (ponto de extremidade não acessível, VM do dispositivo inoperante)
Quando o ponto de extremidade de gerenciamento está indisponível ou a VM do dispositivo está offline:
- Desligue a VM do dispositivo, monte e desbloqueie VHDs, copie os logs usando o
Copy-DiagnosticDatacmdlet. - Carregue logs manualmente com
Send-DiagnosticDatacmdlet.
Para obter mais informações sobre a coleta de fallback, consulte coleta de registros de fallback de dispositivos para operações desconectadas.
Invoke-AzureLocalDisconnectedLogCollection
Quando o dispositivo de VM está conectado, esse comando coleta todos os logs do nó do host. Quando desconectado, ele coleta logs do nó do host e do dispositivo de VM.
Este cmdlet:
- Está disponível quando a extensão de telemetria e diagnóstico é instalada.
- Fornece dados de diagnóstico detalhados para ajudá-lo a solucionar problemas.
Capacidades:
- Coleta logs complementares e específicos de função e logs opcionais do Data Center Definido pelo Software
- Filtra logs por função, intervalo de datas ou tipo de log.
- É executado somente no nó em que você executa o comando e ignora os agentes de observabilidade.
- Salva logs localmente somente quando você usa o
-SaveToPathparâmetro.- Os logs do dispositivo são salvos em
<SaveToPath>\ALDO. - Os logs do nó do host são salvos em
<SaveToPath>\AzureLocal.
- Os logs do dispositivo são salvos em
- Usa o parâmetro
SkipAldoLogCollectionpara coletar logs somente dos nós de host local do Azure e ignorar o plano de controle de operações desconectadas. - Dá suporte a credenciais seguras para salvar logs em um compartilhamento de rede.
Send-DiagnosticData
O cmdlet Send-DiagnosticData permite enviar logs para o suporte da Microsoft por meio do pipeline independente.
Este cmdlet requer:
- Detalhes da assinatura: ResourceGroupName, SubscriptionId, TenantId e RegistrationRegion.
- Credenciais: por meio da entrada manual ou fornecendo o principal do serviço e a senha apropriados.
- Executa automaticamente a desinstalação e a limpeza de artefatos após o sucesso.
Revise a seção Configurar a observabilidade para diagnóstico e suporte para as etapas de criação do grupo de recursos e do principal do serviço necessárias para carregar logs.
O pipeline autônomo:
- Conecta seu computador host a Azure.
- Direciona todos os logs em uma pasta que você forneceu.
- Envia-os ao suporte da Microsoft.
- Se o upload falhar, o cmdlet tentará até três vezes e mostrará os resultados quando concluído.
Observação
Execute Send-DiagnosticData em um computador Windows conectado à Internet.
- Você não pode executar esse cmdlet em hosts Azure Local porque eles não podem usar Azure como o plano de controle Arc quando as operações desconectadas são configuradas.
- Quando você executa o cmdlet, a máquina usa o registro Arc para carregar dados para o suporte da Microsoft.
-
RegistrationRegion é o mesmo que Local em
ObservabilityConfiguration.
-
RegistrationRegion é o mesmo que Local em
Use esse método quando você não puder coletar logs diretamente da VM do dispositivo, por exemplo:
- A VM do dispositivo é desconectada do Azure.
- O ponto de extremidade de gerenciamento não está acessível.
Exemplos de cmdlet Send-DiagnosticData
Aqui estão alguns exemplos de como usar o Send-DiagnosticData cmdlet.
Para importar o módulo, execute este comando:
Import-Module "<disconnected operations module folder path>" -Force Send-DiagnosticData -ResourceGroupName <String> -SubscriptionId <String> -TenantId <String> [-RegistrationWithDeviceCode] -RegistrationRegion <String> [-Cloud <String>] -DiagnosticLogPath <String> [-ObsRootFolderPath <String>] [-StampId <Guid>] [<CommonParameters>]Para entrar manualmente usando um código do dispositivo, execute este comando:
Send-DiagnosticData -ResourceGroupName <String> -SubscriptionId <String> -TenantId <String> [-RegistrationWithDeviceCode] -RegistrationRegion <String> [-Cloud <String>] -DiagnosticLogPath <String> [-ObsRootFolderPath <String>] [-StampId <Guid>] [<CommonParameters>]Para usar as credenciais do principal de serviço, execute este comando:
Send-DiagnosticData -ResourceGroupName <String> -SubscriptionId <String> -TenantId <String> -RegistrationWithCredential <PSCredential> -RegistrationRegion <String> [-Cloud <String>] -DiagnosticLogPath <String> [-ObsRootFolderPath <String>] [-StampId <Guid>] [<CommonParameters>]
Clear-DiagnosticPipeline
Se Send-DiagnosticData a execução falhar ou for interrompida devido a uma instalação parcial, configuração incorreta ou cancelamento com Ctrl+C, use o Clear-DiagnosticPipeline Cmdlet para limpar ou remover o pipeline.
Este cmdlet:
- É necessário somente quando a limpeza automática falha ou é interrompida.
- Usa o mesmo método de autenticação que a chamada original
Send-DiagnosticDatapara desinstalação.
Observação
Se você tiver um agente do Arc for Server conectado antes de executar Send-DiagnosticData, use o -SkipArcForServer parâmetro para preservar sua conexão do Arc pré-existente.
Clear-DiagnosticPipeline - exemplos de cmdlet
Métodos de autenticação com suporte:
Autenticação de código do dispositivo:
Clear-DiagnosticPipeline ` -SubscriptionId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -TenantId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"PassThrough utilizando o contexto existente do Azure
Clear-DiagnosticPipeline -PassThroughCredenciais da Entidade de Serviço:
Clear-DiagnosticPipeline -RegistrationWithCredential $credential
Opções disponíveis:
Preservar a conexão pré-existente do agente Arc:
Clear-DiagnosticPipeline ` -SubscriptionId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -TenantId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -SkipArcForServerIgnore a desinstalação e remova os artefatos restantes. A autenticação não é necessária porque nenhuma desinstalação é iniciada:
Clear-DiagnosticPipeline -SkipUninstall
Monitorar a coleção de logs
Use esses comandos para monitorar a coleção de logs.
Get-ApplianceLogCollectionJobStatus
Verifique o status do trabalho de coleta de logs com este cmdlet.
Get-ApplianceLogCollectionJobStatus -OperationId $OperationId
Exemplo de saída:
PS C:\Users\administrator.s46r2004\Documents> Get-ApplianceLogCollectionJobStatus -OperationId $operationId
VERBOSE: [2023-04-09 22:35:29Z] [Invoke-ScriptsWithRetry] Executing 'Get log collection job status ...' with timeout 600 seconds ...
VERBOSE: [2023-04-09 22:35:29Z] [Invoke-ScriptsWithRetry] [CHECK] [Attempt 0] for task 'Get log collection job status ...' ...
VERBOSE: [2023-04-09 22:35:29Z] [Invoke-ScriptsWithRetry] Task 'Get log collection job status ...' succeeded.
StatusRecord
@{Instance Id=<Instance Id>; State=Running; StartTime=0001-01-01T00:00:00; EndTime=0001-01-01T00:00:00}
Get-ApplianceLogCollectionHistory
Obtenha o histórico da coleção de logs com este cmdlet. O parâmetro FromDate de entrada usa o tipo DateTime e define a hora de início da janela de pesquisa de histórico. Se você não especificar o FromDate, o cmdlet pesquisará nas últimas três horas.
Get-ApplianceLogCollectionHistory -FromDate ((Get-Date).AddHours(-5))
Exemplo de saída:
PS G:\azurelocal\OperationsModule> Get-ApplianceLogCollectionHistory -FromDate ((Get-Date).AddHours(-5))
VERBOSE: [2025-10-17 05:16:14Z][Invoke-ScriptsWithRetry][Get-ApplianceLogCollectionHistory] Executing 'Get log collection job history ...' with timeout 600 seconds ...
VERBOSE: [2025-10-17 05:16:14Z][Invoke-ScriptsWithRetry][Get-ApplianceLogCollectionHistory] [CHECK][Attempt 0] for task 'Get log collection job history ...' ...
VERBOSE: [2025-10-17 05:16:14Z][Invoke-ScriptsWithRetry][Get-ApplianceLogCollectionHistory] Task 'Get log collection job history ...' succeeded.
Name : b4cffa08-6eb8-4700-a29e-6b5f08824c87
OperationId : b4cffa08-6eb8-4700-a29e-6b5f08824c87
CorrelationId : aaaa0000-bb11-2222-33cc-444444dddddd
State : Succeeded
CollectionTime : 2025-10-17T01:13:00.273+00:00
CollectionEndTime : 2025-10-17T02:07:52.069+00:00
FromDate : 2025-10-17T00:39:40.448+00:00
ToDate : 2025-10-17T01:09:40.453+00:00
Distributed : True
JobType : OnDemand
StorageKind : Azure
Reason : User initiated
Error : @{Code=0}
UploadDetails : @{UploadStartTime=2025-10-17T01:13:00.273+00:00; UploadSizeInMb=6982; UploadNumberOfFiles=710}
Get-ApplianceInstanceConfiguration
Obtenha a configuração da instância do dispositivo, incluindo a ID do selo e a ID do recurso (DeviceARMResourceUri), com esse cmdlet.
$stampId = (Get-ApplianceInstanceConfiguration).StampId
Exemplo de saída:
PS G:\azurelocal\> Get-ApplianceInstanceConfiguration
VERBOSE: [2025-08-06 00:00:35Z][Invoke-ScriptsWithRetry][Get-ApplianceInstanceConfiguration] Executing 'Retrieving system configuration ...' with timeout 300 seconds ...
VERBOSE: [2025-08-06 00:00:35Z][Invoke-ScriptsWithRetry][Get-ApplianceInstanceConfiguration] [CHECK][Attempt 0] for task 'Retrieving system configuration ...' ...
VERBOSE: [2025-08-06 00:00:35Z][`ScriptBlock`] Getting system configuration from https://</IP address>:9443/sysconfig/SystemConfiguration
VERBOSE: [2025-08-06 00:00:35Z][Invoke-ScriptsWithRetry][Get-ApplianceInstanceConfiguration] Task 'Retrieving system configuration ...' succeeded.
IsAutomaticUpdatePreparation :
ExternalTimeServers :
IsTelemetryOptOut : False
ExternalDomainSuffix : autonomous.cloud.private
ImageVersion : 7.1064750419.18210
IngressNICPrefixLength : 24
DeviceARMResourceUri : /subscriptions/<Subcription ID>/resourceGroups/<Resource group>/providers/Microsoft.Edge/winfields/7dfd0b
ConnectionIntent : Connected
StampId : <Stamp ID>
IngressNICIPAddress : 10.0.50.4
DnsForwarderIpAddress : 10.10.240.23
IngressNICDefaultGateway : 10.0.50.1
Considerações de segurança
Ao coletar logs de diagnóstico em ambientes isolados, você deve entender as proteções de segurança e privacidade incorporadas a esse processo. As considerações a seguir ajudam a garantir que seus dados de diagnóstico permaneçam seguros enquanto ainda fornecem Microsoft com as informações necessárias para suporte efetivo.
- Em ambientes isolados, use esse método para obter e enviar logs de diagnóstico para a Microsoft.
- Os logs não são enviados automaticamente, a menos que você os defina claramente para serem enviados.
- Os logs podem ser salvos localmente e revisados antes do compartilhamento.
- Os logs podem conter metadados operacionais confidenciais, mas não incluem dados pessoais por padrão.
- Microsoft não mantém o acesso aos logs, a menos que os clientes os compartilhem diretamente.
Se sua organização impedir que o nó afetado se conecte diretamente à Internet, siga estas etapas:
- Para armazenar logs localmente, use a opção
-SaveToPath. - Mova os logs para uma VM ou sistema separado que possa se conectar à Internet.
- Para carregar logs para Microsoft por meio de canais de suporte seguros, use esse sistema.
Problemas comuns
Formato da conta para cobrança indireta:
- Usar Domínio\Nome de usuário ao executar
Invoke-AzureLocalDisconnectedLogCollection. - Se você omitir o domínio ou usar um nome de usuário incorreto, a operação de cópia para o compartilhamento falhará com um erro de acesso negado.
- Usar Domínio\Nome de usuário ao executar
Execução do Send-DiagnosticData:
- Deve ser executado em um computador Windows que tenha acesso direto à Internet para Azure.
- Não execute em sistemas habilitados para Arc ou no appliance que atua como o plano de controle Arc.
Copy-DiagnosticData execução:
- Deve ser executado no host Hyper-V que hospeda sua VM Azure Local desconectada.
Requisitos de função:
- As funções necessárias variam de acordo com o cenário.
- Para determinar as funções apropriadas, use o
get-helpcmdlet ou trabalhe com seu contato de suporte.
Execução incorreta de comandos:
- A coleta de logs falhará se os comandos forem executados em:
- Nós que não são parte da infraestrutura de hospedagem local do Azure.
- Computadores externos (por exemplo, laptops pessoais) que não hospedam as VMs de dispositivo necessárias no mesmo host Hyper-V.
- A coleta de logs falhará se os comandos forem executados em:
Uso da ferramenta de observabilidade:
- Execute a ferramenta de observabilidade autônoma no Windows Server.
- Ambientes sem suporte exigem configuração manual extra.
Recursos sem suporte no modo desconectado
Esses recursos não têm suporte no modo desconectado.
- Suporte remoto.
- Coleta de logs baseada em portal.
- Métricas e streaming de telemetria.
Conteúdo relacionado
- Saiba como e quando usar a coleção de logs de fallback do dispositivo.
Esse recurso só está disponível no Azure Local 2602 ou posterior.