Exempelfrågor för inventering i Power Platform

Följande exempelfrågor körs mot tabellen PowerPlatformResources i tabellen Azure Resource Graph. De omfattar resursräkning och distribution, fältidentifiering, resurssökningar och anslutningsanvändningsanalys. En översikt över Power Platform-inventering finns i Power Platform-inventering. För schema- och fältreferensen, se Power Platform-inventeringsschemareferens.

Så här kör du dessa databasfrågor

Du kan köra någon av dessa frågor från Azure Resource Graph gränssnitt. Stegvisa instruktioner finns i följande snabbstartsguider:

Antal och fördelning

Totalt antal resurser

PowerPlatformResources
| count

Totalt antal per resurstyp

PowerPlatformResources
| summarize resourceCount = count() by type
| order by resourceCount

Antal efter miljö

PowerPlatformResources
| extend properties = parse_json(properties)
| extend environmentId = tostring(properties.environmentId)
| summarize resourceCount = count() by environmentId
| order by resourceCount desc

Antal per region

PowerPlatformResources
| summarize resourceCount = count() by location
| order by resourceCount desc

Främsta ägare efter antal objekt

PowerPlatformResources
| extend properties = parse_json(properties)
| extend ownerId = tostring(properties.ownerId)
| summarize resourceCount = count() by ownerId
| order by resourceCount desc

Resurssökningar

Hitta en enskild agent i klientorganisationen

PowerPlatformResources
| where type == "microsoft.copilotstudio/agents"
| where name == "[Enter the agent's ID]"

Tip

Du hittar agentens ID i Copilot Studio-URL:en när du visar agenten eller i kolumnen Namn i inventeringstabellen.

Räkna agenter efter system

Visar en uppdelning av agenter som har skapats med GitHub Copilot harness, Copilot Chat harness eller Standard harness.

Du kan se en agents sele i kolumnen Harness i administrationscentret för Power Platform under Hantera>Copilot Studio. Den kolumnen är endast en användargränssnittskolumn. Harness returneras ännu inte som metadata för agenten, så den här frågan härleder det utifrån de fält som inventeringen returnerar: properties.isCLIAgent, properties.model och properties.createdIn. När fältet properties.harness blir tillgängligt kan du fråga det direkt i stället. Fältdefinitionerna finns i Microsoft Copilot Studio Agentinventeringsschema.

PowerPlatformResources
| where type == "microsoft.copilotstudio/agents"
| extend properties = parse_json(properties)
| extend
    isCLIAgent = tobool(properties.isCLIAgent),
    model = tostring(properties.model),
    createdIn = tostring(properties.createdIn)
| extend harness = case(
    isCLIAgent == true, "GitHub Copilot",
    model =~ "Microsoft 365 Copilot" or createdIn =~ "Microsoft 365 Copilot Agent Builder", "Copilot Chat",
    "Standard")
| summarize agentCount = count() by harness
| order by agentCount desc

Lista agenter med deras system

Returnerar en rad per agent med dess system, så att du kan hitta och agera på enskilda agenter i stället för att bara räkna dem. Avkommentera raden where för att endast returnera de agenter som byggts med GitHub Copilot harness.

PowerPlatformResources
| where type == "microsoft.copilotstudio/agents"
| extend properties = parse_json(properties)
| extend
    isCLIAgent = tobool(properties.isCLIAgent),
    model = tostring(properties.model),
    createdIn = tostring(properties.createdIn)
| extend harness = case(
    isCLIAgent == true, "GitHub Copilot",
    model =~ "Microsoft 365 Copilot" or createdIn =~ "Microsoft 365 Copilot Agent Builder", "Copilot Chat",
    "Standard")
//| where harness == "GitHub Copilot"
| project agentName = tostring(properties.displayName),
          agentId = name,
          harness,
          environmentId = tostring(properties.environmentId),
          ownerId = tostring(properties.ownerId),
          createdAt = todatetime(properties.createdAt)
| order by harness asc, createdAt desc

Objekt som skapats under de senaste 24 timmarna

PowerPlatformResources
| extend properties = parse_json(properties)
| extend createdAt = todatetime(properties.createdAt)
| where createdAt >= ago(24h)

Power Pages queries (förhandsversion)

Power Pages-frågor använder resurstypen microsoft.powerpages/sites. Power Pages inventering är endast tillgängligt för globala administratörer, Power Platform-administratörer och Dynamics 365 administratörer.

Lista Power Pages webbplatser

Den här frågan returnerar en klientomfattande inventering av Power Pages-platser med deras miljö, ägare och datum för skapande och ändring.

PowerPlatformResources
| where type =~ "microsoft.powerpages/sites"
| extend properties = parse_json(properties)
| project siteName = tostring(properties.displayName),
    siteId = name,
    environmentId = tostring(properties.environmentId),
    ownerId = tostring(properties.ownerId),
    createdOn = todatetime(properties.createdAt),
    lastModifiedOn = todatetime(properties.lastModifiedAt)
| order by siteName asc

Räkna Power Pages-webbplatser per miljö

Den här frågan visar vilka miljöer som innehåller flest Power Pages webbplatser.

PowerPlatformResources
| where type =~ "microsoft.powerpages/sites"
| extend properties = parse_json(properties)
| extend environmentId = tostring(properties.environmentId)
| summarize siteCount = count() by environmentId
| order by siteCount desc

Räkna Power Pages webbplatser efter ägare

Den här frågan visar ägare som är associerade med det största antalet Power Pages webbplatser för att stödja ägargranskningar och planering av affärskontinuitet.

PowerPlatformResources
| where type =~ "microsoft.powerpages/sites"
| extend properties = parse_json(properties)
| extend ownerId = tostring(properties.ownerId)
| summarize siteCount = count() by ownerId
| order by siteCount desc

Power Pages webbplatser med anonym åtkomst aktiverat

Den här frågan hittar webbplatser vars inventeringsmetadata anger att anonym åtkomst tillåts.

PowerPlatformResources
| where type =~ "microsoft.powerpages/sites"
| extend properties = parse_json(properties)
| extend anonymousAccessEnabled = tobool(properties.anonymousAccessAllowed)
| where anonymousAccessEnabled == true
| project siteName = tostring(properties.displayName),
    siteId = name,
    environmentId = tostring(properties.environmentId),
    websiteUrl = tostring(properties.siteUrl)
| order by siteName asc

Nyligen skapade Power Pages webbplatser

Den här frågan returnerar webbplatser som skapats under de senaste 30 dagarna. Justera intervallet efter behov.

PowerPlatformResources
| where type =~ "microsoft.powerpages/sites"
| extend properties = parse_json(properties)
| extend createdOn = todatetime(properties.createdAt)
| where createdOn >= ago(30d)
| project siteName = tostring(properties.displayName),
    siteId = name,
    environmentId = tostring(properties.environmentId),
    ownerId = tostring(properties.ownerId),
    createdOn
| order by createdOn desc

Power Pages webbplatser med anpassade domäner

Den här frågan returnerar platser vars inventeringsmetadata innehåller en anpassad webbplats-URL.

PowerPlatformResources
| where type =~ "microsoft.powerpages/sites"
| extend properties = parse_json(properties)
| extend customDomain = tostring(properties.customSiteUrl)
| where isnotempty(customDomain)
| project siteName = tostring(properties.displayName),
    siteId = name,
    environmentId = tostring(properties.environmentId),
    websiteUrl = tostring(properties.siteUrl),
    customDomain
| order by siteName asc

Power Pages med andra Power Platform-resurser

Den här frågan sammanfattar antalet resurser efter typ och miljö i Power Platform, inklusive Power Pages-platser. Poster utan miljö-ID undantas.

PowerPlatformResources
| extend properties = parse_json(properties)
| extend environmentId = tostring(properties.environmentId)
| where isnotempty(environmentId)
| summarize resourceCount = count() by environmentId, type
| order by environmentId asc, resourceCount desc

Frågor om anslutningsprogram

Följande frågor analyserar användningen av anslutningsprogram bland de resurstyper som täcks av Anslutningsinventering. Varje fråga körs på matrisen properties.powerPlatformConnectors som genereras av arbetsyteappar, modelldrivna appar, appar som är inbyggda Copilot hanterad körning, molnflöden, agentflöden, arbetsflödesagentflöden, Copilot Studio agenter på Standard-sele eller GitHub Copilot sele och agenter som skapats i Microsoft 365 Copilot Agent Builder. Appar som är inbyggda Copilot hanterad körning använder microsoft.powerapps/apps typen med microsoftApp undertypen. Frågorna exkluderar App Builder-appar som använder samma typ men inte genererar anslutningsdata.

De vanligaste anslutningsprogrammen som används i Power Platform-resurser

Listar de anslutningar som används av flest unika resurser. Användbart för att förstå vilka anslutningar som dominerar införandet i hela klientorganisationen.

PowerPlatformResources
| where type in (
    "microsoft.powerapps/canvasapps",
    "microsoft.powerapps/modeldrivenapps",
    "microsoft.powerapps/apps",
    "microsoft.powerautomate/cloudflows",
    "microsoft.powerautomate/agentflows",
    "microsoft.powerautomate/m365agentflows",
    "microsoft.copilotstudio/agents")
| extend properties = parse_json(properties)
| where type != "microsoft.powerapps/apps" or tostring(properties.subType) == "microsoftApp"
| mv-expand connector = properties.powerPlatformConnectors
| extend connectorId = tostring(connector.connectorId)
| where isnotempty(connectorId)
| summarize ResourceCount = dcount(name) by connectorId
| order by ResourceCount desc
| take 10

Fördelning av antal anslutningar per resurs

Visar hur många resurser som använder 0, 1, 2 eller fler anslutningar. Användbart för att upptäcka komplexitetsavvikelser.

PowerPlatformResources
| where type in (
    "microsoft.powerapps/canvasapps",
    "microsoft.powerapps/modeldrivenapps",
    "microsoft.powerapps/apps",
    "microsoft.powerautomate/cloudflows",
    "microsoft.powerautomate/agentflows",
    "microsoft.powerautomate/m365agentflows",
    "microsoft.copilotstudio/agents")
| extend properties = parse_json(properties)
| where type != "microsoft.powerapps/apps" or tostring(properties.subType) == "microsoftApp"
| extend connectorCount = array_length(properties.powerPlatformConnectors)
| summarize ResourceCount = count() by toint(connectorCount)
| order by connectorCount asc

Hitta alla resurser som använder en viss anslutning

Ersätt shared_sharepointonline med den anslutning som du vill söka efter. Den här sökfrågan är användbar vid konsekvensanalys när en anslutning har ett känt problem, håller på att fasas ut eller kräver en ny licens.

PowerPlatformResources
| where type in (
    "microsoft.powerapps/canvasapps",
    "microsoft.powerapps/modeldrivenapps",
    "microsoft.powerapps/apps",
    "microsoft.powerautomate/cloudflows",
    "microsoft.powerautomate/agentflows",
    "microsoft.powerautomate/m365agentflows",
    "microsoft.copilotstudio/agents")
| extend properties = parse_json(properties)
| where type != "microsoft.powerapps/apps" or tostring(properties.subType) == "microsoftApp"
| mv-expand connector = properties.powerPlatformConnectors
| where tostring(connector.connectorId) == "shared_sharepointonline"
| project resourceName = tostring(properties.displayName),
          resourceId = name,
          resourceType = type,
          environmentId = tostring(properties.environmentId),
          operationsUsed = connector.operations

Anslutningsprogramsanvändning efter miljö

Listar alla anslutningar som används i varje miljö, tillsammans med antalet unika resurser som använder dem. Den här listan är användbar för att förstå implementeringsmönster och informera DLP-principbeslut.

PowerPlatformResources
| where type in (
    "microsoft.powerapps/canvasapps",
    "microsoft.powerapps/modeldrivenapps",
    "microsoft.powerapps/apps",
    "microsoft.powerautomate/cloudflows",
    "microsoft.powerautomate/agentflows",
    "microsoft.powerautomate/m365agentflows",
    "microsoft.copilotstudio/agents")
| extend properties = parse_json(properties)
| where type != "microsoft.powerapps/apps" or tostring(properties.subType) == "microsoftApp"
| mv-expand connector = properties.powerPlatformConnectors
| extend connectorId = tostring(connector.connectorId)
| where isnotempty(connectorId)
| extend environmentId = tostring(properties.environmentId)
| summarize ResourceCount = dcount(name) by environmentId, connectorId
| order by environmentId asc, ResourceCount desc