CMPivot per i dati in tempo reale in Configuration ManagerCMPivot for real-time data in Configuration Manager

Si applica a: System Center Configuration Manager (Current Branch)Applies to: System Center Configuration Manager (Current Branch)

Configuration Manager ha sempre fornito un archivio centralizzato di grandi dimensioni per i dati dei dispositivi, usato dai clienti per i report.Configuration Manager has always provided a large centralized store of device data, which customers use for reporting purposes. Il sito in genere raccoglie questi dati su base settimanale.The site typically collects this data on a weekly basis. A partire dalla versione 1806, CMPivot è una nuova utilità inclusa nella console che ora consente l'accesso allo stato in tempo reale dei dispositivi nell'ambiente in uso.Starting in version 1806, CMPivot is a new in-console utility that now provides access to real-time state of devices in your environment. Esegue immediatamente una query su tutti i dispositivi connessi nella raccolta di destinazione e restituisce i risultati.It immediately runs a query on all currently connected devices in the target collection and returns the results. Filtrare quindi e raggruppare questi dati nello strumento.Then filter and group this data in the tool. La disponibilità di dati in tempo reale dai client online consente di rispondere alle domande aziendali, risolvere i problemi e rispondere agli eventi imprevisti di sicurezza in modo più veloce.By providing real-time data from online clients, you can more quickly answer business questions, troubleshoot issues, and respond to security incidents.

Ad esempio, perla mitigazione delle vulnerabilità del canale laterale di esecuzione speculativa, uno dei requisiti prevede l'aggiornamento del BIOS di sistema.For example, in mitigating speculative execution side channel vulnerabilities, one of the requirements is to update the system BIOS. È possibile usare CMPivot per eseguire rapidamente query sulle informazioni del BIOS di sistema e trovare i client non conformi.You can use CMPivot to quickly query on system BIOS information, and find clients that aren't in compliance.

Suggerimento

Alcuni software di sicurezza possono bloccare gli script in esecuzione da c:\windows\ccm\scriptstore.Some security software may block scripts running from c:\windows\ccm\scriptstore. Ciò può impedire la corretta esecuzione delle query CMPivot.This can prevent successful execution of CMPivot queries. Alcuni software di sicurezza possono anche generare avvisi o eventi di controllo quando si esegue CMPivot con PowerShell.Some security software may also generate audit events or alerts when running CMPivot PowerShell.

PrerequisitiPrerequisites

Per usare CMPivot sono necessari i componenti seguenti:The following components are required to use CMPivot:

  • Aggiornare i dispositivi di destinazione alla versione più recente del client Configuration Manager.Upgrade the target devices to the latest version of the Configuration Manager client.

  • Autorizzazioni per CMPivot:Permissions for CMPivot:

    • Lettura per l'oggetto Script SMSRead permission on the SMS Scripts object
    • Esecuzione degli script per la raccoltaRun Scripts permission on the Collection
    • Lettura per i report di inventarioRead permission on Inventory Reports
    • L'ambito predefinito.The default scope.
  • I client di destinazione richiedono almeno PowerShell versione 4.Target clients require a minimum of PowerShell version 4.

  • Per raccogliere dati per le entità seguenti, i client di destinazione richiedono PowerShell versione 5.0:To gather data for the following entities, target clients require PowerShell version 5.0:

    • AmministratoriAdministrators
    • ConnessioniConnection
    • IPConfigIPConfig
    • SMBConfigSMBConfig

LimitazioniLimitations

  • In una gerarchia connettere la console di Configuration Manager a un sito primario per eseguire CMPivot.In a hierarchy, connect the Configuration Manager console to a primary site to run CMPivot. L'azione Avvia CMPivot non viene visualizzata nella console quando è connessa a un sito di amministrazione centrale.The Start CMPivot action doesn't appear in the console when it's connected to a central administration site (CAS).

    • A partire da Configuration Manager versione 1902, è possibile eseguire CMPivot da un sito di amministrazione centrale.Starting in Configuration Manager version 1902, you can run CMPivot from a CAS. In alcuni ambienti sono necessarie autorizzazioni aggiuntive.In some environments, additional permissions are needed. Per altre informazioni, vedere l'articolo su CMPivot a partire dalla versione 1902.For more information, see CMPivot starting in version 1902.
  • CMPivot restituisce solo i dati per i client connessi al sito corrente.CMPivot only returns data for clients connected to the current site.

  • Se una raccolta contiene dispositivi di un altro sito, i risultati di CMPivot provengono solo dai dispositivi nel sito corrente.If a collection contains devices from another site, CMPivot results are only from devices in the current site.

  • Non è possibile personalizzare le proprietà delle entità, le colonne per i risultati o le azioni sui dispositivi.You can't customize entity properties, columns for results, or actions on devices.

  • In un computer che esegue la console di Configuration Manager si può eseguire una sola istanza di CMPivot per volta.Only one instance of CMPivot can run at the same time on a computer that is running the Configuration Manager console.

  • Nella versione 1806, la query per l'entità Administrators funziona solo se il gruppo è denominato "Administrators".In version 1806, the query for the Administrators entity only works if the group is named "Administrators". Non funziona se il nome del gruppo è localizzato.It doesn't work if the group name is localized. Ad esempio, "Administrateurs" in francese.For example, "Administrateurs" in French.

Avviare CMPivotStart CMPivot

  1. Nella console di Configuration Manager connettersi al sito primario.In the Configuration Manager console, connect to the primary site. Passare all'area di lavoro Asset e conformità e selezionare il nodo Raccolte dispositivi.Go to the Assets and Compliance workspace, and select the Device Collections node. Selezionare una raccolta di destinazione e fare clic su Avvia CMPivot sulla barra multifunzione per avviare lo strumento.Select a target collection, and click Start CMPivot in the ribbon to launch the tool.

    Suggerimento

    Se questa opzione non è visualizzata, verificare le configurazioni seguenti:If you don't see this option, check the following configurations:

    • Verificare con un amministratore del sito che l'account abbia le autorizzazioni necessarie.Confirm with a site administrator that your account has the required permissions. Per altre informazioni, vedere Prerequisiti.For more information, see Prerequisites.

    • Connettere la console a un sito primario.Connect the console to a primary site.

  2. L'interfaccia fornisce ulteriori informazioni sull'uso dello strumento.The interface provides further information about using the tool.

    • Immettere manualmente le stringhe di query nella parte superiore oppure fare clic sui collegamenti nella documentazione in linea.Manually enter query strings at the top, or click the links in the in-line documentation.

    • Fare clic su una delle Entità per aggiungerla alla stringa di query.Click one of the Entities to add it to the query string.

    • I collegamenti per Operatori tabella, Funzioni di aggregazione e Funzioni scalari consentono di aprire la documentazione di riferimento del linguaggio nel Web browser.The links for Table Operators, Aggregation Functions, and Scalar Functions open language reference documentation in the web browser. CMPivot usa il linguaggio di query Kusto.CMPivot uses the Kusto Query Language (KQL).

  3. Tenere la finestra CMPivot aperta per visualizzare i risultati dai client.Keep the CMPivot window open to view results from clients. Quando si chiude la finestra CMPivot, la sessione è completa.When you close the CMPivot window, the session is complete.

    Nota

    Se la query è stata inviata, i client inviano comunque un messaggio di stato al server.If the query has been sent, then clients still send a state message response to the server.

Come usare CMPivotHow to use CMPivot

Esempio di finestra CMPivot

La finestra CMPivot presenta gli elementi seguenti:The CMPivot window contains the following elements:

  1. L'attuale raccolta di destinazione di CMPivot è visualizzata nella barra del titolo nella parte superiore e nella barra di stato nella parte inferiore della finestra.The collection that CMPivot currently targets is in the title bar at the top, and the status bar at the bottom of the window. Ad esempio, "PM_Team_Machines" nello screenshot precedente.For example, "PM_Team_Machines" in the above screenshot.

  2. Nel riquadro a sinistra sono elencate le entità disponibili nei client.The pane on the left lists the Entities that are available on clients. Alcune entità si basano su WMI, mentre altre usano PowerShell per ottenere i dati dai client.Some entities rely upon WMI while others use PowerShell to get data from clients.

    • Fare clic con il pulsante destro del mouse su un'entità per le azioni seguenti:Right-click an entity for the following actions:

      • Inserisci: aggiunge l'entità alla query nella posizione corrente del cursore.Insert: Add the entity to the query at the current cursor position. La query non viene eseguita automaticamente.The query doesn't automatically run. Questa azione è quella predefinita quando si fa doppio clic su un'entità.This action is the default when you double-click an entity. Usare questa azione quando si compila una query.Use this action when building a query.

      • Esegui query su tutto: esegue una query per questa entità includendo tutte le proprietà.Query all: Run a query for this entity including all properties. Usare questa azione per eseguire rapidamente una query per una singola entità.Use this action to quickly query for a single entity.

      • Query per dispositivo: esegue una query per questa entità e raggruppa i risultati.Query by device: Run a query for this entity and group the results. Ad esempio: Disk | summarize dcount( Device ) by NameFor example, Disk | summarize dcount( Device ) by Name

    • Espandere un'entità per visualizzare le proprietà specifiche disponibili per ogni entità.Expand an entity to see specific properties available for each entity. Fare doppio clic su una proprietà per aggiungerla alla query nella posizione corrente del cursore.Double-click a property to add it to the query at the current cursor position.

  3. La scheda Home contiene le informazioni generali su CMPivot, inclusi i collegamenti alle query di esempio e alla documentazione di supporto.The Home tab shows general information about CMPivot, including links to sample queries and supporting documentation.

  4. La scheda Query contiene il riquadro della query, il riquadro dei risultati e la barra di stato.The Query tab displays the query pane, results pane, and status bar. La scheda Query è selezionata nell'esempio dello screenshot precedente.The query tab is selected in the above screenshot example.

  5. Nel riquadro della query si compila o si digita una query da eseguire nei client della raccolta.The query pane is where you build or type a query to run on clients in the collection.

    • CMPivot usa un subset del linguaggio di query Kusto.CMPivot uses a subset of the Kusto Query Language (KQL).

    • Tagliare, copiare o incollare il contenuto nel riquadro della query.Cut, copy, or paste content in the query pane.

    • Per impostazione predefinita, questo riquadro usa IntelliSense.By default, this pane uses IntelliSense. Se ad esempio si inizia a digitare D, IntelliSense suggerisce tutte le entità che iniziano con tale lettera.For example, if you start typing D, IntelliSense suggests all of the entities that start with that letter. Selezionare un'opzione e premere TAB per inserirla.Select an option and press Tab to insert it. Digitare un carattere barra verticale e uno spazio |. IntelliSense suggerirà tutti gli operatori di tabella.Type a pipe character and a space |, and then IntelliSense suggests all of the table operators. Inserire summarize e digitare uno spazio. IntelliSense suggerirà tutte le funzioni di aggregazione.Insert summarize and type a space, and IntelliSense suggests all of the aggregation functions. Per altre informazioni su questi operatori e funzioni, fare clic sulla scheda Home in CMPivot.For more information on these operators and functions, click the Home tab in CMPivot.

    • Il riquadro della query fornisce anche le opzioni seguenti:The query pane also provides the following options:

      • Eseguire la query.Run the query.

      • Spostarsi indietro e avanti nell'elenco della cronologia delle query.Move backwards and forwards in the history list of queries.

      • Creare una raccolta di appartenenze dirette.Create a direct membership collection.

      • Esportare i risultati della query in un file CSV o negli Appunti.Export the query results to CSV or the clipboard.

  6. Il riquadro dei risultati visualizza i dati restituiti dai client attivi per la query.The results pane displays the data returned by active clients for the query.

    • Le colonne disponibili variano a seconda dell'entità e della query.The available columns vary based upon the entity and the query.

    • Fare clic su un nome di colonna per ordinare i risultati in base a tale proprietà.Click a column name to sort the results by that property.

    • Fare clic con il pulsante destro del mouse su un nome di colonna per raggruppare i risultati in base alle stesse informazioni di tale colonna o per ordinare i risultati.Right-click on any column name to group the results by the same information in that column, or sort the results.

    • Fare clic con il pulsante destro del mouse su un nome di dispositivo per eseguire le azioni aggiuntive seguenti sul dispositivo:Right-click on a device name to take the following additional actions on the device:

    • Fare clic con il pulsante destro del mouse su una cella non di dispositivo per eseguire le azioni aggiuntive seguenti:Right-click on any non-device cell to take the following additional actions:

      • Copia: copia il testo della cella negli Appunti.Copy: Copy the text of the cell to the clipboard.

      • Mostra dispositivi con: esegue una query dei dispositivi con questo valore della proprietà.Show devices with: Query for devices with this value for this property. Ad esempio, nei risultati della query OS selezionare questa opzione in una cella della riga Version: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ > 0)For example, from the results of the OS query, select this option on a cell in the Version row: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ > 0)

      • Mostra dispositivi senza: esegue una query dei dispositivi senza questo valore della proprietà.Show devices without: Query for devices without this value for this property. Ad esempio, nei risultati della query OS selezionare questa opzione in una cella della riga Version: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ == 0) | project DeviceFor example, from the results of the OS query, select this option on a cell in the Version row: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ == 0) | project Device

      • Usa Bing: avvia il Web browser predefinito per accedere a www.bing.com con questo valore come stringa di query.Bing it: Launch the default web browser to www.bing.com with this value as the query string.

    • Fare clic su un testo con collegamento ipertestuale per trasformare tramite Pivot la vista su tali informazioni specifiche.Click any hyperlinked text to pivot the view on that specific information.

    • Il riquadro dei risultati non visualizza più di 20.000 righe.The results pane doesn't show more than 20,000 rows. Modificare la query per filtrare ulteriormente i dati oppure riavviare CMPivot in una raccolta più piccola.Either adjust the query to further filter the data, or restart CMPivot on a smaller collection.

  7. La barra di stato mostra le informazioni seguenti (da sinistra a destra):The status bar shows the following information (from left to right):

    • Lo stato della query corrente per la raccolta di destinazione.The status of the current query to the target collection. Questo stato include:This status includes:

      • Il numero di client attivi che hanno completato la query (3)The number of active clients that completed the query (3)

      • Il numero di client totali (5)The number of total clients (5)

      • Il numero di client offline (2)The number of offline clients (2)

      • I client che hanno restituito un errore (0)Any clients that returned failure (0)

        Ad esempio: Query completed on 3 of 5 clients (2 clients offline and 0 failure)For example: Query completed on 3 of 5 clients (2 clients offline and 0 failure)

    • L'ID dell'operazione client.The ID of the client operation. Ad esempio: id(16780221)For example: id(16780221)

    • La raccolta corrente.The current collection. Ad esempio: PM_Team_MachinesFor example: PM_Team_Machines

    • Il numero totale di righe nel riquadro dei risultati.The total number of rows in the results pane. Ad esempio: 1 objectsFor example, 1 objects

Scenari di esempioExample scenarios

Le sezioni seguenti forniscono esempi di come sia possibile usare CMPivot nell'ambiente:The following sections provide examples of how you might use CMPivot in your environment:

Esempio 1: Arrestare un servizio in esecuzioneExample 1: Stop a running service

L'amministratore della sicurezza chiede di arrestare e disabilitare il servizio Browser di computer al più presto su tutti i dispositivi del reparto contabilità.Your security administrator asks you to stop and disable the Computer Browser service as quickly as possible on all devices in the accounting department. Si avvia CMPivot in una raccolta per tutti i dispositivi della contabilità e si seleziona Esegui query su tutto nell'entità Service.You start CMPivot on a collection for all devices in accounting, and select Query all on the Service entity.

Service

Quando vengono visualizzati i risultati, si fa clic con il pulsante destro del mouse sulla colonna Name e si sceglie Raggruppa per.As results appear, you right-click on the Name column and select Group by.

Service | summarize dcount( Device ) by Name

Nella riga del servizio Browser si fa clic sul numero con collegamento ipertestuale nella colonna dcount_ .In the row for the Browser service, you click the hyperlinked number in the dcount_ column.

Service | where (Name == 'Browser') | summarize count() by Device

Si selezionano tutti i dispositivi, si fa clic con il pulsante destro del mouse sulla selezione e si sceglie Esegui script.You multi-select all devices, right-click the selection, and choose Run Script. Questa azione avvia la procedura guidata Esegui Script, da cui si esegue uno script esistente per arrestare e disabilitare un servizio.This action launches the Run Script wizard, from which you run an existing script you have for stopping and disabling a service. Con CMPivot si risponde rapidamente all'evento imprevisto di sicurezza per tutti i computer attivi, visualizzando i risultati nella procedura guidata Esegui Script.With CMPivot you quickly respond to the security incident for all active computers, viewing results in the Run Script wizard. Si termina quindi con la creazione di una linea di base di configurazione per correggere gli altri computer della raccolta perché diventeranno attivi in futuro.You then followup to create a configuration baseline to remediate other computers in the collection as they become active in the future.

Esempio di CMPivot per il servizio Browser e l'azione Esegui script

Esempio 2: Risolvere in modo proattivo gli errori delle applicazioniExample 2: Proactively resolve application failures

Per assicurare reazioni proattive con la manutenzione operativa, una volta alla settimana si esegue CMPivot su una raccolta di server gestiti e si seleziona Esegui query su tutto nell'entità AppCrash.To be proactive with operational maintenance, once a week you run CMPivot against a collection of servers that you manage, and select Query all on the AppCrash entity. Si fa clic con il pulsante destro del mouse sulla colonna FileName e si sceglie Ordinamento crescente.You right-click the FileName column and select Sort Ascending. Un dispositivo restituisce sette risultati per sqlsqm.exe con un timestamp corrispondente alle 03:00 circa ogni giorno.One device returns seven results for sqlsqm.exe with a timestamp about 03:00 every day. Si seleziona il nome file in una delle righe, si fa clic con il pulsante destro del mouse e si sceglie Usa Bing.You select the file name in one of the rows, right-click it, and select Bing It. Esplorando i risultati della ricerca nel Web browser, si trova un articolo del supporto tecnico Microsoft su questo problema con la risoluzione e altre informazioni.Browsing the search results in the web browser, you find a Microsoft support article for this issue with more information and resolution.

Esempio 3: Versione BIOSExample 3: BIOS version

Per mitigare le vulnerabilità del canale laterale di esecuzione speculativa, uno dei requisiti prevede l'aggiornamento del BIOS di sistema.To mitigate speculative execution side channel vulnerabilities, one of the requirements is to update the system BIOS. Si inizia con una query dell'entità BIOS,You start with a query for the BIOS entity. quindi si raggruppa in base alla proprietà Version.You then Group by the Version property. Si fa quindi clic con il pulsante destro del mouse su un valore specifico, ad esempio "LENOVO - 1140", e si sceglie Mostra dispositivi con.Then right-click a specific value, such as "LENOVO - 1140", and select Show devices with.

Bios | summarize countif( (Version == 'LENOVO - 1140') ) by Device | where (countif_ > 0)

Esempio 4: Spazio libero su discoExample 4: Free disk space

È necessario archiviare temporaneamente un file di grandi dimensioni in un file server di rete, ma non si è certi di quale abbia la capacità sufficiente.You need to temporarily store a large file on a network file server, but aren't sure which one has enough capacity. Avviare CMPivot su una raccolta di file server ed eseguire una query sull'entità Disk.Start CMPivot against a collection of file servers, and query the Disk entity. Modificare la query in modo che CMPivot restituisca rapidamente un elenco dei server attivi con i dati di archiviazione in tempo reale:Modify the query for CMPivot to quickly return a list of active servers with real-time storage data:

Disk | where (Description == 'Local Fixed Disk') | where isnotnull( FreeSpace ) | order by FreeSpace asc

CMPivot a partire dalla versione 1810CMPivot starting in version 1810

CMPivot include i miglioramenti seguenti a partire da Configuration Manager versione 1810:CMPivot includes the following improvements starting in Configuration Manager version 1810:

Utilità e prestazioni di CMPivotCMPivot utility and performance

  • CMPivot restituisce fino a 100.000 celle anziché 20.000 righe.CMPivot will return up to 100,000 cells rather than 20,000 rows.

    • Se l'entità ha 5 proprietà, ovvero 5 colonne, vengono visualizzate al massimo 20.000 righe.If the entity has 5 properties, meaning 5 columns, up to 20,000 rows will be shown.
    • Per un'entità con 10 proprietà, vengono visualizzate fino a 10.000 righe.For an entity with 10 properties, up to 10,000 rows will be shown.
    • Il totale dei dati visualizzati sarà minore o uguale a 100.000 celle.The total data shown will be less than or equal to 100,000 cells.
  • Nella scheda Riepilogo delle query selezionare il totale dei dispositivi Con errori o Offline e quindi selezionare l'opzione Crea una raccolta.On the Query Summary tab, select the count of Failed or Offline devices, and then select the option to Create Collection. Questa opzione consente di impostare facilmente come destinazione i dispositivi con distribuzione della correzione.This option makes it easy to target those devices with a remediation deployment.

  • Per salvare la query preferita fare clic sull'icona della cartella.Save Favorite queries by clicking the folder icon. Esempio di salvataggio di una query preferita in CMPivotExample of saving a favorite query in CMPivot

  • I client aggiornati alla versione 1810 restituiscono un output inferiore a 80 kB al sito su un canale di comunicazione rapida.Clients updated to the 1810 version return output less than 80 KB to the site over a fast communication channel.

    • Questa modifica migliora le prestazioni di visualizzazione dell'output di script o query.This change increases the performance of viewing script or query output.
    • Se l'output di script o query è maggiore di 80 KB, il client invia i dati tramite un messaggio di stato.If the script or query output is greater than 80 KB, the client sends the data via a state message.
    • Se non è aggiornato alla versione 1810, il client continua a usare i messaggi di stato.If the client isn't updated to the 1810 client version, it continues to use state messages.

Funzioni scalariScalar functions

CMPivot supporta le seguenti funzioni scalari:CMPivot supports the following scalar functions:

  • ago() : sottrarre l'intervallo di tempo specificato dall'ora UTC correnteago(): Subtracts the given timespan from the current UTC clock time
  • datetime_diff() : calcola la differenza di calendario tra due valori DateTimedatetime_diff(): Calculates the calendar difference between two datetime values
  • now() : restituisce l'ora UTC correntenow(): Returns the current UTC clock time
  • bin() : arrotonda per difetto i valori a un multiplo intero di una dimensione di contenitore specificatabin(): Rounds values down to an integer multiple of a given bin size

Nota

Il tipo di dati datetime rappresenta un istante nel tempo, in genere espresso come data e ora del giorno.The datetime data type represents an instant in time, typically expressed as a date and time of day. I valori di tempo sono misurati in unità di 1 secondo.Time values are measured in 1-second units. Un valore datetime è sempre il fuso orario UTC.A datetime value is always in the UTC time zone. Esprimere sempre i valori letterali data e ora in formato ISO 8601, ad esempio yyyy-mm-dd HH:MM:ssAlways express date time literals in ISO 8601 format, for example, yyyy-mm-dd HH:MM:ss

EsempiExamples

  • datetime(2015-12-31 23:59:59.9): un valore letterale data e ora specificodatetime(2015-12-31 23:59:59.9): A specific date time literal
  • now(): l'ora correntenow(): The current time
  • ago(1d): l'ora corrente meno un giornoago(1d): The current time minus one day

Visualizzazioni di renderingRendering visualizations

CMPivot include ora il supporto di base per l'operatore di rendering del linguaggio di query Kusto.CMPivot now includes basic support for the KQL render operator. Questo supporto include i tipi seguenti:This support includes the following types:

  • barchart: la prima colonna è l'asse x e può essere testo, data/ora o numerica.barchart: First column is x-axis, and can be text, datetime or numeric. La seconda colonna deve essere numerica e viene visualizzato come una striscia orizzontale.The second columns must be numeric and is displayed as a horizontal strip.
  • columnchart: come barchart, con strisce verticali anziché strisce orizzontali.columnchart: Like barchart, with vertical strips instead of horizontal strips.
  • piechart: la prima colonna è l'asse del colore, la seconda colonna è numerica.piechart: First column is color-axis, second column is numeric.
  • timechart: grafico a linee.timechart: Line graph. La prima colonna è l'asse x e deve essere datetime.First column is x-axis, and should be datetime. La seconda colonna è l'asse y.Second column is y-axis.

Esempio: grafico a barreExample: bar chart

La query seguente esegue il rendering delle applicazioni usate più di recente come un grafico a barre:The following query renders the most recently used applications as a bar chart:

CCMRecentlyUsedApplications
| summarize dcount( Device ) by ProductName
| top 10 by dcount_
| render barchart

Esempio di visualizzazione di grafico a barre CMPivot

Esempio: grafico del tempoExample: time chart

Per visualizzare i grafici del tempo, usare il nuovo operatore bin() per raggruppare gli eventi nel tempo.To render time charts, use the new bin() operator to group events in time. La query seguente indica quando sono stati avviati i dispositivi negli ultimi sette giorni:The following query shows when devices have started in the last seven days:

OperatingSystem 
| where LastBootUpTime <= ago(7d)
| summarize count() by bin(LastBootUpTime,1d)
| render timechart

Esempio di visualizzazione di grafico del tempo CMPivot

Esempio: grafico a tortaExample: pie chart

La query seguente visualizza tutte le versioni del sistema operativo in un grafico a torta:The following query displays all OS versions in a pie chart:

OperatingSystem 
| summarize count() by Caption
| render piechart

Esempio di visualizzazione di grafico a torta CMPivot

Inventario hardwareHardware inventory

Usare CMPivot per eseguire query sulle classi di inventario hardware.Use CMPivot to query any hardware inventory class. Queste classi includono eventuali estensioni personalizzate create per l'inventario hardware.These classes include any custom extensions you make to hardware inventory. CMPivot restituisce immediatamente i risultati memorizzati nella cache dell'ultima analisi dell'inventario hardware archiviata nel database del sito.CMPivot immediately returns cached results from the last hardware inventory scan stored in the site database. Allo stesso tempo, se necessario aggiorna i risultati con i dati dinamici di tutti i client online.At the same time, it updates the results if necessary with live data from any online clients.

La saturazione del colore dei dati nella tabella o nel grafico dei risultati indica se i dati sono dinamici o memorizzati nella cache.The color saturation of the data in the results table or chart indicates if the data is live or cached. Ad esempio, blu scuro è un dato in tempo reale proveniente da un client online.For example, dark blue is real-time data from an online client. Blu chiaro è un dato memorizzato nella cache.Light blue is cached data.

EsempioExample

LogicalDisk
| summarize sum( FreeSpace ) by Device
| order by sum_ desc
| render columnchart

Esempio di query sull'inventario CMPivot con visualizzazione di un istogramma

LimitazioniLimitations

  • Le seguenti entità di inventario hardware non sono supportate:The following hardware inventory entities aren't supported:
    • Proprietà della matrice, ad esempio l'indirizzo IPArray properties, for example IP address
    • Real32/Real64Real32/Real64
    • Proprietà oggetti selezionatiEmbedded object properties
  • I nomi di entità di inventario devono iniziare con un carattereInventory entity names must begin with a character
  • Non è possibile sovrascrivere le entità predefinite creando un'entità di inventario con lo stesso nomeYou can't overwrite the built-in entities by creating an inventory entity of the same name

Operatori scalariScalar operators

CMPivot include i seguenti operatori scalari:CMPivot includes the following scalar operators:

Nota

  • LHS: stringa a sinistra dell'operatoreLHS: string to the left of the operator
  • RHS: stringa a destra dell'operatoreRHS: string to the right of the operator
OperatorOperator DescrizioneDescription Esempio (restituisce true)Example (yields true)
== Uguale aEquals "aBc" == "aBc"
!=!= Diverso daNot equals "abc" != "ABC"
likelike LHS contiene una corrispondenza per RHSLHS contains a match for RHS "FabriKam" like "%Brik%"
!like!like LHS non contiene una corrispondenza per RHSLHS doesn't contain a match for RHS "Fabrikam" !like "%xyz%"
contienecontains RHS si verifica come sottosequenza di LHSRHS occurs as a subsequence of LHS "FabriKam" contains "BRik"
!contains!contains RHS non si verifica in LHSRHS doesn't occur in LHS "Fabrikam" !contains "xyz"
startswithstartswith RHS è una sottosequenza iniziale di LHSRHS is an initial subsequence of LHS "Fabrikam" startswith "fab"
!startswith!startswith RHS non è una sottosequenza iniziale di LHSRHS isn't an initial subsequence of LHS "Fabrikam" !startswith "kam"
endswithendswith RHS è una sottosequenza di chiusura di LHSRHS is a closing subsequence of LHS "Fabrikam" endswith "Kam"
!endswith!endswith RHS non è una sottosequenza di chiusura di LHSRHS isn't a closing subsequence of LHS "Fabrikam" !endswith "brik"

Riepilogo delle queryQuery summary

Selezionare la scheda Riepilogo delle query nella parte inferiore della finestra CMPivot.Select the Query Summary tab at the bottom of the CMPivot window. Questo stato consente di identificare i client che sono offline o di risolvere gli errori che possono verificarsi.This status helps you identify clients that are offline, or troubleshoot errors that may occur. Selezionare un valore nella colonna del conteggio per aprire un elenco di dispositivi specifici con tale stato.Select a value in the Count column to open a list of specific devices with that status.

Ad esempio, selezionare il numero di dispositivi con uno stato di errore.For example, select the count of devices with a Failure status. Vedere il messaggio di errore specifico ed esportare un elenco di questi dispositivi.See the specific error message, and export a list of these devices. Se l'errore è che un cmdlet specifico non viene riconosciuto, creare una raccolta dall'elenco dei dispositivi esportati per distribuire un aggiornamento di Windows PowerShell.If the error is that a specific cmdlet isn't recognized, create a collection from the exported device list to deploy a Windows PowerShell update.

Messaggi di stato di controllo di CMPivotCMPivot audit status messages

A partire dalla versione 1810, quando si esegue CMPivot viene creato un messaggio di stato di controllo con MessageID 40805.Starting in version 1810, when you run CMPivot, an audit status message is created with MessageID 40805. Per visualizzare i messaggi di stato, andare a Monitoraggio < Stato del sistema < Query messaggi di stato.You can view the status messages by going to Monitoring < System Status < Status Message Queries. È possibile eseguire tutti i messaggi di stato di controllo per un utente specifico, tutti i messaggi di stato di controllo per un sito specifico o creare la propria query di messaggio di stato.You can run All Audit status Messages for a Specific User, All Audit status Messages for a Specific Site, or create your own status message query.

Per il messaggio viene usato il formato seguente:The following format is used for the message:

MessageId 40805: L'utente <NomeUtente> ha eseguito lo script <GUID-script> con hash <hash-script> nella raccolta <ID-raccolta>.MessageId 40805: User <UserName> ran script <Script-Guid> with hash <Script-Hash> on collection <Collection-ID>.

  • 7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14 è il GUID dello script per CMPivot.7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14 is the Script-Guid for CMPivot.
  • Il codice hash dello script può essere visualizzato nel file scripts.log del client.The Script-Hash can be seen in the client's scripts.log file.
  • È anche possibile visualizzare l'hash archiviato nel punteggio dello script client.You can also see the hash stored in the client's script score. Il nome file nel client è <GUID-script><hash-script>.The filename on the client is <Script-Guid><Script-Hash>.
    • Esempio di nome file: C:\Windows\CCM\ScriptStore\7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14_abc1d23e45678901fabc123d456ce789fa1b2cd3e456789123fab4c56789d0123.psExample file name: C:\Windows\CCM\ScriptStore\7DC6B6F1-E7F6-43C1-96E0-E1D16BC25C14_abc1d23e45678901fabc123d456ce789fa1b2cd3e456789123fab4c56789d0123.ps

Esempio di messaggio di stato di controllo di CMPivot

CMPivot a partire dalla versione 1902CMPivot starting in version 1902

A partire dalla versione 1902 di Configuration Manager è possibile eseguire CMPivot dal sito di amministrazione centrale in una gerarchia.Starting in Configuration Manager version 1902, you can run CMPivot from the central administration site (CAS) in a hierarchy. Il sito primario gestisce ancora la comunicazione con il client.The primary site still handles the communication to the client. Quando CMPivot viene eseguito dal sito di amministrazione centrale, comunica con il sito primario tramite il canale di sottoscrizione dei messaggi ad alta velocità.When running CMPivot from the central administration site, it communicates with the primary site over the high-speed message subscription channel. Questa comunicazione non si basa sulla replica SQL standard tra siti.This communication doesn't rely upon standard SQL replication between sites.

L'esecuzione di CMPivot nel sito di amministrazione centrale richiede autorizzazioni aggiuntive quando SQL o il provider non sono nello stesso computer o se la configurazione è SQL Always On.Running CMPivot on the CAS will require additional permissions when SQL or the provider are not on the same machine or in the case of SQL Always On configuration. Con queste configurazioni remote, è necessario uno scenario con "doppio hop" per CMPivot.With these remote configurations, you have a “double hop scenario” for CMPivot.

Per fare in modo che CMPivot funzioni nel sito di amministrazione centrale in uno "scenario con doppio hop", è possibile definire la delega vincolata.To get CMPivot to work on the CAS in such a “double hop scenario”, you can define constrained delegation. Per comprendere le implicazioni di sicurezza di questa configurazione, leggere l'articolo sulla delega vincolata Kerberos.To understand the security implications of this configuration, read the Kerberos constrained delegation article. Se si usa più di una configurazione remota, ad esempio un provider SQL o SCCM che condivide o meno il percorso con il sistema di amministrazione centrale, si può richiedere una combinazione di impostazioni di autorizzazione.If you have more than one remote configuration such as SQL or SCCM Provider being colocated with the CAS or not, you may require a combination of permission settings. Di seguito sono riportati i passaggi che è necessario eseguire:Below are the steps that you need to take:

Il sistema di amministrazione centrale usa un'istanza remota di SQL ServerCAS has a remote SQL server

  1. Passare all'istanza di SQL Server di ogni sito primario.Go to each primary site's SQL server.

    1. Aggiungere l'istanza remota di SQL Server del sistema di amministrazione centrale e il server del sito del sistema di amministrazione centrale al gruppo Configmgr_DviewAccess.Add the CAS remote SQL server and the CAS site server to the Configmgr_DviewAccess group. Gruppo Configmgr_DviewAccess in un'istanza di SQL Server del sito primarioConfigmgr_DviewAccess group on a primary site's SQL server
  2. Accedere a Utenti e computer di Active Directory.Go to Active Directory Users and Computers.

    1. Per il server di ogni sito primario, fare clic con il pulsante destro del mouse e selezionare Proprietà.For each primary site server, right click and select Properties.
      1. Nella scheda della delega scegliere la terza opzione, Computer attendibile per la delega solo ai servizi specificati.In the delegation tab, choose the third option, Trust this computer for delegation to specified services only.
      2. Scegliere Utilizza solo Kerberos.Choose Use Kerberos only.
      3. Aggiungere il servizio SQL Server del sistema di amministrazione centrale con porta e istanza.Add the CAS's SQL server service with port and instance.
      4. Verificare che queste modifiche siano conformi ai criteri di sicurezza aziendali.Make sure these changes align with your company security policy!
    2. Per il sito del sistema di amministrazione aziendale, fare clic con il pulsante destro del mouse e selezionare Proprietà.For the CAS site, right click and select Properties.
      1. Nella scheda della delega scegliere la terza opzione, Computer attendibile per la delega solo ai servizi specificati.In the delegation tab, choose the third option, Trust this computer for delegation to specified services only.
      2. Scegliere Utilizza solo Kerberos.Choose Use Kerberos only.
      3. Aggiungere il servizio SQL Server di ogni sito primario con porta e istanza.Add each primary site's SQL server service with port and instance.
      4. Verificare che queste modifiche siano conformi ai criteri di sicurezza aziendali.Make sure these changes align with your company security policy!

    Esempio di delega AD di CMPivot per doppi hop

Il sistema di amministrazione centrale ha un provider remotoCAS has a remote provider

  1. Passare all'istanza di SQL Server di ogni sito primario.Go to each primary site's SQL server.
    1. Aggiungere l'account del computer del provider e il server del sito del sistema di amministrazione centrale al gruppo Configmgr_DviewAccess.Add the CAS provider machine account and the CAS site server to the Configmgr_DviewAccess group.
  2. Accedere a Utenti e computer di Active Directory.Go to Active Directory Users and Computers.
    1. Selezionare il computer del provider del sistema di amministrazione centrale, fare clic con il pulsante destro del mouse e selezionare Proprietà.Select the CAS provider machine, right click and select Properties.
      1. Nella scheda della delega scegliere la terza opzione, Computer attendibile per la delega solo ai servizi specificati.In the delegation tab, choose the third option, Trust this computer for delegation to specified services only.
      2. Scegliere Utilizza solo Kerberos.Choose Use Kerberos only.
      3. Aggiungere il servizio SQL Server di ogni sito primario con porta e istanza.Add each primary site's SQL server service with port and instance.
      4. Verificare che queste modifiche siano conformi ai criteri di sicurezza aziendali.Make sure these changes align with your company security policy!
    2. Selezionare il server del sito del sistema di amministrazione centrale, fare clic con il pulsante destro del mouse e selezionare Proprietà.Select the CAS site server, right click and select Properties.
      1. Nella scheda della delega scegliere la terza opzione, Computer attendibile per la delega solo ai servizi specificati.In the delegation tab, choose the third option, Trust this computer for delegation to specified services only.
      2. Scegliere Utilizza solo Kerberos.Choose Use Kerberos only.
      3. Aggiungere il servizio SQL Server di ogni sito primario con porta e istanza.Add each primary site's SQL server service with port and instance.
      4. Verificare che queste modifiche siano conformi ai criteri di sicurezza aziendali.Make sure these changes align with your company security policy!
  3. Riavviare il computer del provider remoto del sistema di amministrazione centrale.Restart the CAS remote provider machine.

SQL Always OnSQL Always On

  1. Passare all'istanza di SQL Server di ogni sito primario.Go to each primary site's SQL server.
    1. Aggiungere il server del sito del sistema di amministrazione centrale al gruppo Configmgr_DviewAccess.Add the CAS site server to the Configmgr_DviewAccess group.
  2. Accedere a Utenti e computer di Active Directory.Go to Active Directory Users and Computers.
    1. Per il server di ogni sito primario, fare clic con il pulsante destro del mouse e selezionare Proprietà.For each primary site server, right click and select Properties.
      1. Nella scheda della delega scegliere la terza opzione, Computer attendibile per la delega solo ai servizi specificati.In the delegation tab, choose the third option, Trust this computer for delegation to specified services only.
      2. Scegliere Utilizza solo Kerberos.Choose Use Kerberos only.
      3. Aggiungere gli account del servizio SQL Server del sistema di amministrazione centrale con porta e istanza.Add the CAS's SQL server service accounts for the SQL nodes with port and instance.
      4. Verificare che queste modifiche siano conformi ai criteri di sicurezza aziendali.Make sure these changes align with your company security policy!
    2. Selezionare il server del sito del sistema di amministrazione centrale, fare clic con il pulsante destro del mouse e selezionare Proprietà.Select the CAS site server, right click and select Properties.
      1. Nella scheda della delega scegliere la terza opzione, Computer attendibile per la delega solo ai servizi specificati.In the delegation tab, choose the third option, Trust this computer for delegation to specified services only.
      2. Scegliere Utilizza solo Kerberos.Choose Use Kerberos only.
      3. Aggiungere il servizio SQL Server di ogni sito primario con porta e istanza.Add each primary site's SQL server service with port and instance.
      4. Verificare che queste modifiche siano conformi ai criteri di sicurezza aziendali.Make sure these changes align with your company security policy!
  3. Verificare che il nome SPN sia pubblicato per il nome del listener SQL del sistema di amministrazione centrale e per ogni nome del listener SQL primario.Make sure the SPN is published for the CAS SQL listener name and each primary SQL listener name.
  4. Riavviare le istanze di SQL Server primarie.Restart the primary SQL servers.
  5. Riavviare il server del sito e le istanze di SQL Server del sistema di amministrazione centrale.Restart the CAS site server and the CAS SQL servers.

Informazioni su CMPivotInside CMPivot

CMPivot invia le query ai client usando il "canale rapido" di Configuration Manager.CMPivot sends queries to clients using the Configuration Manager "fast channel". Questo canale di comunicazione dal server al client viene usato anche da altre funzionalità, ad esempio le azioni di notifica client, lo stato del client ed Endpoint Protection.This communication channel from server to client is also used by other features such as client notification actions, client status, and Endpoint Protection. I client restituiscono i risultati tramite il sistema di messaggi di stato in modo altrettanto rapido.Clients return results via the similarly quick state message system. I messaggi di stato vengono temporaneamente archiviati nel database.State messages are temporarily stored in the database. Per altre informazioni sulle porte usate per la notifica client, vedere l'articolo relativo alle porte.For more information about the ports used for client notification, see the Ports article.

Le query e i risultati contengono solo testo.The queries and the results are all just text. Le entità InstallSoftware e Process restituiscono alcuni dei set di risultati più grandi.The entities InstallSoftware and Process return some of the largest result sets. Durante i test delle prestazioni, le dimensioni del file di un messaggio di stato da un client per queste query non hanno superato 1 KB.During performance testing, the largest state message file size from one client for these queries was less than 1 KB. Questa query monouso, eseguita a un ambiente di grandi dimensioni con 50.000 client attivi, genererebbe meno di 50 MB di dati in rete.Scaled to a large environment with 50,000 active clients, this one-time query would generate less than 50 MB of data across the network. Tutti gli elementi sottolineati nella home page restituiranno meno di 1 KB di informazioni per client.All the items on the welcome page that are underlined, will return less than 1k of info per client.

Esempio di entità sottolineate in CMPivot

A partire da Configuration Manager 1810, CMPivot è in grado di eseguire query sui dati di inventario hardware, incluse le classi di inventario hardware estese.Starting in Configuration Manager 1810, CMPivot can query hardware inventory data, including extended hardware inventory classes. Queste nuove entità (non sottolineate nella home page) possono restituire set di dati molto più grandi, a seconda della quantità di dati definita per una data proprietà di inventario hardware.These new entities (entities not underlined on the welcome page) may return much larger data sets, depending on how much data is defined for a given hardware inventory property. Ad esempio, l'entità "InstalledExecutable" potrebbe restituire più MB di dati per ogni client, in base ai dati specifici su cui si esegue la query.For example, the “InstalledExecutable” entity might return multiple MB of data per client, depending on the specific data you query on. Prestare attenzione alle prestazioni e alla scalabilità dei sistemi quando usando CMPivot le raccolte di dimensioni maggiori restituiscono set di dati di inventario hardware più grandi.Be mindful of the performance and scalability on your systems when returning larger hardware inventory data sets from larger collections using CMPivot.

Una query raggiunge il timeout dopo un'ora.A query times out after one hour. Ad esempio, una raccolta include 500 dispositivi e 450 client sono attualmente online.For example, a collection has 500 devices, and 450 of the clients are currently online. I dispositivi attivi ricevono la query e restituiscono i risultati quasi immediatamente.Those active devices receive the query and return the results almost immediately. Se si lascia aperta la finestra CMPivot, anche gli altri 50 client, non appena passano online, ricevono la query e restituiscono i risultati.If you leave the CMPivot window open, as the other 50 clients come online, they also receive the query, and return results.

File di registroLog files

Le interazioni di CMPivot vengono registrate nei file di log seguenti:CMPivot interactions are logged to the following log files:

Lato server:Server-side:

  • SmsProv.logSmsProv.log
  • BgbServer.logBgbServer.log
  • StateSys.logStateSys.log

Lato client:Client-side:

  • CcmNotificationAgent.logCcmNotificationAgent.log
  • Scripts.logScripts.log
  • StateMessage.logStateMessage.log

Per altre informazioni, vedere File di log e Risoluzione dei problemi di CMPivot.For more information, see Log files and Troubleshooting CMPivot.

Passaggi successiviNext steps

Risoluzione dei problemi di CMPivotTroubleshooting CMPivot

Creare ed eseguire script di PowerShellCreate and run PowerShell scripts