CMPivot för realtidsdata i Configuration Manager

Gäller för: Konfigurationshanteraren (current branch)

Configuration Manager har alltid tillhandahållit ett stort centraliserat lager med enhetsdata som kunder använder i rapporteringssyfte. Webbplatsen samlar vanligtvis in dessa data varje vecka. Från och med version 1806 är CMPivot ett nytt konsolverktyg som nu ger åtkomst till realtidstillstånd för enheter i din miljö. Den kör omedelbart en fråga på alla anslutna enheter i målsamlingen och returnerar resultatet. Filtrera och gruppera sedan dessa data i verktyget. Genom att tillhandahålla realtidsdata från onlineklienter kan du snabbare besvara affärsfrågor, felsöka problem och svara på säkerhetsincidenter.

När du till exempel minimerar sårbarheter i spekulativ körningssidan är ett av kraven att uppdatera systemets BIOS. Du kan använda CMPivot för att snabbt fråga efter system-BIOS-information och hitta klienter som inte är kompatibla.

Viktigt

  • Vissa säkerhetsprogram kan blockera skript som körs från c:\windows\ccm\scriptstore. Detta kan förhindra lyckad körning av CMPivot-frågor. Vissa säkerhetsprogram kan också generera granskningshändelser eller aviseringar när du kör CMPivot PowerShell.
  • Vissa program mot skadlig kod kan oavsiktligt utlösa händelser mot Configuration Manager kör skript eller CMPivot-funktioner. Vi rekommenderar att du exkluderar %windir%\CCM\ScriptStore så att programmet mot skadlig kod tillåter att dessa funktioner körs utan störningar.

Förhandskrav

Följande komponenter krävs för att använda CMPivot:

  • Uppgradera målenheterna till den senaste versionen av Konfigurationshanteraren-klienten.

  • För målklienter krävs minst PowerShell version 4.

  • För att samla in data för följande entiteter kräver målklienter PowerShell version 5.0:

    • Administratörer
    • Anslutning
    • IPConfig
    • SMBConfig
  • CMPivot och Microsoft Edge-installationsprogrammet är för närvarande signerade med Microsoft CODE Signing PCA 2011-certifikatet. Om du ställer in PowerShell-körningsprincipen på AllSigned måste du se till att enheterna litar på det här signeringscertifikatet. Du kan exportera certifikatet från en dator där du har installerat Configuration Manager-konsolen. Visa certifikatet på "C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\CMPivot.exe"och exportera sedan kodsigneringscertifikatet från certifieringssökvägen. Importera den sedan till datornsarkiv betrodda utgivare på hanterade enheter. Du kan använda processen i följande blogg, men se till att exportera kodsigneringscertifikatet från certifieringssökvägen: Lägga till ett certifikat i betrodda utgivare med hjälp av Intune.

Behörigheter

Följande behörigheter krävs för CMPivot:

  • Kör CMPivot-behörighetsamlingen
  • Läsbehörighetför inventeringsrapporter
  • Läsbehörighet för SMS Scripts-objektet
    • Läsning för SMS-skript krävs inte från och med version 2107
    • CMPivot behöver inte Läsa för SMS-skript för det primära scenariot med början i version 2107. Men om administrationstjänsten är nere och behörigheten har tagits bort misslyckas CMPivot när administrationstjänsten faller tillbaka. SMS-providern kräver fortfarande läsbehörighet för SMS-skript om administrationstjänsten återgår till det på grund av ett 503-fel (tjänsten är inte tillgänglig), som du ser i CMPivot.log.
  • Standardomfånget.
    • Standardomfånget krävs inte från och med version 2107

CMPivot-behörigheter efter Configuration Manager version

1902 och tidigare Versioner 1906 till 2103 2107 eller senare
Kör skriptbehörighet för samlingen Kör CMPivot-behörighetsamlingen Kör CMPivot-behörighetsamlingen
Läsbehörighetför inventeringsrapporter Läsbehörighetför inventeringsrapporter Läsbehörighetför inventeringsrapporter
Läsbehörighet för SMS-skript Läsbehörighet för SMS-skript

EJ SMS-providern kräver fortfarande läsbehörighet för SMS-skript om administrationstjänsten återgår till den på grund av ett 503-fel (tjänsten är inte tillgänglig), som du ser i CMPivot.log.
Standardbehörighet för omfång Standardbehörighet för omfång EJ TILLÄMPLIGT

Begränsningar

  • CMPivot returnerar endast data för klienter som är anslutna till den aktuella platsen om de inte körs från den centrala administrationsplatsen (CAS).
    • Om en samling innehåller enheter från en annan plats kommer CMPivot-resultat endast från enheter på den aktuella platsen om inte CMPivot körs från CAS.
    • I vissa miljöer krävs ytterligare behörigheter för att CMPivot ska kunna köras på CAS. Mer information finns i CMPivot-ändringar för version 1902.
  • Du kan inte anpassa entitetsegenskaper, kolumner för resultat eller åtgärder på enheter.
  • Endast en instans av CMPivot kan köras samtidigt på en dator som kör Configuration Manager-konsolen.
  • I fristående CMPivot kan du inte komma åt CMPivot-frågor som lagras i Community-hubben.
  • När enkel inloggning med multifaktorautentisering används kanske du inte kan logga in på Community Hub från CMPivot när du använder Configuration Manager 2103 och tidigare.

Starta CMPivot

  1. I Configuration Manager-konsolen ansluter du till den primära platsen eller CAS. Gå till arbetsytan Tillgångar och efterlevnad och välj noden Enhetssamlingar . Välj en målsamling och välj Starta CMPivot i menyfliksområdet för att starta verktyget. Om du inte ser det här alternativet kontrollerar du följande konfigurationer:

    • Bekräfta med en webbplatsadministratör att ditt konto har de behörigheter som krävs. Mer information finns i Krav.
  2. Gränssnittet innehåller ytterligare information om hur du använder verktyget.

    • Ange frågesträngar överst manuellt eller välj länkarna i den infogade dokumentationen.

    • Välj en av entiteterna för att lägga till den i frågesträngen.

    • Länkarna för tabelloperatorer, aggregeringsfunktioner och skalärfunktioner öppnar språkreferensdokumentation i webbläsaren. CMPivot använder Kusto-frågespråk (KQL).

  3. Håll CMPivot-fönstret öppet för att visa resultat från klienter. När du stänger CMPivot-fönstret är sessionen klar.

    • Om frågan har skickats skickar klienterna fortfarande ett tillståndsmeddelandesvar till servern.

Använda CMPivot

Exempel på CMPivot-fönster

Fönstret CMPivot innehåller följande element:

  1. Samlingen som CMPivot för närvarande riktar in sig på finns i namnlisten överst och statusfältet längst ned i fönstret. Till exempel "PM_Team_Machines" i skärmbilden ovan.

  2. I fönstret till vänster visas de entiteter som är tillgängliga på klienter. Vissa entiteter förlitar sig på WMI medan andra använder PowerShell för att hämta data från klienter.

    • Högerklicka på en entitet för följande åtgärder:

      • Infoga: Lägg till entiteten i frågan vid aktuell markörposition. Frågan körs inte automatiskt. Den här åtgärden är standard när du dubbelklickar på en entitet. Använd den här åtgärden när du skapar en fråga.

      • Fråga alla: Kör en fråga för den här entiteten inklusive alla egenskaper. Använd den här åtgärden för att snabbt fråga efter en enda entitet.

      • Fråga efter enhet: Kör en fråga för den här entiteten och gruppera resultatet. Till exempel Disk | summarize dcount( Device ) by Name

    • Expandera en entitet för att se specifika egenskaper som är tillgängliga för varje entitet. Dubbelklicka på en egenskap för att lägga till den i frågan vid aktuell markörposition.

  3. Fliken Start visar allmän information om CMPivot, inklusive länkar till exempelfrågor och stöddokumentation.

  4. På fliken Fråga visas frågefönstret, resultatfönstret och statusfältet. Frågefliken är markerad i skärmbildsexemplet ovan.

  5. I frågefönstret skapar eller skriver du en fråga som ska köras på klienter i samlingen.

    • CMPivot använder en delmängd av Kusto-frågespråk (KQL).

    • Klipp ut, kopiera eller klistra in innehåll i frågefönstret.

    • Som standard använder det här fönstret IntelliSense. Om du till exempel börjar skriva Dföreslår IntelliSense alla entiteter som börjar med den bokstaven. Välj ett alternativ och tryck på Tabb för att infoga det. Skriv ett pipe-tecken och ett blanksteg | , och sedan föreslår IntelliSense alla tabelloperatorer. Infoga summarize och skriv ett blanksteg, och IntelliSense föreslår alla aggregeringsfunktioner. Om du vill ha mer information om dessa operatorer och funktioner väljer du fliken Start i CMPivot.

    • Frågefönstret innehåller också följande alternativ:

      • Kör frågan.

        • Om du vill köra din aktuella CMPivot-fråga på klienterna igen håller du ned Ctrl medan du klickar på Kör.
      • Flytta fram och tillbaka i historiklistan med frågor.

      • Skapa en direkt medlemskapssamling.

      • Exportera frågeresultatet till CSV eller Urklipp.

  6. I resultatfönstret visas de data som returneras av aktiva klienter för frågan.

    • De tillgängliga kolumnerna varierar beroende på entiteten och frågan.

    • Färgmättnad för data i resultattabellen eller diagrammet anger om data är aktiva eller från den senaste maskinvaruinventeringsgenomsökningen som lagrats i platsdatabasen. Svart är till exempel realtidsdata från en onlineklient medan grå är cachelagrade data.

    • Välj ett kolumnnamn för att sortera resultatet efter den egenskapen.

    • Högerklicka på ett kolumnnamn om du vill gruppera resultatet efter samma information i kolumnen eller sortera resultatet.

    • Högerklicka på ett enhetsnamn för att vidta följande ytterligare åtgärder på enheten:

    • Högerklicka på valfri cell som inte är en enhet för att vidta följande ytterligare åtgärder:

      • Kopiera: Kopiera texten i cellen till Urklipp.

      • Visa enheter med: Fråga efter enheter med det här värdet för den här egenskapen. Från resultatet av OS frågan väljer du till exempel det här alternativet i en cell på raden Version: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ > 0)

      • Visa enheter utan: Fråga efter enheter utan det här värdet för den här egenskapen. Från resultatet av OS frågan väljer du till exempel det här alternativet i en cell på raden Version: OS | summarize countif( (Version == '10.0.17134') ) by Device | where (countif_ == 0) | project Device

      • Bing it: Starta standardwebbläsaren till https://www.bing.com med det här värdet som frågesträng.

    • Välj valfri hyperlänkad text för att pivoteras vyn för den specifika informationen.

    • Resultatfönstret visar inte fler än 20 000 rader. Justera frågan för att filtrera data ytterligare eller starta om CMPivot i en mindre samling.

  7. Statusfältet visar följande information (från vänster till höger):

    • Status för den aktuella frågan för målsamlingen. Den här statusen omfattar:

      • Antalet aktiva klienter som slutförde frågan (3)

      • Antalet klienter totalt (5)

      • Antalet offlineklienter (2)

      • Alla klienter som returnerade fel (0)

        Till exempel: Query completed on 3 of 5 clients (2 clients offline and 0 failure)

    • ID för klientåtgärden. Till exempel: id(16780221)

    • Den aktuella samlingen. Till exempel: PM_Team_Machines

    • Det totala antalet rader i resultatfönstret. Till exempel 1 objects

Tips

Från och med version 2107 använder du knappen Fråga enheter igen eller Ctrl + F5 för att tvinga klienten att hämta data igen för frågan. Att använda Query-enheter igen är användbart när du förväntar dig att data ska ändras på enheten sedan den senaste frågan, till exempel under felsökningen. Om du väljer Kör fråga igen när de första resultaten returneras parsas endast de data som CMPivot redan har hämtat från klienten.

Skärmbild av knappen fråga enheter igen som visar knappbeskrivningen att Ctrl + F5 är en genväg för att tvinga klienter att hämta data igen.

Publicera fråga till community-hubben från CMPivot

(Gäller för version 2107 eller senare)

Från och med version 2107 kan du publicera en CMPivot-fråga till Community-hubben direkt från CMPivot-fönstret. Att skicka dina frågor direkt via CMPivot gör det enklare att bidra till Community Hub.

Du behöver följande krav för CMPivot och för att bidra till community-hubben:

  1. Gå till arbetsytan Tillgångar och efterlevnad och välj sedan noden Enhetssamlingar .

  2. Välj en målsamling, målenhet eller grupp med enheter och välj sedan Starta CMPivot i menyfliksområdet för att starta verktyget.

  3. I fönstret CMPivot väljer du ikonen Community-hubb på menyn.

    Community Hub-ikon

  4. Välj Logga in och logga sedan in på GitHub.

  5. Skapa en CMPivot-fråga och välj sedan Kör fråga för att verifiera att den fungerar som förväntat.

    • Du kan också välja mappikonen för att komma åt listan med favoriter för att använda en fråga som du redan har skapat.
  6. Välj länken Publicera överst i CMPivots community-hubbfönster när du är redo att skicka frågan.

    Skärmbild av fönstret Community Hub i CMPivot som visar publiceringsfliken

  7. Ge frågan ett namn och en beskrivning och välj sedan knappen Publicera för att skicka frågan till Community-hubben.

  8. När bidraget är klart kan du komma åt frågan när som helst från fliken Jag .

  9. Om du vill visa GitHub-pullbegäran (PR) går du till https://github.com/Microsoft/configmgr-hub/pulls. Du kan också komma åt PR-länken från hubbsidan i noden Community Hub .

    • PR:er bör inte skickas direkt till GitHub-lagringsplatsen.

Obs!

  • När du publicerar en fråga via CMPivot kan du för närvarande inte redigera eller ta bort den efter publiceringen.
  • Community-hubben är endast tillgänglig i CMPivot när du kör den från Configuration Manager-konsolen. Community-hubben är inte tillgänglig från fristående CMPivot.

Exempelscenarier för CMPivot

Följande avsnitt innehåller exempel på hur du kan använda CMPivot i din miljö:

Exempel 1: Stoppa en tjänst som körs

Säkerhetsadministratören ber dig att stoppa och inaktivera tjänsten Computer Browser så snabbt som möjligt på alla enheter på ekonomiavdelningen. Du startar CMPivot på en samling för alla enheter i redovisningen och väljer Fråga alla i tjänstentiteten .

Service

När resultatet visas högerklickar du på kolumnen Namn och väljer Gruppera efter.

Service | summarize dcount( Device ) by Name

På raden för webbläsartjänsten väljer du det hyperlänkade numret i kolumnen dcount_ .

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

Du väljer alla enheter flera, högerklickar på markeringen och väljer Kör skript. Den här åtgärden startar guiden Kör skript, där du kör ett befintligt skript som du har för att stoppa och inaktivera en tjänst. Med CMPivot svarar du snabbt på säkerhetsincidenten för alla aktiva datorer och visar resultatet i guiden Kör skript. Sedan följer du upp för att skapa en konfigurationsbaslinje för att åtgärda andra datorer i samlingen när de blir aktiva i framtiden.

CMPivot-exempel för webbläsartjänsten och åtgärden Kör skript

Exempel 2: Lös programfel proaktivt

För att vara proaktiv med driftunderhåll kör du CMPivot en gång i veckan mot en samling servrar som du hanterar och väljer Fråga allaAppCrash-entiteten . Du högerklickar på kolumnen FileName och väljer Sortera stigande. En enhet returnerar sju resultat för sqlsqm.exe med en tidsstämpel cirka 03:00 varje dag. Du väljer filnamnet på en av raderna, högerklickar på den och väljer Bing It. Om du bläddrar i sökresultaten i webbläsaren hittar du en Microsoft supportartikel för det här problemet med mer information och lösning.

Exempel 3: BIOS-version

Ett av kraven är att uppdatera systemets BIOS för att minimera sårbarheter i spekulativ körningsväg. Du börjar med en fråga för BIOS-entiteten . Sedan grupperar du efter egenskapen Version . Högerklicka sedan på ett specifikt värde, till exempel "LENOVO - 1140", och välj Visa enheter med.

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

Exempel 4: Ledigt diskutrymme

Du måste tillfälligt lagra en stor fil på en nätverksfilserver, men är inte säker på vilken som har tillräckligt med kapacitet. Starta CMPivot mot en samling filservrar och fråga diskentiteten . Ändra frågan för CMPivot för att snabbt returnera en lista över aktiva servrar med lagringsdata i realtid:

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

Fristående CMPivot

Du kan använda CMPivot som en fristående app. Fristående CMPivot är endast tillgängligt på engelska. Kör CMPivot utanför Configuration Manager-konsolen för att visa realtidstillståndet för enheter i din miljö. Med den här ändringen kan du använda CMPivot på en enhet utan att först installera -konsolen.

Du kan dela kraften i CMPivot med andra personer, till exempel supportavdelningen eller säkerhetsadministratörer, som inte har konsolen installerad på sin dator. Dessa andra personer kan använda CMPivot för att fråga Configuration Manager tillsammans med de andra verktyg som de traditionellt använder. Genom att dela dessa omfattande hanteringsdata kan du arbeta tillsammans för att proaktivt lösa affärsproblem som korsar roller.

Installera fristående CMPivot

  1. Konfigurera de behörigheter som krävs för att köra CMPivot. Mer information finns i krav. Du kan också använda rollen Säkerhetsadministratör om behörigheterna är lämpliga för användaren.

  2. Leta upp installationsprogrammet för CMPivot-appen i följande sökväg: <site install path>\tools\CMPivot\CMPivot.msi. Du kan köra den från den sökvägen eller kopiera den till en annan plats.

  3. När du kör den fristående CMPivot-appen uppmanas du att ansluta till en webbplats. Ange det fullständigt kvalificerade domännamnet eller datornamnet för antingen den centrala administrationen eller den primära platsservern.

    • Varje gång du öppnar fristående CMPivot uppmanas du att ansluta till en platsserver.
  4. Bläddra till den samling där du vill köra CMPivot och kör sedan frågan.

    Bläddra till den samling som du vill köra frågan mot

Obs!

  • Högerklicka på åtgärder, till exempel Kör skript, Resursläsaren och webbsökning är inte tillgängliga i cmpivot fristående. CmPivots primära användning är att köra frågor oberoende av den Configuration Manager infrastrukturen. För att hjälpa säkerhetsadministratörer omfattar fristående CMPivot möjligheten att ansluta till Microsoft Defender Säkerhetscenter.
  • Du kan utvärdera frågor på lokala enheter med fristående CMPivot.

Inuti CMPivot

CMPivot skickar frågor till klienter med hjälp av Configuration Manager "snabb kanal". Den här kommunikationskanalen från server till klient används också av andra funktioner som klientmeddelandeåtgärder, klientstatus och Endpoint Protection. Klienter returnerar resultat via det liknande snabbtillståndsmeddelandesystemet. Tillståndsmeddelanden lagras tillfälligt i databasen. Mer information om portarna som används för klientmeddelanden finns i artikeln Portar .

Frågorna och resultaten är bara text. Entiteterna InstallSoftware och Process returnerar några av de största resultatuppsättningarna. Under prestandatestningen var den största statusmeddelandefilens storlek från en klient för dessa frågor mindre än 1 kB. Den här engångsfrågan skalas till en stor miljö med 50 000 aktiva klienter och genererar mindre än 50 MB data i nätverket. Alla objekt på välkomstsidan som är understrukna returnerar mindre än 1 KB information per klient.

Exempel på CMPivot-understrukna entiteter

Från och med Configuration Manager 1810 kan CMPivot fråga efter maskinvaruinventeringsdata, inklusive utökade maskinvaruinventeringsklasser. Dessa nya entiteter (entiteter som inte är understrukna på välkomstsidan) kan returnera mycket större datamängder, beroende på hur mycket data som definieras för en viss maskinvaruinventeringsegenskap. Entiteten "InstalledExecutable" kan till exempel returnera flera MB data per klient, beroende på de specifika data som du frågar efter. Tänk på prestanda och skalbarhet på dina system när du returnerar större maskinvaruinventeringsdatauppsättningar från större samlingar med CMPivot.

En fråga överskrider tidsgränsen efter en timme. En samling har till exempel 500 enheter och 450 av klienterna är för närvarande online. De aktiva enheterna tar emot frågan och returnerar resultatet nästan omedelbart. Om du lämnar CMPivot-fönstret öppet, när de andra 50 klienterna är online, får de även frågan och returnerar resultat.

Loggfiler

CMPivot-interaktioner loggas till följande loggfiler:

Serversidan:

  • SmsProv.log
  • BgbServer.log
  • StateSys.log

Klientsidan:

  • CcmNotificationAgent.log
  • Scripts.log
  • StateMessage.log

Mer information finns i Loggfiler och Felsöka CMPivot.

Nästa steg