Para usar o PowerShell para coleta de logs, execute o Send-DiagnosticData
cmdlet de qualquer nó dentro do cluster HCI do Azure Stack. Este cmdlet copia temporariamente os logs localmente. Os logs copiados são analisados, enviados para a Microsoft e, em seguida, excluídos do seu sistema.
Aqui estão alguns pontos importantes a serem considerados ao coletar logs usando o PowerShell:
- O tempo de conclusão do
Send-DiagnosticData
cmdlet varia dependendo de fatores, como as funções para as quais os logs estão sendo coletados, a duração especificada e o número de nós em seu ambiente HCI do Azure Stack.
- Se você não especificar nenhum parâmetro, o
Send-DiagnosticData
cmdlet coletará dados de todos os nós para a duração de uma hora anterior.
Aqui está a sintaxe de Send-DiagnosticData
:
Send-DiagnosticData [[-FilterByRole] <string[]>] [[-FromDate] <datetime>] [[-ToDate] <datetime>] [[-CollectSddc] <bool>] [<CommonParameters>]
Para obter informações de referência sobre Send-DiagnosticData
o , consulte a seção de Send-DiagnosticData
referência de comando mais adiante neste artigo.
Exemplos e exemplos de saídas
Aqui estão alguns comandos de exemplo com saídas de exemplo que mostram como usar o Send-DiagnosticData
cmdlet com parâmetros diferentes.
Enviar dados de diagnóstico com filtragem de data
Neste exemplo, você envia dados de diagnóstico com filtragem de data para arquivos de log das últimas duas horas:
Send-DiagnosticData -FromDate (Get-Date).AddHours(-2) -ToDate (Get-Date)
Aqui está uma saída de exemplo deste comando:
PS C:\CloudDeployment\logs> Send-DiagnosticData -FromDate (Get-Date).AddHours(-2) -ToDate (Get-Date)
Converting FromDate and ToDate to UTC
FromDate in UTC is now 12/04/2023 19:14:18. ToDate in UTC is now 12/04/2023 21:14:18
The correlation Id is <Correlation-ID>. This is used to query for this log collection in the diagnostic pipeline.
Provide the below information to the customer support engineer working on your case.
AEORegion: eastus
AEODeviceARMResourceUri: /Subscriptions/<Subscription-ID>/resourceGroups/EDGECI-REGISTRATION/providers/Microsoft.AzureStackHCI/clusters/<cluster-name>
AEOClusterNodeArcResourceUri: /subscriptions/<Subscription-ID>/resourceGroups/EDGECI-REGISTRATION/providers/Microsoft.HybridCompute/machines/<v-host-name>
CorrelationId: <Correlation-ID>
Observability Agent is running.
Successfully submitted on-demand. Log collection Job Id: <Job-ID>. This is used to track the log collection with Get-LogCollectionHistory.
Current log collection status: Running
Waiting for log collection to complete...
==== CUT ==================== CUT =======
Log collection ended with status: Succeeded
PS C:\CloudDeployment\logs>
Enviar dados de diagnóstico para funções especificadas
Neste exemplo, você envia dados de diagnóstico com filtragem de função para BareMetal e ECE:
Send-DiagnosticData -FilterByRole BareMetal, ECE –CollectSddc $false
Aqui está uma saída de exemplo deste comando:
PS C:\Users\docsuser> Send-DiagnosticData -FilterByRole BareMetal, ECE –CollectSddc $false
FromDate parameter not specified. Setting to default value 12/04/2023 20:41:21
ToDate parameter not specified. Setting to default value 12/04/2023 21:41:21
Converting FromDate and ToDate to UTC
FromDate in UTC is now 12/04/2023 20:41:21. ToDate in UTC is now 12/04/2023 21:41:21
The correlation Id is <Correlation-ID>. This is used to query for this log collection in the diagnostic pipeline.
Provide the below information to the customer support engineer working on your case.
AEORegion: eastus
AEODeviceARMResourceUri: /Subscriptions/<Subscription-ID>/resourceGroups/EDGECI-REGISTRATION/providers/Microsoft.AzureStackHCI/clusters/cluster-e5c7b2aa9a36490f9567b432a0eb51f1
AEOClusterNodeArcResourceUri: /subscriptions/<Subscription-ID>/resourceGroups/EDGECI-REGISTRATION/providers/Microsoft.HybridCompute/machines/v-Host1
CorrelationId: <Correlation-ID>
Observability Agent is running.
Successfully submitted on-demand. Log collection Job Id: <Job-ID>. This is used to track the log collection with Get-LogCollectionHistory.
Current log collection status: Running
Waiting for log collection to complete...
==== CUT ==================== CUT =======
Log collection ended with status: Succeeded
PS C:\Users\docsuser>
Obter um histórico da coleção de logs
Você pode obter um histórico de todas as coleções de log que você executou. Esse histórico ajuda você a aprender sobre os tipos de coleções de log, os tamanhos das coleções de logs, as horas em que os logs foram coletados e os métodos de coleta de logs.
Para obter um histórico de coleções de log dos últimos 90 dias, digite:
Get-LogCollectionHistory
Aqui está um exemplo de saída do Get-LogCollectionHistory
cmdlet. Os datetime
parâmetros estão no fuso horário UTC.
PS C:\CloudDeployment\logs> Get-LogCollectionHistory
Name Value
---- -----
TimeCollected 9/29/2022 5:08:14 PM +00:00
Status Succeeded
CollectionFromDate 9/29/2022 4:07:57 PM +00:00
CollectionToDate 9/29/2022 5:07:57 PM +00:00
LogCollectionId fdcd94c8-1bd2-4ec6-8612-c92d5abd9a84
Type OnDemand
LogUploadSizeMb 1598
UploadNumberOfFiles 1924
Directory
Location
Error
---------- ---------------------------------------------------------
TimeCollected 9/27/2022 11:57:25 PM +00:00
Status Succeeded
CollectionFromDate 9/27/2022 9:57:16 PM +00:00
CollectionToDate 9/27/2022 11:57:16 PM +00:00
LogCollectionId f3d8dcc6-901e-4c72-a3cc-210055e6f198
Type OnDemand
LogUploadSizeMb 1069
UploadNumberOfFiles 1941
Directory
Location
Error
PS C:\CloudDeployment\logs>
Salvar logs em um compartilhamento de arquivos local
Você pode armazenar logs de diagnóstico em um compartilhamento SMB (Server Message Block) local se tiver problemas de rede ou preferir salvar dados localmente em vez de enviá-los para o Azure.
Siga estas etapas para salvar logs em um compartilhamento local:
Execute o seguinte comando para criar um compartilhamento:
New-SMBShare -Name <share-name> -Path <path-to-share> -FullAccess Users -ChangeAccess 'Server Operators'
Execute os seguintes comandos para criar PSCredentials para o compartilhamento:
$user = "<username>"
$pass = "<password>"
$sec=ConvertTo-SecureString -String $pass -AsPlainText -Force
$shareCredential = New-Object System.Management.Automation.PSCredential ($user, $sec)
Execute o seguinte comando em cada nó do cluster para coletar logs e salvá-los localmente:
Send-DiagnosticData -SaveToPath <path to share> -ShareCredential $shareCredential
Se você tiver conectividade de saída do compartilhamento SMB onde salvou os logs, poderá executar o seguinte comando para enviar os logs para a Microsoft:
Send-DiagnosticData NoLogCollection -SupplementaryLogs <path-to-share> -ShareCredentail $shareCredential
Send-DiagnosticData
referência de comando
Esta seção fornece informações de referência sobre Send-DiagnosticData
, incluindo seus parâmetros, sintaxe e exemplos de uso.
FromDate e ToDate
Esses parâmetros permitem que você colete logs para um período de tempo específico.
Sintaxe
Send-DiagnosticData [[-FilterByRole] <string[]>] [[-FromDate] <datetime>] [[-ToDate] <datetime>] [[-CollectSddc] <bool>] [<CommonParameters>]
Exemplo
$fromDate = Get-Date -Date "11/30/2023 18:35:00"
$toDate = Get-Date -Date "11/30/2023 19:35:00"
Send-DiagnosticData –FromDate $fromDate –ToDate $toDate
Versão de extensão
Todos
FilterByRole
Esse parâmetro permite que você escolha quais logs de funções deseja coletar. Você pode especificar várias funções. Para obter uma lista de funções disponíveis nas quais você pode filtrar logs, consulte Funções disponíveis para filtrar logs.
Sintaxe
Send-DiagnosticData [[-FilterByRole] <string[]>]
Exemplo
Send-DiagnosticData –FilterByRole “ALM” -CollectSddc $false
Versão de extensão
Todos
CollectSddc
Esse parâmetro ajuda a determinar se os logs SDDC (data center definidos por software) devem ser incluídos ou excluídos. Por padrão, os logs SDDC são incluídos. Defina-o como $false se quiser excluí-los. Para obter mais informações sobre como usar ferramentas de diagnóstico SDDC, consulte Coletar dados de diagnóstico para clusters.
Sintaxe
Send-DiagnosticData [-CollectSddc <bool>]
Exemplo
Send-DiagnosticData –CollectSddc $false
Versão de extensão
Todos
BypassObsAgent
Ao ignorar o agente de observabilidade, os logs são coletados somente no nó onde a coleta de logs foi iniciada. Nenhum registro da coleção é mantido na história.
Sintaxe
Send-DiagnosticData [-BypassObsAgent]
Exemplo
Send-DiagnosticData –BypassObsAgent
Versão de extensão
Todos
SaveToPath
Esse parâmetro permite que você salve os logs de diagnóstico em um caminho especificado na máquina host, em vez de transmiti-los para a Microsoft.
Sintaxe
Send-DiagnosticData -SaveToPath <string> [-FilterByRole <string[]>] [-FromDate <datetime>] [-ToDate <datetime>] [-CollectSddc <bool>] [-SupplementaryLogs <string>] [-ShareCredential <pscredential>] [-BypassObsAgent] [<CommonParameters>]
Exemplos
Você pode fornecer um caminho de compartilhamento ou um caminho de saída no host para o SaveToPath
parâmetro.
Send-DiagnosticData –SaveToPath <output path>
Send-DiagnosticData –SaveToPath <share path>
Se você estiver usando um caminho de compartilhamento que não está mapeado, também deverá usar o -ShareCredential
parâmetro.
Send-DiagnosticData –SaveToPath <share path> -ShareCredential <credentials for share path>
Você pode usar SaveToPath
com outros parâmetros, como FilterByRole
, FromDate
, ToDate
, CollectSddc
, SupplementaryLogs
, ShareCredential
e BypassObsAgent
.
Send-DiagnosticData –SaveToPath <output path> -FIlterByRole <role>
Versão de extensão
Versões 1.0.2.0 e superiores
NoLogCollection
O NoLogCollection
parâmetro switch permite enviar um conjunto ad-hoc de logs para a Microsoft. Ao usar esse parâmetro, considere os seguintes detalhes:
- Você pode combinar os
SupplementaryLogs
parâmetros , ShareCredential
e com BypassObsAgent
o NoLogCollection
parâmetro.
- O
SupplementaryLogs
parâmetro é obrigatório ao usar NoLogCollection
o . Ele especifica o caminho para os logs que precisam ser enviados para a Microsoft.
- Você tem a flexibilidade de passar um caminho de compartilhamento ou um caminho de saída no host para o
SupplementaryLogs
parâmetro. Se você estiver usando um caminho de compartilhamento não mapeado, também deverá usar o -ShareCredential
parâmetro.
Sintaxe
Send-DiagnosticData -SupplementaryLogs <string> -NoLogCollection [-ShareCredential <pscredential>] [-BypassObsAgent] [<CommonParameters>]
Exemplos
Utilizar –NoLogCollection
com o parâmetro obrigatório SupplementaryLogs
:
Send-DiagnosticData –NoLogCollection –SupplementaryPath <output path>
Use –NoLogCollection
com o caminho de compartilhamento não mapeado:
Send-DiagnosticData –NoLogCollection –SupplementaryPath <share path>
-ShareCredential <credential to share path>
Versão de extensão
Versões 1.0.2.0 e superiores
Registos Suplementares
O parâmetro SupplementaryLogs permite enviar logs ad-hoc para a Microsoft.
Sintaxe
Você pode usá-lo das seguintes maneiras:
Nesse cenário, com SaveToPath
o , os logs de diagnóstico e os logs ad-hoc são coletados e salvos em um caminho especificado.
Send-DiagnosticData [-SupplementaryLogs <string>] -SaveToPath <path>
Aqui, com NoLogCollection
o , apenas logs ad-hoc são coletados e enviados para a Microsoft. Nenhum log de diagnóstico é coletado.
Send-DiagnosticData -SupplementaryLogs <string> -NoLogCollection
Sem SaveToPath
ou NoLogCollection
. Isso significa que os logs de diagnóstico e os logs ad-hoc são coletados e enviados para a Microsoft.
Send-DiagnosticData [-SupplementaryLogs <string>]
Ao coletar logs de diagnóstico e ad-hoc, você pode usar o SupplementaryLogs
parâmetro com outros parâmetros, como FilterByRole
, FromDate
, ToDate
e CollectSddc
.
Exemplos
Sem SaveToPath
ou NoLogCollection
:
Send-DiagnosticData –SupplementaryLogs <path to adhoc logs to collect>
Com SaveToPath
:
Send-DiagnosticData –SaveToPath <path> -SupplementaryLogs <path to adhoc logs to collect>
Com NoLogCollection
:
Send-DiagnosticData –NoLogCollection –SupplementaryLogs <path to adhoc logs to collect>
Versão de extensão
Versões 1.0.2.0 e superiores
ShareCredential
Esse parâmetro oferece a flexibilidade de coletar logs e salvá-los em um caminho de compartilhamento ou enviar logs diretamente de um caminho de compartilhamento para a Microsoft.
Sintaxe
Salve os logs em um caminho:
Send-DiagnosticData [-ShareCredential <pscredential>] -SaveToPath <path>
Envie logs em um caminho de compartilhamento para a Microsoft:
Send-DiagnosticData [-ShareCredential <pscredential>] -SupplementaryLogs <path> -NoLogCollection;
Exemplos
Salve os logs em um caminho:
Send-DiagnosticData –SaveToPath <share path> -ShareCredential <credential to share path>
Envie logs em um caminho de compartilhamento para a Microsoft:
Send-DiagnosticData –NoLogCollection –SupplementaryLogs <share path> –ShareCredential <credential to the share path>
Versão de extensão
Todos
(Plano de depreciação) ToSMBShare
Esse parâmetro permite que você salve logs em um caminho de saída ou em um caminho de compartilhamento. Se você estava usando um caminho de compartilhamento que não foi mapeado, você precisava usar o ShareCredential
parâmetro também. Como esse parâmetro será removido em versões futuras da extensão, use o -SaveToPath
parâmetro em vez disso.
Sintaxe
Send-DiagnosticData –ToSMBShare –SharePath <path> [-ShareCredential <pscredential>]
Exemplos
Salve os logs em um caminho de saída ou caminho de compartilhamento:
Send-DiagnosticData –ToSMBShare –SharePath <output path or share path>
Salve os logs em um caminho de compartilhamento que não esteja mapeado:
Send-DiagnosticData –ToSMBShare –SharePath <share path> -ShareCredential <credential for the share path>
Versão de extensão
Inicialmente acessível em todas as versões, no entanto, este parâmetro acabará por ser limitado às versões 0.1.42 e anteriores.
(Plano de depreciação) FromSMBShare
Este parâmetro permite enviar logs de um caminho de saída ou caminho de compartilhamento diretamente para a Microsoft. Se você estava usando um caminho de compartilhamento que não foi mapeado, você precisava usar o ShareCredential
parâmetro também. Como esse parâmetro será removido em versões futuras da extensão, use o -NoLogCollection
parâmetro em vez disso.
Sintaxe
Send-DiagnosticData –FromSMBShare –SharePath <path> [-ShareCredential <pscredential>]
Exemplos
Send-DiagnosticData –FromSMBShare –SharePath <output path or share path>
Send-DiagnosticData –FromSMBShare –SharePath <share path>
Versão de extensão
Inicialmente acessível em todas as versões, no entanto, este parâmetro acabará por ser limitado às versões 0.1.42 e anteriores.
(Plano de depreciação) SharePath
O parâmetro SharePath pode ser usado para uma das seguintes finalidades:
- Salve os logs de diagnóstico em um caminho de compartilhamento ou caminho de saída.
- Envie logs para a Microsoft a partir de um caminho de compartilhamento ou caminho de saída. Se você estiver usando um caminho de compartilhamento e o caminho de compartilhamento não estiver mapeado, o
ShareCredential
parâmetro também deverá ser usado.
Como esse parâmetro será removido em versões futuras da extensão, use o –SaveToPath
para salvar logs em um caminho ou –SupplementaryLogs
ao enviar logs ad-hoc para a Microsoft.
Sintaxe
Send-DiagnosticData –ToSMBShare –SharePath <path> [-ShareCredential <pscredential>];
Send-DiagnosticData –FromSMBShare –SharePath <path> [-ShareCredential <pscredential>];
Exemplos
Send-DiagnosticData –ToSMBShare –SharePath <output path or share path>
Send-DiagnosticData –ToSMBShare –SharePath <share path> -ShareCredential <credential for the share path>
Send-DiagnosticData –FromSMBShare –SharePath <output path or share path>
Send-DiagnosticData –FromSMBShare –SharePath <share path>
Versão de extensão
Inicialmente acessível em todas as versões, no entanto, este parâmetro acabará por ser limitado às versões 0.1.42 e anteriores.
Funções disponíveis para filtrar logs
As funções a seguir estão disponíveis para filtragem pelo parâmetro FilterByRole . As funções disponíveis podem ser diferentes em uma versão futura.
Nome da função |
Description |
ALM |
O Gerenciamento do Ciclo de Vida do Aplicativo (ALM) envolve o gerenciamento do desenvolvimento, teste, implantação e manutenção de aplicativos de software. |
ArcAgent |
Um agente que permite o gerenciamento do Windows Server por meio do Azure Arc. Consulte Visão geral do agente do Azure Connected Machine. |
BareMetal |
Função de infraestrutura que permite executar serviços em servidores bare metal sem uma camada de virtualização. Você pode ter acesso total e controle sobre o sistema operacional e hardware. |
CommonInfra |
Coleta logs para componentes comuns da infraestrutura, como rede, armazenamento e segurança. |
DeploymentLogs |
Registra detalhes do processo de implantação, incluindo etapas executadas, erros encontrados e status da operação. |
ECE |
Gerencia fluxos de trabalho do ciclo de vida, incluindo implantação, atualização, adição de nó e substituição de nós. |
Extensão |
Dados relacionados às extensões gerenciadas do Azure. |
FleetDiagnosticsAgent |
Escuta gatilhos de integridade para iniciar a coleta de logs. Esses logs são usados para diagnosticar problemas com o FleetDiagnosticsAgent e a coleta de logs. |
HCICloudService |
Um serviço de nuvem do Azure que fornece a funcionalidade principal para o Azure Stack HCI. Ele combina o poder do Azure com a flexibilidade dos servidores locais. |
DownloadService |
Parte do serviço de infra para baixar conteúdo de atualização. |
Saúde |
Coleta dados de integridade, desempenho e uso de várias fontes, como logs de eventos e contadores de desempenho. |
HostNetwork |
Logs usados para solucionar problemas de ATC de rede, o componente subjacente do sistema operacional usado para configurar a rede de host. |
MOC_ARB |
Pilha de gerenciamento que permite o gerenciamento baseado em nuvem de máquinas virtuais no Azure Stack HCI e no Windows Server. |
N.º |
Informações relacionadas com a infraestrutura de rede. |
ObservabilidadeLogmanTraces |
Coleta logs para os rastreamentos de observabilidade. Esses logs ajudam na solução de problemas com o envio de dados de diagnóstico. |
ObservabilidadeVolume |
Coleta logs para o volume de observabilidade. |
OEMDiagnósticos |
Coleta logs para diagnósticos OEM, que podem ajudar a identificar e resolver problemas com o hardware do servidor, como BIOS, drivers, sensores e muito mais. |
OSUpdateLogs |
Função que coleta logs relacionados a atualizações do sistema operacional em nós HCI do Azure Stack, útil para solucionar problemas relacionados a atualizações. |
RemoteSupportAgent |
Logs que ajudam a solucionar problemas com sessões de suporte remoto, que são usadas para resolver casos de suporte ao cliente. |
TestObservability |
Coleta logs do Test-Observability cmdlet, que é usado para testar se a TelemetryAndDiagnostics extensão está funcionando corretamente. |
URP |
Consiste em logs relacionados aos eventos de UpdateService função e OsUpdate ECE. O Update Service gerencia atualizações para sistemas HCI do Azure Stack. A OsUpdate função ECE é usada para adquirir e instalar atualizações do sistema operacional em máquinas (hosts físicos e InfraVMs) que não fazem parte do cluster durante a implantação, adicionar nó, reparar nó e cenários de atualização de Infra VMs. Traços desses dois componentes fazem parte da URP função. |