Enhetsfråga för flera enheter

Använd Enhetsfråga för flera enheter i Microsoft Intune för att köra Kusto-frågespråk-frågor (KQL) över enhetsinventeringsdata och identifiera trender i din hanterade flotta. Den här artikeln förklarar förutsättningar, hur du skapar och kör frågor i Intune administrationscenter, hur du arbetar med resultat och vilka operatorer, funktioner och egenskaper som stöds.

Innan du börjar

  • Bekräfta att miljön uppfyller alla krav.

Ytterligare krav för enhetsfråga för flera enheter:

Krav på enhetsplattform

Enhetsfråga för flera enheter stöder:

  • Windows
  • Android
    • Android Enterprise företagsägda dedikerade enheter (COSU)
    • Android Enterprise företagsägd fullständigt hanterad (COBO)
    • Android Enterprise företagsägd arbetsprofil (COPE)
  • Apple
    • iOS/iPadOS
    • macOS

Krav för enhetskonfiguration

Enhetsfråga för flera enheter stöder enheter som är:

  • Hanteras av Intune och markeras som företagsägt.
  • För att samla in inventeringsdata måste en princip för egenskapskatalog distribueras för Windows-enheter.
    För iOS/iPadOS, Android och macOS samlas data in automatiskt och en separat princip för egenskapskatalogen behöver inte distribueras.

Rollkrav

Om du vill använda Enhetsfråga för flera enheter använder du ett konto med minst en av följande roller:

  • Supportoperatör
  • Anpassad roll som omfattar:
    • Behörigheten Hanterade enheter/fråga
    • Behörigheter som ger insyn i och åtkomst till hanterade enheter i Intune (till exempel Organisation/Läsa, Hanterade enheter/Läsa)

Använda enhetsfråga för flera enheter

  1. I administrationscentret för Microsoft Intune väljer du Enhetsfråga>.
  2. Skriv en fråga i frågerutan med hjälp av de egenskaper och operatorer som stöds.
  3. Välj Kör för att köra frågan.
  4. Visa resultatet på fliken Resultat .
    • Om du vill köra en del av en fråga eller en enstaka fråga när det finns flera frågor, markerar du frågan du vill köra och väljer Kör. Endast den markerade frågan körs.

Du kan expandera vyn till vänster om du vill se alla tillgängliga egenskaper som du kan köra frågor om. Välj en egenskap för att infoga den i frågan. Du kan också ändra storlek på det vänstra fönstret och frågefönstret för att justera layouten.

Mer information om Kusto-frågespråk (KQL) finns i Läs mer om Kusto-frågespråk.

Tips

Använd Copilot i Intune för att generera KQL-frågor för enhetsfrågor med hjälp av begäranden på naturligt språk. Mer information finns i Fråga med Copilot i enhetsfråga.

Frågeresultat och åtgärder

När du har kört en fråga visas resultaten på fliken Resultat . Du kan interagera med resultaten på flera sätt:

  • När en fråga returnerar 50 objekt eller färre kan du söka i alla rader i resultatet och tillämpa filter med hjälp av kolumnrubriker.
  • Skapa Microsoft Entra säkerhetsgrupper direkt från en frågas resultat genom att välja Lägg till alla objekt i en grupp. Den här åtgärden hjälper dig att rikta in dig på specifika enheter med Microsoft Entra principer för villkorsstyrd åtkomst eller Microsoft Intune principer.
  • Välj Exportera om du vill spara resultaten i en .csv fil. Du kan exportera alla kolumner eller bara markerade kolumner. Du kan exportera upp till 50 000 resultat till en fil.

Exempelfrågor

Det här avsnittet innehåller några exempelfrågor som hjälper dig att komma igång. Om du vill komma åt exempelfrågorna expanderar du avsnittet exempelfrågor under sidan Komma igång och väljer den fråga som du vill lägga till i frågefönstret. I följande avsnitt visas listan med exempelfrågor.

De vanligaste processorerna efter antal kärnor

Den här frågan visar de fem främsta processorerna efter antal kärnor.

Cpu
| project Device, ProcessorId, Model, Architecture, CpuStatus, ProcessorType, CoreCount, LogicalProcessorCount, Manufacturer, AddressWidth
| order by CoreCount asc
| take 5

Enheter med oskyddade diskar

Den här frågan visar enheter med okrypterade diskar.

EncryptableVolume
| where ProtectionStatus != "PROTECTED"
| join LogicalDrive on Device

ARM64-enheter

Den här frågan visar alla enheter med en ARM64-processor.

Cpu
| where Architecture == "ARM64"

Antal enheter efter processorarkitektur

Den här frågan ger en sammanfattning av enheter efter CPU-arkitektur.

Cpu
| summarize DeviceCount = count() by Architecture

De populäraste enheterna efter batterikapacitet

Den här frågan visar de 10 främsta enheterna efter fulladdad batterikapacitet.

Battery
| project Device, InstanceName, Manufacturer, Model, SerialNumber, CycleCount,
          DesignedCapacity,
          FullChargedCapacity,
          FullChargedCapacityPercent = (FullChargedCapacity * 100) / DesignedCapacity
| top 10 by FullChargedCapacityPercent asc

Minnesinformation för enheter

Den här frågan visar enheter med fysiskt och virtuellt minne i GB.

MemoryInfo
| project Device,
          PhysicalMemoryGB = PhysicalMemoryTotalBytes/(1000*1000*1000),
          VirtualMemoryGB = VirtualMemoryTotalBytes/(1000*1000*1000)
| order by PhysicalMemoryGB asc

Antal enheter efter OS-version

Den här frågan ger en sammanfattning av enheter efter OS-version.

OsVersion| summarize DevicesCount = count() by OsVersion

Information om enhetens BIOS

Den här frågan visar enheter baserat på BIOS-tillverkaren.

BiosInfo| where Manufacturer contains "Microsoft"

TPM-inaktiverade enheter

Den här frågan visar enheter som har TPM inaktiverat.

Tpm | where Enabled != true

Operatorer som stöds

Enhetsfråga stöder endast en delmängd av de operatorer som stöds i Kusto-frågespråk (KQL). Följande operatorer stöds för närvarande:

Tabelloperatorer

Tabelloperatorer kan användas för att filtrera, sammanfatta och transformera dataströmmar. Följande operatorer stöds:

Tabelloperator Beskrivning
count Returnerar en tabell med en enda post som innehåller antalet poster.
distinct Skapar en tabell med distinkta kombinationer av de angivna kolumnerna från indatatabellen.
join Sammanfogar rader från två tabeller till en ny tabell baserat på överensstämmande värden i de angivna kolumnerna. Följande kopplingstyper stöds:
- innerunique (standard)
- inner
- leftouter
- rightouter
- fullouter
- leftsemi
- rightsemi
- leftanti
- rightanti

Kopplingsinstruktioner stöder en valfri on sats. I enhetsfrågescenarier använder on Device du vanligtvis när du kopplar tabeller som innehåller en Device entitet. Vanlig syntax för join är: LeftTable | join [hints] (RightTable) on Conditions.

Viktigt: Kopplingar som används on Device.DeviceID stöds inte längre. Frågor som för närvarande anger on Device.DeviceId ska växla till att använda on Deviceeller utelämna satsen on när de ansluter till entiteten Device .

Mer information finns i Kopplingsoperator.
order by Sorterar raderna i indatatabellen efter en eller flera kolumner.
project Markerar kolumner som du vill inkludera, byter namn på eller tar bort och infogar nya beräknade kolumner.
take Returnerar upp till angivet antal rader.
top Returnerar de första N posterna sorterade efter angivna kolumner.
where Filtrerar en tabell till den delmängd av rader som uppfyller ett predikat.
summarize Skapar en tabell som aggregerar innehållet i indatatabellen.

Obs!

Device är en entitetstyp och kan inte användas direkt i operatorer som kräver skalära värden (till exempel distinct, summarize, och order by). För dessa operatorer använder du en specifik skalära egenskap för enheten (till exempel Device.SerialNumber eller Device.OSVersion).

Skalära operatorer

Skalära operatorer kan användas för att utföra åtgärder på enskilda värden. Följande operatorer stöds:

Operatorer Beskrivning Exempel
== Lika med 1 == 1, 'aBc' == 'AbC'
!= Inte lika med 1 != 2, 'abc' != 'abcd'
< Mindre 1 < 2, 'abc' < 'DEF'
> Större 2 > 1, 'xyz' > 'XYZ'
<= Mindre eller lika med 1 <= 2, 'abc' <= 'abc'
>= Större eller lika med 2 >= 1, 'abc' >= 'ABC'
+ Lägg till 2 + 1, now() + 1d
- Subtrahera 2 - 1, now() - 1h
* Multiplicera 2 * 2
/ Dividera 2 / 1
% Modulo 2 % 1
like LHS innehåller en matchning för RHS 'abc' like '%B%'
contains RHS förekommer som en följd av LHS 'abc' contains 'b'
!contains RHS förekommer inte i LHS 'team' !contains 'i'
startswith RHS är en initial delsekvens av LHS 'team' startswith 'tea'
!startswith RHS är inte en initial delsekvens av LHS 'abc' !startswith 'bc'
endswith RHS är en avslutande delsekvens av LHS 'abc' endswith 'bc'
!endswith RHS är inte en avslutande delsekvens av LHS 'abc' !endswith 'a'
and Sant om och endast om RHS och LHS är sant (1 == 1) and (2 == 2)
or Sant om och endast om RHS eller LHS är sant (1 == 1) or (1 == 2)

Aggregeringsfunktioner

Aggregeringsfunktioner kan användas för att summera data. Följande funktioner stöds:

Funktion Beskrivning
avg() Returnerar medelvärdet av värdena i hela gruppen
count() Returnerar antalet poster per sammanfattningsgrupp
countif() Returnerar antalet rader för vilka predikat utvärderas till sant
dcount() Returnerar antalet distinkta värden i gruppen
max() Returnerar det största värdet i hela gruppen
maxif() Returnerar det högsta värdet i gruppen för vilket predikat utvärderas till sant
min() Returnerar det minsta värdet i hela gruppen
minif() Returnerar det minsta värdet i gruppen för vilket predikat utvärderas till sant
percentile() Returnerar en uppskattning för den angivna percentilen av den närmaste rangordningen i populationen som definieras av Uttr
sum() Returnerar summan av värdena i gruppen
sumif() Returnerar en summa av Uttr för vilket predikat beräknas till sant

Skalära funktioner

Skalära funktioner kan användas för att utföra åtgärder på enskilda värden. Följande funktioner stöds:

Funktion Beskrivning
ago() Subtraherar det angivna tidsintervallet från den aktuella UTC-klocktiden.
bin() Avrundar värden nedåt till ett antal datetime-multipelar för en viss lagerplatsstorlek.
case() Utvärderar en lista över predikat och returnerar det första resultatuttrycket vars predikat är uppfyllt.
datetime_add() Beräknar ett nytt datum/tid från en angiven datumdel multiplicerat med ett angivet värde adderat till ett angivet datum/tid. Negativa värden för parametern amount stöds inte.
datetime_diff() Beräknar skillnaden mellan två datetime-värden.
iif() Utvärderar det första argumentet och returnerar värdet för antingen det andra eller tredje argumentet, beroende på om predikatet utvärderas till sant (andra) eller falskt (tredje).
indexof() Rapporterar det nollbaserade indexet för den första förekomsten av en angiven sträng i indatasträngen.
isnotnull() Utvärderar det enda argumentet och returnerar ett booleskt värde som anger om argumentet utvärderas till ett annat värde än null.
isnull() Utvärderar det enda argumentet och returnerar ett booleskt värde som anger om argumentet utvärderas till ett null-värde.
now() Returnerar aktuell UTC-klocktid.
strcat() Sammanfogar mellan 1 och 64 argument.
strlen() Returnerar indatasträngens längd i tecken.
substring() Extraherar en delsträng från en källsträng med början från ett index till slutet av strängen.
tostring() Konverterar indata till en strängrepresentation.

Egenskaper som stöds

Enhetsfråga stöder följande entiteter. Mer information om vilka egenskaper som stöds för varje entitet finns i Intune dataplattformsschema.

  • Apple Auto Setup Admin Accounts
  • Apple Device States
  • Apple Update Settings
  • Battery
  • Bios Info
  • Bluetooth
  • Cellular
  • CPU
  • Device Storage
  • Disk Drive
  • Encryptable Volume
  • Local AI Agent
  • Logical Drive
  • Memory Info
  • Network Adapter
  • Os Version
  • Shared iPad
  • Sim Info
  • System Enclosure
  • SystemInfo
  • Time
  • Tpm
  • Video Controller
  • Windows Qfe

Enhetsentitet

Enhetsfråga för flera enheter stöder en länkad entitet. Enhetsentiteten kan användas med alla andra entiteter som stöds. Enhetsentiteten stöder följande egenskaper:

Egenskap Typ Beskrivning
DeviceId Sträng Ett unikt ID som genereras av Intune som en del av enhetsregistreringen.
EntraDeviceId Sträng Unikt ID som genereras av Microsoft Entra som en del av Microsoft Entra registrering eller anslutning.
ManagementName Sträng Ett lätt igenkännligt enhetsnamn som bara används i Intune administrationscenter. När du ändrar det här namnet ändras inte enhetsnamnet eller namnet i företagsportalen.
DeviceName Sträng Namnet på enheten
SerialNumber Sträng Enhetens serienummer
Manufacturer Sträng Enhetens tillverkare
Model Sträng Enhetens modell
OSDescription Sträng Fullständig beskrivning av operativsystemversionen
OSVersion Sträng Enhetens operativsystemversion
EnrollmentProfileName Sträng Namnet på den registreringsprofil som är tilldelad till enheten. Standardvärdet är en tom sträng som anger att ingen registreringsprofil har tilldelats enheten.
EnrolledDateTime Datetime (datumtid) Datum och tid då enheten registrerades i Intune.
CertExpirationDateTime Datetime (datumtid) Rapporterar förfallodatum för enhetshanteringscertifikat.
EnrolledByUserId Sträng Unik identifierare för den användare som har registrerat enheten
PrimaryUserId Sträng Unik identifierare för användaren som är associerad med enheten.
LastLoggedOnUserId Sträng Unikt ID för den användare som senast loggade in på enheten.
InCompliancePeriodUntilDateTime Datetime (datumtid) DateTime när respitperioden för enhetsefterlevnad går ut
DeviceCategoryId Sträng Enhetskategorins visningsnamn. Standardvärdet är en tom sträng.
LastSeenDateTime Sträng Datum och tid då enheten senast anslöt till Intune.
Ownership Sträng Ägarskap för enheten.

Med Device entiteten kan du referera till enhetsinformation som är associerad med varje resulterande rad utan att uttryckligen behöva ansluta till en enhetstabell.

Som standard innehåller frågeresultaten en Device entitetskolumn som innehåller enhetskontext för varje rad. Operatorer som project, summarize, kan distinct ändra vilka kolumner som returneras.

Device Representerar enheten som är associerad med den resulterande raden och kan refereras direkt som en kolumn av entitetstyp. När entiteten Device visas i frågeresultat visas den med hjälp av en egen identifierare, till exempel enhetsnamnet, för att göra det enklare att identifiera enheter.

Du kan referera till egenskaper för entiteten Device i frågor med hjälp av Device.[Property].

Följande fråga returnerar all DiskDrive information för enheter med ett visst serienummer:

DiskDrive
| where Device.SerialNumber == "123"

Följande fråga projicerar entiteten DeviceManufacturer och egenskapen från entiteten DiskDrive :


DiskDrive
| project Device, Manufacturer

Som standard innehåller frågeresultat en Device entitet som representerar enheten som är associerad med varje rad. Entiteten Device är en kolumn av entitetstyp och matchar inte implicit en specifik skalär egenskap. När du sorterar eller filtrerar resultat refererar du uttryckligen till den enhetsegenskap som du vill använda. Den här frågan sorterar till exempel resultat efter enhetsnamn:


MemoryInfo
| order by Device.DeviceName

Om du vill filtrera efter enhetsnamn kan du på samma sätt referera direkt till egenskapen DeviceName :


Cpu
| where Device.DeviceName == "Desktop123"

Kända begränsningar

  • Om du använder kolumner av entitetstyp, till exempel Device i aggregeringsfunktioner, kan en röd understrykning visas i redigeraren eftersom aggregeringsfunktioner kräver skalära värden. Undvik detta genom att referera till en specifik skalär egenskap för entiteten. Till exempel:

    Cpu
    | summarize max(CpuUsage) by Device.Manufacturer
    
  • Frågor som använder operatorn join med $left och $right parametrar kan visa en röd understrykning i redigeraren. Frågan kan dock fortfarande köras och returnera resultat som förväntat.

  • En enskild fråga kan innehålla högst tre join operatorer. Frågor med fler kopplingar misslyckas.

  • Högst ~50 000 poster returneras för en fråga.

  • Högst 10 frågor kan skickas per minut. Ytterligare frågor inom samma minut misslyckas.

  • Högst 1 000 frågor kan skickas per månad.

  • Negativa värden för amount funktionsparametern datetime_add() stöds inte.

  • Att referera till en variabel som har genererats av en aggregeringsfunktion utan att explicit namnge den kan orsaka att frågan misslyckas. Om du namnger variabeln explicit kan frågan lyckas. Till exempel:

    • Device | summarize dcount(DeviceId) | order by dcount_DeviceId Frågan misslyckas.
    • Device | summarize DCountDeviceIdRename = dcount(DeviceId) | order by DCountDeviceIdRename Frågan lyckas.
    • NL2KQL-hjälp för entiteten "Lokal AI-agent" stöds för närvarande inte.