Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A lista a seguir mostra os nós do provedor de serviços de configuração do DiagnosticLog:
- ./Vendor/MSFT/DiagnosticLog
DeviceStateData
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/DeviceStateData
Nó raiz de todos os tipos de dados de estado do dispositivo que o CSP expõe.
A funcionalidade DeviceStateData no CSP DiagnosticLog fornece informações adicionais do dispositivo.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
DeviceStateData/MdmConfiguration
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1607 [10.0.14393] e posterior |
./Vendor/MSFT/DiagnosticLog/DeviceStateData/MdmConfiguration
Esse nó é para disparar o ajuste dos dados de estado do Gerenciamento de Dispositivos com "SNAP".
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Exec, obter |
Exemplo:
<?xml version="1.0"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Exec>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DiagnosticLog/DeviceStateData/MdmConfiguration</LocURI>
</Target>
<Meta>
<Format xmlns="syncml:metinf">chr</Format>
</Meta>
<Data>SNAP</Data>
</Item>
</Exec>
<Final/>
</SyncBody>
</SyncML>
DiagnosticArchive
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/DiagnosticArchive
Nó raiz para definição e coleta de arquivos.
A funcionalidade DiagnosticArchive dentro do CSP DiagnosticLog é usada para acionar dispositivos para coletar dados de solução de problemas em um arquivo zip e carregar esse arquivo morto no armazenamento em nuvem.
O DiagnosticArchive foi projetado para cenários de solução de problemas ad hoc, como um administrador de TI investigando uma falha de instalação do aplicativo usando uma coleção de eventos de log de eventos, valores do Registro e arquivos de log do aplicativo ou do sistema operacional.
Observação
DiagnosticArchive é uma opção de proteção de "vidro" para solução de problemas de dispositivo. Dados de diagnóstico, como arquivos de log, podem chegar a muitos gigabytes. Coletar, transferir e armazenar grandes quantidades de dados pode sobrecarregar o dispositivo do usuário, a rede e o armazenamento em nuvem. Os servidores de gerenciamento que invocam DiagnosticArchive devem tomar cuidado para minimizar a frequência e o escopo da coleta de dados.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
DiagnosticArchive/ArchiveDefinition
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/DiagnosticArchive/ArchiveDefinition
A ação Executar para este nó aceita um Collection trecho XML (como uma cadeia de caracteres) descrevendo quais dados coletar e onde carregá-los. Os resultados são compactados e carregados para o SasURL especificado. O formato de nome de arquivo compactado é DiagLogs-{ComputerName}-YYYYMMDDTHHMMSSZ.zip.
Com o Windows 10 KB5011543 e o Windows 11 KB5011563, há suporte adicional para um elemento extra que determinará se o arquivo de saída gerado pelo CSP é uma estrutura de pastas nivelada, em vez de ter pastas individuais para cada diretiva no XML. O exemplo a seguir mostra um Collection XML:
<Collection>
<!--NOTE: The value shown here is an example only, for more information see the ID documentation which follows the example -->
<ID>f1e20cb4-9789-4f6b-8f6a-766989764c6d</ID>
<!--NOTE: The value shown here is an example only, for more information see the SasUrl documentation which follows the example -->
<SasUrl><![CDATA[https://myaccount.blob.core.windows.net/mycontainer?sp=aw&st=2020-07-01T23:02:07Z&se=2020-07-02T23:02:07Z&sv=2019-10-10&sr=c&sig=wx9%2FhwrczAI0nZL7zl%2BhfZVfOBvboTAnrGYfjlO%2FRFA%3D]]></SasUrl>
<RegistryKey>HKLM\Software\Policies</RegistryKey>
<FoldersFiles>%ProgramData%\Microsoft\DiagnosticLogCSP\Collectors\*.etl</FoldersFiles>
<Command>%windir%\system32\ipconfig.exe /all</Command>
<Command>%windir%\system32\mdmdiagnosticstool.exe -out %ProgramData%\temp\</Command>
<FoldersFiles>%ProgramData%\temp\*.*</FoldersFiles>
<Events>Application</Events>
<OutputFileFormat>Flattened</OutputFileFormat>
</Collection>
O XML deve incluir os seguintes elementos dentro do Collection elemento:
- ID: o valor de ID identifica exclusivamente essa solicitação de coleta de dados. Para evitar a repetição acidental da coleta de dados, o CSP ignora as invocações Set ou Execute subsequentes com o mesmo valor de ID. O CSP espera que o valor seja preenchido quando a solicitação é recebida, portanto, ele deve ser gerado pelo administrador de TI ou pelo servidor de gerenciamento.
-
SasUrl: o valor SasUrl é o URI de destino para o qual o CSP carrega o arquivo zip que contém os dados coletados. É responsabilidade do servidor de gerenciamento provisionar o armazenamento de forma que o servidor de armazenamento aceite o HTTP PUT do dispositivo para essa URL. Por exemplo, o serviço de gerenciamento de dispositivos pode:
- Provisione o armazenamento em nuvem acessível pelo dispositivo de destino, como um contêiner de armazenamento de blobs do Microsoft Azure
- Gerar um URL de assinatura de acesso compartilhado que concede ao possuidor (o dispositivo de destino) acesso de gravação limitado por tempo ao contêiner de armazenamento
- Passe esse valor para o CSP no dispositivo de destino por meio do
CollectionXML como oSasUrlvalor.
Além disso, o XML pode incluir uma ou mais diretivas de coleta de dados, que podem incluir qualquer uma das seguintes:
RegistryKey: exporta todos os nomes e valores de chave em um determinado caminho (recursivo).
- Valor de entrada esperado: Caminho do Registro, como "HKLM\Software\Policies".
- Formato de saída: cria um arquivo .reg, semelhante à saída de reg.exe comando EXPORT.
- Proteções de privacidade: para habilitar a captura do log de diagnóstico e reduzir o risco de um administrador de TI capturar inadvertidamente documentos gerados pelo usuário, os caminhos do Registro são restritos aos caminhos que estão em HKLM e HKCR.
Eventos: Exporta todos os eventos do log de eventos nomeado do Windows.
- Valor de entrada esperado: um canal de log de eventos nomeado, como "Application" ou "Microsoft-Windows-DeviceGuard/Operational".
- Formato de saída: Cria um arquivo .evtx.
Comandos: Este tipo de diretiva permite a execução de comandos específicos, como ipconfig.exe. Observe que DiagnosticArchive e as diretivas Commands não são uma plataforma de script de uso geral. Esses comandos são permitidos no contexto de DiagnosticArchive para lidar com casos em que informações críticas do dispositivo podem não estar disponíveis por meio de arquivos de log existentes.
- Valor de entrada esperado: a linha de comando completa, incluindo caminho e quaisquer argumentos, como
%windir%\\system32\\ipconfig.exe /all. - Formato de saída: A saída de texto do console do comando é capturada em um arquivo de texto e incluída no arquivo de saída geral. Para comandos que podem gerar saída de arquivo em vez de saída do console, uma diretiva FolderFiles subsequente seria usada para capturar essa saída. O XML de exemplo acima demonstra esse padrão com o parâmetro -out de mdmdiagnosticstool.exe.
- Proteções de privacidade: Para habilitar a captura de dados de diagnóstico e reduzir o risco de um administrador de TI capturar inadvertidamente documentos gerados pelo usuário, somente os seguintes comandos são permitidos:
- %windir%\system32\certutil.exe
- %windir%\system32\dxdiag.exe
- %windir%\system32\gpresult.exe
- %windir%\system32\msinfo32.exe
- %windir%\system32\netsh.exe
- %windir%\system32\nltest.exe
- %windir%\system32\ping.exe
- %windir%\system32\powercfg.exe
- %windir%\system32\w32tm.exe
- %windir%\system32\wpr.exe
- %windir%\system32\dsregcmd.exe
- %windir%\system32\dispdiag.exe
- %windir%\system32\ipconfig.exe
- %windir%\system32\logman.exe
- %windir%\system32\tracelog.exe
- %ProgramFiles%\Windows defender\mpcmdrun.exe
- %windir%\system32\MdmDiagnosticsTool.exe
- %windir%\system32\pnputil.exe
- %windir%\system32\WCPCDeviceReport.exe (somente dispositivos Windows 365 Link)
- Valor de entrada esperado: a linha de comando completa, incluindo caminho e quaisquer argumentos, como
FoldersFiles: captura arquivos de log de um determinado caminho (sem recursão).
- Valor de entrada esperado: Caminho do arquivo com ou sem curingas, como "%windir%\System32" ou "%programfiles%\*.log".
- Proteções de privacidade: para habilitar a captura do log de diagnóstico e reduzir o risco de um administrador de TI capturar inadvertidamente documentos gerados pelo usuário, somente os caminhos nas seguintes raízes são permitidos:
- %PROGRAMFILES%
- %PROGRAMDATA%
- %PÚBLICO%
- % WINDIR%
- %TEMP%
- % de TMP%
- Além disso, somente arquivos com as seguintes extensões são capturados:
- .log
- .txt
- .dmp
- .cab
- .zip
- .xml
- .html
- .evtx
- .etl
OutputFileFormat: nivela a estrutura de pastas, em vez de ter pastas individuais para cada diretiva no XML.
- O valor "Flattened" é o único valor com suporte para o OutputFileFormat. Se o OutputFileFormat estiver ausente no XML ou se for definido explicitamente como algo diferente de Flattened, ele deixará a estrutura de arquivos na estrutura antiga.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Exec, Get, Replace |
DiagnosticArchive/ArchiveResults
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/DiagnosticArchive/ArchiveResults
Extraia os resultados da última execução de arquivo morto.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Obter |
Exemplo:
Um Acessar o URI acima retornará os resultados da coleta de dados para a última solicitação de diagnóstico. Por exemplo:
<SyncML>
<SyncHdr/>
<SyncBody>
<Status>
<CmdID>1</CmdID>
<MsgRef>1</MsgRef>
<CmdRef>0</CmdRef>
<Cmd>SyncHdr</Cmd>
<Data>200</Data>
</Status>
<Status>
<CmdID>2</CmdID>
<MsgRef>1</MsgRef>
<CmdRef>1</CmdRef>
<Cmd>Get</Cmd>
<Data>200</Data>
</Status>
<Results>
<CmdID>3</CmdID>
<MsgRef>1</MsgRef>
<CmdRef>1</CmdRef>
<Item>
<Source>
<LocURI>./Vendor/MSFT/DiagnosticLog/DiagnosticArchive/ArchiveResults</LocURI>
</Source>
<Data>
<Collection HRESULT="0">
<ID>f1e20cb4-9789-4f6b-8f6a-766989764c6d</ID>
<RegistryKey HRESULT="0">HKLM\Software\Policies</RegistryKey>
<FoldersFiles HRESULT="0">C:\ProgramData\Microsoft\DiagnosticLogCSP\Collectors\*.etl</FoldersFiles>
<Command HRESULT="0">%windir%\system32\ipconfig.exe /all</Command>
<Command HRESULT="-2147024637">%windir%\system32\mdmdiagnosticstool.exe -out c:\ProgramData\temp\</Command>
<FoldersFiles HRESULT="0">c:\ProgramData\temp\*.*</FoldersFiles>
<Events HRESULT="0">Application</Events>
</Collection>
</Data>
</Item>
</Results>
<Final/>
</SyncBody>
</SyncML>
Para saber como ler os dados resultantes, consulte Como revisar ArchiveResults.
EtwLog
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog
Nó raiz de todos os tipos de nós de log de eventos gerenciados pelo CSP.
O recurso de log ETW (Rastreamento de Eventos para Windows) do CSP DiagnosticLog é usado para controlar os seguintes tipos de rastreamento de eventos:
O recurso de log do ETW foi projetado para uso avançado e pressupõe a familiaridade dos desenvolvedores com o ETW. Para obter mais informações, consulte Sobre o Rastreamento de Eventos.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
EtwLog/Channels
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Channels
Nó raiz dos nós de "Canal" registrados.
O tipo de rastreamento de eventos exporta dados de eventos de um canal específico. Os usuários podem adicionar ou excluir um nó de canal usando o nome completo, como Microsoft-Windows-AppModel-Runtime/Administração.
O CSP DiagnosticLog mantém um arquivo de log para cada nó de canal e o arquivo de log é substituído se um comando de início for disparado novamente no mesmo nó de canal.
Para cada nó de canal, o usuário pode:
- Exportar dados de eventos do canal para um arquivo de log (.evtx).
- Habilite ou desabilite o canal do serviço Log de Eventos para permitir ou não permitir que dados de evento sejam gravados no canal.
- Especifique uma consulta XPath para filtrar eventos ao exportar os dados de evento de canal.
Para obter mais informações sobre como usar o DiagnosticLog para coletar logs remotamente de um computador ou dispositivo móvel, consulte Coletar logs do MDM.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
EtwLog/Channels/{ChannelName}
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/{ChannelName}
Cada nó dinâmico representa um nó de 'Canal' registrado. O nome do nó deve ser um nome de canal de log de eventos válido do Windows, por exemplo, "Microsoft-Client-Licensing-Platform%2FAdmin". Ao especificar o nome no LocURI, ele deve ser codificado por URL ou será convertido em um URI diferente inesperadamente.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Adicionar, Excluir, Obter |
| Nomeação de Nós Dinâmicos | UniqueName: o nome do nó deve ser um nome de canal de log de eventos válido do Windows, como "Microsoft-Client-Licensing-Platform%2FAdmin" |
Exemplos:
Adicionar um canal
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/Microsoft-Client-Licensing-Platform%2FAdmin</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">node</Format> </Meta> </Item> </Add> <Final/> </SyncBody> </SyncML>Excluir um canal
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/Microsoft-Client-Licensing-Platform%2FAdmin</LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>
EtwLog/Channels/{ChannelName}/Export
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/{ChannelName}/Export
Esse nó é para acionar a exportação de eventos para um arquivo de log do canal de eventos do Windows associado desse nó. A extensão do arquivo de log é .evtx, que é a extensão padrão do log do canal de eventos do Windows. O comando "Get" retorna o nome desse nó.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | null |
| Tipo de acesso | Exec, obter |
Exemplo:
<?xml version="1.0"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Exec>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/Microsoft-Client-Licensing-Platform%2FAdmin/Export</LocURI>
</Target>
</Item>
</Exec>
<Final/>
</SyncBody>
</SyncML>
EtwLog/Channels/{ChannelName}/Filter
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/{ChannelName}/Filter
Esse nó é usado para definir ou obter a cadeia de caracteres de consulta xpath para filtrar os eventos ao exportar o arquivo de log do canal. O valor padrão é cadeia de caracteres vazia.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Obter, Substituir |
| Valor Padrão | "" |
Exemplo:
<?xml version="1.0"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Get>
<CmdID>1</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/Microsoft-Client-Licensing-Platform%2FAdmin/Filter</LocURI>
</Target>
</Item>
</Get>
<Final/>
</SyncBody>
</SyncML>
EtwLog/Channels/{ChannelName}/State
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/{ChannelName}/State
Esse nó é usado para configurar ou obter o estado 'Habilitado' do canal de eventos do Windows associado ao nó no sistema. Defini-lo como "TRUE" habilita o canal; defini-lo como "FALSE" desabilita o canal.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | bool |
| Tipo de acesso | Obter, Substituir |
Valores Permitidos:
| Valor | Descrição |
|---|---|
| true | O canal está habilitado. |
| false | O canal está desabilitado. |
Exemplos:
Obter estado do canal:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/Microsoft-Client-Licensing-Platform%2FAdmin/State</LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>Definir estado do canal:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>2</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Channels/Microsoft-Client-Licensing-Platform%2FAdmin/State</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">bool</Format> </Meta> <Data>false</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>
EtwLog/Collectors
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors
Nó raiz dos nós "Coletores" registrados.
Esse tipo de rastreamento de eventos coleta dados de eventos de uma coleção de provedores ETW registrados. Um coletor de eventos é um contêiner de provedores ETW registrados. Os usuários podem adicionar ou excluir um nó do coletor e registrar ou cancelar o registro de vários provedores neste coletor.
O {CollectorName} deve ser exclusivo dentro do CSP e não deve ser um nome de canal de eventos válido ou um GUID de provedor.
O CSP DiagnosticLog mantém um arquivo de log para cada nó coletor e o arquivo de log é substituído se um comando de início for disparado novamente no mesmo nó coletor.
Para cada nó coletor, o usuário pode:
- Inicie ou pare a sessão com todos os provedores registrados e habilitados.
- Sessão de consulta status.
- Altere o modo de arquivo de log de rastreamento.
- Limite de tamanho do arquivo de log de rastreamento.
As configurações, o modo de arquivo de log e o limite de tamanho do arquivo de log não entram em vigor enquanto a sessão de rastreamento está em andamento. Esses atributos são aplicados quando o usuário interrompe a sessão atual e, em seguida, a inicia novamente para este coletor.
Para cada provedor registrado neste coletor, o usuário pode:
- Especifique palavras-chave para filtrar eventos deste provedor.
- Altere o nível de rastreamento para filtrar eventos deste provedor.
- Habilite ou desabilite o provedor na sessão de rastreamento.
As alterações em State, Keywords e TraceLevel entram em vigor imediatamente enquanto a sessão de rastreamento está em andamento.
Observação
O Microsoft-WindowsPhone-Enterprise-Diagnostics-Provider (GUID - 3da494e4-0fe2-415C-b895-fb5265c5c83b) tem os arquivos de recursos de depuração necessários integrados ao Windows, o que permitirá que os arquivos de logs sejam decodificados no computador remoto. Nenhum outro log pode não ter os recursos de depuração necessários para decodificar.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
Exemplo:
Para obter diagnósticos usando este CSP:
- Especifique um CollectorName para o contêiner dos provedores ETW de destino.
- (Opcional) Defina os parâmetros do arquivo de log e log usando as seguintes opções:
- Indique um ou mais provedores ETW de destino fornecendo seu ProviderGUID para a operação Adicionar de EtwLog/Collectors/CollectorName/Providers/ProviderGUID.
- (Opcional) Defina os parâmetros do arquivo de log e log usando as seguintes opções:
- Inicie a registrar em log usando o comando TraceControl EXECUTE "START".
- Execute ações no dispositivo de destino que gerarão atividade nos arquivos de log.
- Parar o registro em log usando o comando TraceControl EXECUTE "STOP".
- Colete o
%temp%arquivo de log localizado na pasta usando o método Lendo um arquivo de log descrito em FileDownload.
EtwLog/Collectors/{CollectorName}
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}
Cada nó dinâmico representa um nó 'Coletor' registrado. O CSP manterá uma sessão de rastreamento ETW para esse coletor com seu nome usado como um identificador exclusivo. Em um coletor, um provedor ETW válido pode ser registrado e não registrado. A sessão de rastreamento associada do coletor habilitará os provedores registrados nela se o estado do provedor for 'Habilitado'. O estado, o nível de rastreamento e as palavras-chave de cada provedor podem ser controlados separadamente. O nome desse nó não deve ser um nome de canal de eventos válido do Windows. Pode ser um guid de provedor etw, desde que não seja igual a um nome de nó "Provedor" já registrado.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Adicionar, Excluir, Obter |
| Nomeação de Nós Dinâmicos | ServerGeneratedUniqueIdentifier |
Exemplos:
Adicionar um coletor
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">node</Format> </Meta> </Item> </Add> <Final/> </SyncBody> </SyncML>Excluir um coletor
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement</LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>
EtwLog/Collectors/{CollectorName}/LogFileSizeLimitMB
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/LogFileSizeLimitMB
Esse nó é usado para definir ou obter o limite de tamanho do arquivo de log de rastreamento (em megabytes) da sessão de rastreamento associada desse nó coletor. O intervalo de valores é 1~2048. O valor padrão é 4.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Obter, Substituir |
| Valores Permitidos | Gama: [1-2048] |
| Valor Padrão | 4 |
EtwLog/Collectors/{CollectorName}/Providers
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/Providers
Nó raiz de todos os provedores registrados neste nó coletor.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}
Cada nó dinâmico representa um provedor ETW registrado nesse nó coletor. O nome do nó deve ser um GUID de provedor válido.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Adicionar, Excluir, Obter |
| Nomeação de Nós Dinâmicos | UniqueName: o nome do nó deve ser um GUID de provedor válido. |
Exemplos:
Adicionar um provedor:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/Providers/3da494e4-0fe2-415C-b895-fb5265c5c83b</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">node</Format> </Meta> </Item> </Add> <Final/> </SyncBody> </SyncML>Excluir um provedor:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/Providers/3da494e4-0fe2-415C-b895-fb5265c5c83b</LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>
EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}/Keywords
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}/Keywords
Esse nó é usado para configurar ou obter as palavras-chave do provedor de eventos na sessão de rastreio associada desse nó coletor. A cadeia de caracteres tem a forma de dígitos hexadecimais e 16 caracteres de largura. Ele será convertido internamente no tipo de dados ULONGLONG no CSP. O valor padrão é "0", o que significa que todos os eventos desse provedor estão incluídos. Se a sessão de rastreamento associada estiver em andamento, a nova configuração de palavras-chave será aplicada imediatamente; Caso contrário, ela será aplicada da próxima vez que a sessão for iniciada.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Obter, Substituir |
| Valor Padrão | "0" |
Exemplos:
Obter provedor Palavras-chave:
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>1</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/Providers/3da494e4-0fe2-415C-b895-fb5265c5c83b/Keywords </LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>Definir provedor Palavras-chave:
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>4</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/Providers/3da494e4-0fe2-415C-b895-fb5265c5c83b/Keywords </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">chr</Format> <Type>text/plain</Type> </Meta> <Data>12345678FFFFFFFF</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>
EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}/State
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}/State
Esse nó é usado para configurar ou obter o estado do provedor de eventos na sessão de rastreio associada desse nó coletor. Se a sessão de rastreamento não for iniciada, a alteração do valor controlará se o provedor deve ou não ser habilitado quando a sessão é iniciada; Se a sessão de rastreamento já tiver sido iniciada, alterar seu valor causará a habilitação ou desabilitação do provedor na sessão de rastreamento ao vivo. O valor padrão é true.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | bool |
| Tipo de acesso | Obter, Substituir |
| Valor Padrão | true |
Valores Permitidos:
| Valor | Descrição |
|---|---|
| verdadeiro (Padrão) | O provedor está habilitado na sessão de rastreamento. Esse é o padrão. |
| false | O provedor está desabilitado na sessão de rastreamento. |
Exemplo:
Definir estado do provedor:
<?xml version="1.0"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Replace>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/Providers/3da494e4-0fe2-415C-b895-fb5265c5c83b/State</LocURI>
</Target>
<Meta>
<Format xmlns="syncml:metinf">bool</Format>
</Meta>
<Data>false</Data>
</Item>
</Replace>
<Final/>
</SyncBody>
</SyncML>
EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}/TraceLevel
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/Providers/{ProviderGuid}/TraceLevel
Esse nó é usado para definir ou obter o nível de rastreamento desse provedor de eventos na sessão de rastreamento associada desse nó coletor. O valor padrão é 5, que é TRACE_LEVEL_VERBOSE. Se a sessão de rastreamento associada estiver em andamento, a nova configuração de nível de rastreamento será aplicada imediatamente; Caso contrário, ela será aplicada da próxima vez que a sessão for iniciada.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Obter, Substituir |
| Valor Padrão | 5 |
Valores Permitidos:
| Valor | Descrição |
|---|---|
| 1 | TRACE_LEVEL_CRITICAL - Eventos anormais de saída ou término. |
| 2 | TRACE_LEVEL_ERROR - Eventos de erro graves. |
| 3 | TRACE_LEVEL_WARNING - Eventos de aviso, como falhas de alocação. |
| 4 | TRACE_LEVEL_INFORMATION - Eventos que não são de erro, como eventos de entrada ou saída. |
| 5 (Padrão) | TRACE_LEVEL_VERBOSE - Informações detalhadas. |
Exemplo:
Definir provedor TraceLevel:
<?xml version="1.0"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Replace>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/Providers/3da494e4-0fe2-415C-b895-fb5265c5c83b/TraceLevel</LocURI>
</Target>
<Meta>
<Format xmlns="syncml:metinf">int</Format>
</Meta>
<Data>1</Data>
</Item>
</Replace>
<Final/>
</SyncBody>
</SyncML>
EtwLog/Collectors/{CollectorName}/TraceControl
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/TraceControl
Esse nó deve acionar o "início" e a "parada" da sessão de rastreamento associada desse nó coletor. "Get" retorna o nome desse nó.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Exec, obter |
Valores Permitidos:
| Valor | Descrição |
|---|---|
| INICIAR | Inicie o rastreamento de log. |
| STOP | Interrompa o rastreamento de logs. |
Exemplos:
Depois de adicionar uma tarefa de log, você pode iniciar/parar um rastreamento executando um comando Execute nesse nó.
Iniciar o log de rastreamento do coletor:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Exec> <CmdID>2</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/TraceControl</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">chr</Format> </Meta> <Data>START</Data> </Item> </Exec> <Final/> </SyncBody> </SyncML>Interromper o registro em log de rastreamento do coletor:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Exec> <CmdID>2</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/DeviceManagement/TraceControl</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">chr</Format> </Meta> <Data>STOP</Data> </Item> </Exec> <Final/> </SyncBody> </SyncML>
EtwLog/Collectors/{CollectorName}/TraceLogFileMode
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/TraceLogFileMode
Esse nó é usado para configurar ou obter o modo de arquivo de log de rastreamento da sessão de rastreio associada desse nó coletor. Os únicos dois valores permitidos são 1 e 2, que são EVENT_TRACE_FILE_MODE_SEQUENTIAL e EVENT_TRACE_FILE_MODE_CIRCULAR. O valor padrão é 1.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Obter, Substituir |
| Valor Padrão | 1 |
Valores Permitidos:
| Valor | Descrição |
|---|---|
| 1 (padrão) | EVENT_TRACE_FILE_MODE_SEQUENTIAL-Writes eventos para um arquivo de log sequencialmente. Ele é interrompido quando o arquivo atinge seu tamanho máximo. |
| 2 | EVENT_TRACE_FILE_MODE_CIRCULAR-Writes eventos a um arquivo de log. Depois que o arquivo atinge o tamanho máximo, os eventos mais antigos são substituídos por eventos de entrada. |
EtwLog/Collectors/{CollectorName}/TraceStatus
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/EtwLog/Collectors/{CollectorName}/TraceStatus
Esse nó é usado para obter o status da sessão de rastreio associada desse nó coletor. 1 significa "em andamento"; 0 significa "não iniciado ou interrompido".
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Obter |
FileDownload
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload
Nó raiz de todos os nós CSP relacionados ao download do arquivo de log no CSP.
O recurso FileDownload do CSP DiagnosticLog permite que um servidor de gerenciamento extraia dados diretamente do dispositivo. No contexto FileDownload, as funções de cliente e servidor são conceitualmente invertidas, com o servidor de gerenciamento atuando como um cliente para baixar os dados do dispositivo gerenciado.
Ao ler um arquivo de log:
- Enumerar arquivo de log em ./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel.
- Selecione um arquivo de log no resultado da Enumeração.
- Defina BlockSizeKB por limitação de conteúdo do servidor DM.
- Obtenha BlockCount para determinar a solicitação de leitura total.
- Defina BlockIndexToRead para inicializar o ponto de início de leitura.
- Obter BlockData para o bloco de log de upload.
- Aumente BlockIndexToRead.
- Repita as etapas 5 a 7 até BlockIndexToRead == (BlockIndexToRead – 1).
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
FileDownload/DMChannel
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel
Nó raiz de todos os nós de CSP usados para controlar o download de arquivos para o arquivo de log associado gerado pelo registro em log de nós de CSP.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
FileDownload/DMChannel/{FileContext}
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/{FileContext}
Cada nó dinâmico representa um nó 'FileContext' correspondente a um arquivo de log gerado por um dos nós CSP de registro em log (abaixo do nó 'EtwLog'). O nome do nó deve ser o nome de um nó 'Provedor', 'Coletor' ou 'Canal' registrado. O arquivo de log e sua localização serão determinados pelo CSP com base no nome do nó. O download do arquivo é feito dividindo o arquivo de log em vários blocos de tamanho de bloco configurado e, em seguida, enviando os blocos conforme solicitado pelo servidor MDM.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
| Nomeação de Nós Dinâmicos | UniqueName: o nome do nó deve ser o nome de um nó 'Provedor', 'Coletor' ou 'Canal' registrado. |
FileDownload/DMChannel/{FileContext}/BlockCount
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/{FileContext}/BlockCount
Esse nó é usado para obter o número total de blocos do arquivo de log associado. Se o arquivo de log ainda não tiver sido gerado, o valor retornado será -1; Se a sessão de rastreamento estiver em andamento, o valor retornado será -2.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Obter |
Exemplo:
<?xml version="1.0"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Get>
<CmdID>1</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/DeviceManagement/BlockCount</LocURI>
</Target>
</Item>
</Get>
<Final/>
</SyncBody>
</SyncML>
FileDownload/DMChannel/{FileContext}/BlockData
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/{FileContext}/BlockData
Esse nó é usado para obter os dados binários do bloco para o qual o nó "BlockIndexToRead" está apontando.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | b64 |
| Tipo de acesso | Obter |
Exemplo:
<?xml version="1.0"?>
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Get>
<CmdID>1</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/DeviceManagement/BlockData</LocURI>
</Target>
</Item>
</Get>
<Final/>
</SyncBody>
</SyncML>
FileDownload/DMChannel/{FileContext}/BlockIndexToRead
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/{FileContext}/BlockIndexToRead
Esse nó é usado para definir e obter o índice de bloco que aponta para o bloco de dados do nó 'BlockData'. O intervalo de valores é 0~(BlockCount-1).
Exemplo:
Defina BlockIndexToRead em 0:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/DeviceManagement/BlockIndexToRead</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">int</Format> </Meta> <Data>0</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>Defina BlockIndexToRead em 1:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/DeviceManagement/BlockIndexToRead</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">int</Format> </Meta> <Data>1</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Obter, Substituir |
FileDownload/DMChannel/{FileContext}/BlockSizeKB
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/{FileContext}/BlockSizeKB
Este nó é usado para definir ou obter o tamanho do bloco (em Kilobytes) para o download do arquivo de log associado. O intervalo de valores é 1~16. O valor padrão é 4.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Obter, Substituir |
| Valores Permitidos | Gama: [1-16] |
| Valor Padrão | 4 |
Exemplos:
Defina BlockSizeKB:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/DeviceManagement/BlockSizeKB</LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">int</Format> </Meta> <Data>1</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>Obter BlockSizeKB:
<?xml version="1.0"?> <SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>1</CmdID> <Item> <Target> <LocURI>./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/DeviceManagement/BlockSizeKB</LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>
FileDownload/DMChannel/{FileContext}/DataBlocks
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/{FileContext}/DataBlocks
Nó raiz de todos os nós 'BlockNumber' do arquivo de log associado. O número de seus filhos deve ser a contagem total de blocos do arquivo de log. Nenhum nó filho existirá se o valor do nó 'BlockCount' for menor que 0.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
FileDownload/DMChannel/{FileContext}/DataBlocks/{BlockNumber}
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1511 [10.0.10586] e posterior |
./Vendor/MSFT/DiagnosticLog/FileDownload/DMChannel/{FileContext}/DataBlocks/{BlockNumber}
Cada nó dinâmico representa um nó 'BlockNumber'. O nome do nó é um número inteiro igual ao índice do bloco que esse nó representa. Portanto, o nome do nó deve variar de 0 a (BlockCount -1). Ele retorna os dados binários do bloco ao qual esse nó está se referindo.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | b64 |
| Tipo de acesso | Obter |
| Nomeação de Nós Dinâmicos | ClientInventory |
Política
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/Policy
Contém política para configurações de diagnóstico.
Isso pode ser usado para configurar as políticas de log de eventos do Windows, como o tamanho máximo de log.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
Política/Canais
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/Policy/Channels
Contém política para as configurações de canal do Log de Eventos.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Obter |
Policy/Channels/{ChannelName}
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/Policy/Channels/{ChannelName}
Cada nó dinâmico representa um nó de 'Canal' registrado. O nome do nó deve ser um nome de canal de log de eventos válido do Windows, por exemplo, "Microsoft-Client-Licensing-Platform%2FAdmin". Ao especificar o nome no LocURI, ele deve ser codificado por URL ou será convertido em um URI diferente inesperadamente.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | node |
| Tipo de acesso | Adicionar, Excluir, Obter |
| Nomeação de Nós Dinâmicos | UniqueName: o nome do nó deve ser um nome de canal de log de eventos válido do Windows, como Microsoft-Client-Licensing-Platform%2FAdmin. Ao especificar o nome no LocURI, ele deve ser codificado por URL, caso contrário, poderá ser convertido inesperadamente em um URI diferente. |
Exemplos:
Adicionar canal
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>2</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">node</Format> <Type></Type> </Meta> </Item> </Add> <Final/> </SyncBody> </SyncML>Excluir canal
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>3</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName </LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>Obter Canal
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>4</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName </LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>
Policy/Channels/{ChannelName}/ActionWhenFull
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/Policy/Channels/{ChannelName}/ActionWhenFull
Ação a ser tomada quando o arquivo de log atingir o tamanho máximo. "Truncate", "Overwrite", "Arquivo".
Se você desabilitar ou não definir essa configuração de política, o valor configurado localmente será usado como padrão. Cada canal instalado, seja na caixa de entrada ou por ISVs, é responsável por definir sua própria configuração local, e essa configuração pode ser alterada por qualquer administrador. Os valores definidos por meio dessa política substituem, mas não substituem a configuração local.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Adicionar, Excluir, Obter, Substituir |
Valores Permitidos:
| Valor | Descrição |
|---|---|
| Truncar | Quando o arquivo de log atinge seu tamanho máximo de arquivo, novos eventos não são gravados no log e são perdidos. |
| Overwrite | Quando o arquivo de log atinge seu tamanho máximo de arquivo, novos eventos substituem eventos antigos. |
| Archive | Quando o arquivo de log atinge seu tamanho máximo, ele é salvo no local especificado pela configuração de política "Local do Arquivo Morto". Se o valor do local do arquivo não for definido, o novo arquivo será salvo no mesmo diretório que o arquivo de log atual. |
Exemplos:
Adicionar ActionWhenFull
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>14</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/ActionWhenFull </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">chr</Format> <Type>text/plain</Type> </Meta> <Data>Archive</Data> </Item> </Add> <Final/> </SyncBody> </SyncML>Excluir ActionWhenFull
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>15</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/ActionWhenFull </LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>Get ActionWhenFull
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>13</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/ActionWhenFull </LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>Substitua ActionWhenFull
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>16</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/ActionWhenFull </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">chr</Format> <Type>text/plain</Type> </Meta> <Data>Truncate</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>
Política/Canais/{ChannelName}/Habilitado
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/Policy/Channels/{ChannelName}/Enabled
Essa configuração de política especifica se o canal deve ser habilitado ou desabilitado. Defina o valor como TRUE para habilitar e FALSE para desabilitar.
Se você desabilitar ou não definir essa configuração de política, o valor configurado localmente será usado como padrão.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | bool |
| Tipo de acesso | Adicionar, Excluir, Obter, Substituir |
Valores Permitidos:
| Valor | Descrição |
|---|---|
| true | Habilita o canal. |
| false | Desabilita o canal. |
Exemplos:
Adicionar Habilitado
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>18</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/Enabled </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">bool</Format> <Type>text/plain</Type> </Meta> <Data>TRUE</Data> </Item> </Add> <Final/> </SyncBody> </SyncML>Exclusão Habilitada
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>19</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/Enabled </LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>Habilite
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>17</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/Enabled </LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>Substituir Habilitado
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>20</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/Enabled </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">bool</Format> <Type>text/plain</Type> </Meta> <Data>FALSE</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>
Policy/Channels/{ChannelName}/MaximumFileSize
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/Policy/Channels/{ChannelName}/MaximumFileSize
Tamanho máximo do arquivo de log do canal em MB.
- Se você habilitar essa configuração de política, poderá configurar o tamanho máximo do arquivo de log entre 1 megabyte e 2 terabytes em incrementos de megabyte.
- Se você desabilitar ou não definir essa configuração de política, o tamanho máximo do arquivo de log será definido como o valor configurado localmente. Esse valor pode ser alterado pelo administrador local usando a caixa de diálogo Propriedades do Log e o padrão é 1 megabyte.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato | int |
| Tipo de acesso | Adicionar, Excluir, Obter, Substituir |
| Valores Permitidos | Gama: [1-2000000] |
| Valor Padrão | 1 |
Exemplos:
Adicionar MaximumFileSize
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>6</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/MaximumFileSize </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">int</Format> <Type>text/plain</Type> </Meta> <Data>3</Data> </Item> </Add> <Final/> </SyncBody> </SyncML>Excluir MaximumFileSize
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>7</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/MaximumFileSize </LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>Obter MaximumFileSize
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>5</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/MaximumFileSize </LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>Replace MaximumFileSize
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>8</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/MaximumFileSize </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">int</Format> <Type>text/plain</Type> </Meta> <Data>5</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>
Policy/Channels/{ChannelName}/SDDL
| Escopo | Edições | Sistema operacional aplicável |
|---|---|---|
| Dispositivo ✅ Usuário ❌ |
Pro ✅ Corporativo ✅ Educação ✅ Empresa de Internet das Coisas / LTSC Empresa Internet das Coisas ✅ |
✅Windows 10, versão 1903 [10.0.18362] e posterior |
./Vendor/MSFT/DiagnosticLog/Policy/Channels/{ChannelName}/SDDL
Cadeia de caracteres SDDL que controla o acesso ao canal. Para obter mais informações, consulte Tipo complexo ChannelType.
Propriedades da estrutura de descrição:
| Nome da propriedade | Valor de propriedade |
|---|---|
| Formato |
chr (cadeia de caracteres) |
| Tipo de acesso | Adicionar, Excluir, Obter, Substituir |
| Diferenciar maiúsculas de minúsculas | True |
Exemplos:
Adicionar SDDL
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Add> <CmdID>10</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/SDDL </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">chr</Format> <Type>text/plain</Type> </Meta> <Data>YourSDDL</Data> </Item> </Add> <Final/> </SyncBody> </SyncML>Excluir SDDL
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Delete> <CmdID>11</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/SDDL </LocURI> </Target> </Item> </Delete> <Final/> </SyncBody> </SyncML>Obter SDDL
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Get> <CmdID>9</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/SDDL </LocURI> </Target> </Item> </Get> <Final/> </SyncBody> </SyncML>Substituir SDDL
<SyncML xmlns="SYNCML:SYNCML1.2"> <SyncBody> <Replace> <CmdID>12</CmdID> <Item> <Target> <LocURI> ./Vendor/MSFT/DiagnosticLog/Policy/Channels/ChannelName/SDDL </LocURI> </Target> <Meta> <Format xmlns="syncml:metinf">chr</Format> <Type>text/plain</Type> </Meta> <Data>YourNewSDDL</Data> </Item> </Replace> <Final/> </SyncBody> </SyncML>
Comparando FileDownload e DiagnosticArchive
Os recursos FileDownload e DiagnosticArchive podem ser usados para obter dados do dispositivo para o servidor de gerenciamento, mas são otimizados para diferentes fluxos de trabalho.
- O FileDownload permite que o servidor de gerenciamento extraia diretamente dados de rastreamento em nível de byte do dispositivo gerenciado. A transferência de dados ocorre por meio do contexto OMA-DM/SyncML existente. É usado em conjunto com o recurso EtwLogs como parte de um fluxo avançado de monitoramento ou diagnóstico. FileDownlod requer orquestração granular pelo servidor de gerenciamento, mas evita a necessidade de armazenamento em nuvem dedicado.
- DiagnosticArchive permite que o servidor de gerenciamento forneça ao CSP um conjunto completo de instruções como comando único. Com base nessas instruções, o CSP orquestra o trabalho do lado do cliente para empacotar os arquivos de diagnóstico solicitados em um arquivo zip e carregar esse arquivo morto no armazenamento em nuvem. A transferência de dados acontece fora da sessão OMA-DM, por meio de um HTTP PUT.
Como examinar ArchiveResults
O arquivo zip criado e carregado por ArchiveResults contém uma estrutura de pastas como o exemplo a seguir:
PS C:\> dir C:\DiagArchiveExamples\DiagLogs-MYDEVICE-20201202T182748Z
Directory: C:\DiagArchiveExamples\DiagLogs-MYDEVICE-20201202T182748Z
Mode LastWriteTime Length Name
---- ------------- ------ ----
la--- 1/4/2021 2:45 PM 1
la--- 1/4/2021 2:45 PM 2
la--- 12/2/2020 6:27 PM 2701 results.xml
Cada diretiva de coleta de dados do XML original Collection corresponde a uma pasta na saída. Por exemplo, a primeira diretiva foi:
<Collection HRESULT="0">
<RegistryKey HRESULT="0">HKLM\Software\Policies</RegistryKey>
</Collection>
Em seguida, a pasta 1 conterá o arquivo correspondente export.reg .
O results.xml arquivo é o mapa autoritativo para a saída. Inclui um código de status para cada diretiva. A ordem das diretivas no arquivo corresponde à ordem das pastas de saída. Usar results.xml o administrador pode ver quais dados foram coletados, quais falhas podem ter ocorrido e quais pastas contêm qual saída. Por exemplo, o conteúdo a seguir results.xml indica que a exportação do Registro de HKLM\Software\Policies foi bem-sucedida e os dados podem ser encontrados na pasta 1. Isso também indica que o netsh.exe wlan show profiles comando falhou.
<Collection HRESULT="0">
<ID>268b3056-8c15-47c6-a1bd-4bc257aef7b2</ID>
<RegistryKey HRESULT="0">HKLM\Software\Policies</RegistryKey>
<Command HRESULT="-2147024895">%windir%\system32\netsh.exe wlan show profiles</Command>
</Collection>
Os administradores podem aplicar automação a 'results.xml' para criar suas próprias exibições preferidas dos dados. Por exemplo, o seguinte One-liner do PowerShell extrai do XML uma lista ordenada das diretivas com código de status e detalhes.
Select-XML -Path results.xml -XPath '//RegistryKey | //Command | //Events | //FoldersFiles' | Foreach-Object -Begin {$i=1} -Process { [pscustomobject]@{DirectiveNumber=$i; DirectiveHRESULT=$_.Node.HRESULT; DirectiveInput=$_.Node.('#text')} ; $i++}
Este exemplo produz uma saída semelhante à seguinte:
DirectiveNumber DirectiveHRESULT DirectiveInput
--------------- ---------------- --------------
1 0 HKLM\Software\Policies
2 0 HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall
3 0 HKLM\Software\Microsoft\IntuneManagementExtension
4 0 HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall
5 0 %windir%\system32\ipconfig.exe /all
6 0 %windir%\system32\netsh.exe advfirewall show allprofiles
7 0 %windir%\system32\netsh.exe advfirewall show global
8 -2147024895 %windir%\system32\netsh.exe wlan show profiles
O exemplo a seguir extrai o arquivo zip em uma estrutura de arquivo planificada personalizada. Cada nome de arquivo inclui o número da diretiva, HRESULT e assim por diante. Este exemplo pode ser personalizado para fazer diferentes escolhas sobre quais informações incluir nos nomes de arquivo e quais opções de formatação fazer para caracteres especiais.
param( $DiagnosticArchiveZipPath = "C:\DiagArchiveExamples\DiagLogs-MYDEVICE-20201202T182748Z.zip" )
#region Formatting Choices
$flatFileNameTemplate = '({0:D2}) ({3}) (0x{2:X8})'
$maxLengthForInputTextPassedToOutput = 80
#endregion
#region Create Output Folders and Expand Zip
$diagnosticArchiveTempUnzippedPath = $DiagnosticArchiveZipPath + "_expanded"
if(-not (Test-Path $diagnosticArchiveTempUnzippedPath)){mkdir $diagnosticArchiveTempUnzippedPath}
$reformattedArchivePath = $DiagnosticArchiveZipPath + "_formatted"
if(-not (Test-Path $reformattedArchivePath)){mkdir $reformattedArchivePath}
Expand-Archive -Path $DiagnosticArchiveZipPath -DestinationPath $diagnosticArchiveTempUnzippedPath
#endregion
#region Discover and Move/rename Files
$resultElements = ([xml](Get-Content -Path (Join-Path -Path $diagnosticArchiveTempUnzippedPath -ChildPath "results.xml"))).Collection.ChildNodes | Foreach-Object{ $_ }
$n = 0
foreach( $element in $resultElements )
{
$directiveNumber = $n
$n++
if($element.Name -eq 'ID'){ continue }
$directiveType = $element.Name
$directiveStatus = [int]$element.Attributes.ItemOf('HRESULT').psbase.Value
$directiveUserInputRaw = $element.InnerText
$directiveUserInputFileNameCompatible = $directiveUserInputRaw -replace '[\\|/\[\]<>\:"\?\*%\.\s]','_'
$directiveUserInputTrimmed = $directiveUserInputFileNameCompatible.substring(0, [System.Math]::Min($maxLengthForInputTextPassedToOutput, $directiveUserInputFileNameCompatible.Length))
$directiveSummaryString = $flatFileNameTemplate -f $directiveNumber,$directiveType,$directiveStatus,$directiveUserInputTrimmed
$directiveOutputFolder = Join-Path -Path $diagnosticArchiveTempUnzippedPath -ChildPath $directiveNumber
$directiveOutputFiles = Get-ChildItem -Path $directiveOutputFolder -File
foreach( $file in $directiveOutputFiles)
{
$leafSummaryString = $directiveSummaryString,$file.Name -join ' '
Copy-Item $file.FullName -Destination (Join-Path -Path $reformattedArchivePath -ChildPath $leafSummaryString)
}
}
#endregion
Remove-Item -Path $diagnosticArchiveTempUnzippedPath -Force -Recurse
Este script de exemplo produz um conjunto de arquivos semelhante ao conjunto de arquivos a seguir, que pode ser uma exibição útil para um administrador que navega interativamente pelos resultados sem precisar navegar em nenhuma subpasta ou consultar results.xml repetidamente:
PS C:\> dir C:\DiagArchiveExamples\DiagLogs-MYDEVICE-20201202T182748Z.zip_formatted | format-table Length,Name
Length Name
------ ----
46640 (01) (HKLM_Software_Policies) (0x00000000) export.reg
203792 (02) (HKLM_Software_Microsoft_Windows_CurrentVersion_Uninstall) (0x00000000) export.reg
214902 (03) (HKLM_Software_Microsoft_IntuneManagementExtension) (0x00000000) export.reg
212278 (04) (HKLM_SOFTWARE_WOW6432Node_Microsoft_Windows_CurrentVersion_Uninstall) (0x00000000) export.reg
2400 (05) (_windir__system32_ipconfig_exe__all) (0x00000000) output.log
2147 (06) (_windir__system32_netsh_exe_advfirewall_show_allprofiles) (0x00000000) output.log
1043 (07) (_windir__system32_netsh_exe_advfirewall_show_global) (0x00000000) output.log
59 (08) (_windir__system32_netsh_exe_wlan_show_profiles) (0x80070001) output.log
1591 (09) (_windir__system32_ping_exe_-n_50_localhost) (0x00000000) output.log
5192 (10) (_windir__system32_Dsregcmd_exe__status) (0x00000000) output.log