Metodtips för FinOps för nätverk

Den här artikeln beskriver beprövade FinOps-metoder för nätverkstjänster. De fokuserar på kostnadsoptimering, effektivitetsförbättringar och resursinsikter.


Azure Firewall

Följande avsnitt innehåller Azure Resource Graph-frågor (ARG) för Azure Firewall. De här frågorna hjälper dig att få insikter om dina Azure-brandväggsresurser och se till att de är konfigurerade med lämpliga inställningar. Genom att analysera användningsmönster och visa rekommendationer från Azure Advisor kan du optimera dina Azure-brandväggskonfigurationer för kostnadseffektivitet.

Fråga: Analys av Azure-brandväggs- och brandväggsprinciper

Den här ARG-frågan analyserar Azure-brandväggar och deras associerade brandväggsprinciper i din Azure-miljö. Den riktar sig specifikt mot brandväggar med en Premium SKU-nivå och verifierar att konfigurationerna i deras associerade brandväggsprinciper använder premiumfunktionerna.

Kategori

Optimering

Fråga

resources
| where type =~ 'Microsoft.Network/azureFirewalls' and properties.sku.tier=="Premium"
| project FWID=id, firewallName=name, SkuTier=tostring(properties.sku.tier), resourceGroup, location
| join kind=inner (
    resources
    | where type =~ 'microsoft.network/firewallpolicies'
    | mv-expand properties.firewalls
    | extend intrusionDetection = tostring(properties.intrusionDetection contains "Alert"
        or properties.intrusionDetection contains "Deny")
    | extend transportSecurity = tostring(properties.transportSecurity contains "keyVaultSecretId")
    | extend FWID = tostring(properties_firewalls.id)
    | where intrusionDetection == "False"
        and transportSecurity == "False"
    | project
        PolicyName = name,
        PolicySKU = tostring(properties.sku.tier),
        intrusionDetection,
        transportSecurity,
        FWID
) on FWID

Fråga: Azure Firewall och tillhörande undernätsanalys

Den här ARG-frågan analyserar Azure-brandväggar och deras associerade undernät i din Azure-miljö. Den ger insikter om vilka undernät som är associerade med varje Azure-brandväggsinstans. Optimera användningen av Azure-brandväggen genom att ha en central instans av Azure-brandväggen i hubbens virtuella nätverk eller virtual WAN-säker hubb. Dela sedan samma brandvägg i flera virtuella ekernätverk som är anslutna till samma hubb inom samma region.

Kategori

Optimering

Fråga

resources
| where type =~ 'Microsoft.Network/azureFirewalls' and properties.sku.tier=="Premium"
| project
    FWID=id,
    firewallName=name,
    SkuTier=tostring(properties.sku.tier),
    resourceGroup,
    location
| join kind=inner (
    resources
    | where type =~ 'microsoft.network/firewallpolicies'
    | mv-expand properties.firewalls
    | extend intrusionDetection = tostring(properties.intrusionDetection contains "Alert"
        or properties.intrusionDetection contains "Deny")
    | extend transportSecurity = tostring(properties.transportSecurity contains "keyVaultSecretId")
    | extend FWID=tostring(properties_firewalls.id)
    | where intrusionDetection == "False"
        and transportSecurity == "False"
    | project
        PolicyName = name,
        PolicySKU = tostring(properties.sku.tier),
        intrusionDetection,
        transportSecurity,
        FWID
) on FWID

Application Gateway

Azure Application Gateway är en lastbalanserare för webbtrafik som gör det möjligt för dig att hantera trafik till dina webbappar. Den tillhandahåller routnings- och belastningsutjämningstjänster på programnivå som gör att du kan skapa en skalbar och högtillgänglig webbklientdel i Azure.

Relaterade resurser:

Ta bort inaktiva programgatewayer

Rekommendation: Ta bort programgatewayer som inte har några serverdelspooler för att undvika onödiga kostnader.

Om inaktiva programgatewayer

Programgatewayer utan mål för serverdelspooler dirigerar inte aktivt trafik och kan representera oanvända resurser. Dessa inaktiva gatewayer fortsätter att medföra kostnader även om de inte har någon funktion.

Note

FinOps-hubbar kan automatiskt identifiera inaktiva programgatewayer. Läs mer.

Identifiera inaktiva programgatewayar

Använd följande ARG-fråga för att identifiera programgatewayer med tomma serverdelspooler.

resources
| where type =~ 'Microsoft.Network/applicationGateways'
| extend
    backendPoolsCount = array_length(properties.backendAddressPools),
    SKUName = tostring(properties.sku.name),
    SKUTier = tostring(properties.sku.tier),
    SKUCapacity = properties.sku.capacity,
    backendPools = properties.backendAddressPools,
    resourceGroup = strcat('/subscriptions/',subscriptionId,'/resourceGroups/',resourceGroup)
| project id, name, SKUName, SKUTier, SKUCapacity, resourceGroup, subscriptionId
| join (
    resources
    | where type =~ 'Microsoft.Network/applicationGateways'
    | mvexpand backendPools = properties.backendAddressPools
    | extend backendIPCount = array_length(backendPools.properties.backendIPConfigurations)
    | extend backendAddressesCount = array_length(backendPools.properties.backendAddresses)
    | extend backendPoolName = backendPools.properties.backendAddressPools.name
    | summarize
        backendIPCount = sum(backendIPCount),
        backendAddressesCount = sum(backendAddressesCount)
        by id
) on id
| project-away id1
| where (backendIPCount == 0 or isempty(backendIPCount))
    and (backendAddressesCount==0 or isempty(backendAddressesCount))
| order by id asc

Uppgradera klassiska programgatewayer

Rekommendation: Uppgradera Application Gateway v1 SKU till v2 före v1-tillbakadragningsdatumet för att behålla support och åtkomst till förbättrade funktioner.

Om klassiska programgatewayer

Application Gateway v1 SKU (Standard och WAF) dras tillbaka. V2 SKU erbjuder automatisk skalning, zonredundans och bättre prestanda. Migrering till v2 säkerställer fortsatt stöd och kan minska kostnaderna genom automatisk skalning, vilket automatiskt justerar antalet instanser baserat på trafik.

Note

FinOps-hubbar kan automatiskt identifiera klassiska programgatewayer med hjälp av v1 SKU. Läs mer.

Identifiera klassiska programgatewayer

Använd följande ARG-fråga för att identifiera programgatewayer som fortfarande använder V1-SKU:n.

resources
| where type =~ 'microsoft.network/applicationgateways'
| where properties.sku.tier in ('Standard', 'WAF')
| project
    ResourceId = tolower(id),
    ResourceName = name,
    SKUTier = tostring(properties.sku.tier),
    Region = location,
    ResourceGroupName = resourceGroup,
    SubscriptionId = subscriptionId

DDoS Protection

Azure DDoS Protection ger motåtgärder mot de mest avancerade DDoS-hoten. Det ger förbättrade DDoS-minskningsfunktioner för ditt program och resurser som distribueras i dina virtuella nätverk.

Relaterade resurser:

Ta bort Oassocierade DDoS-skyddsplaner

Rekommendation: Ta bort DDoS-skyddsplaner som inte är associerade med något virtuellt nätverk för att undvika onödiga kostnader.

Om Oassocierade DDoS-skyddsplaner

DDoS-skyddsplaner medför en fast månatlig avgift. Planer som inte är associerade med något virtuellt nätverk ger inget skydd men genererar fortfarande kostnader. Att ta bort oanvända planer eliminerar onödiga utgifter.

Note

FinOps-hubbar kan automatiskt identifiera Oassocierade DDoS-skyddsplaner. Läs mer.

Identifiera Oassocierade DDoS-skyddsplaner

Använd följande ARG-fråga för att identifiera DDoS-skyddsplaner som inte är associerade med något virtuellt nätverk.

resources
| where type =~ 'microsoft.network/ddosprotectionplans'
| where isnull(properties.virtualNetworks) or array_length(properties.virtualNetworks) == 0
| project
    ResourceId = tolower(id),
    ResourceName = name,
    Region = location,
    ResourceGroupName = resourceGroup,
    SubscriptionId = subscriptionId

ExpressRoute

Azure ExpressRoute kan du utöka dina lokala nätverk till Microsoft molnet via en privat anslutning. ExpressRoute-kretsar debiteras månatliga avgifter baserat på den etablerade SKU:n och bandbredden.

Relaterade resurser:

Ta bort oetablerade ExpressRoute-kretsar

Rekommendation: Ta bort eller etablera ExpressRoute-kretsar som är i ett icke-etablerat tillstånd för att undvika onödiga avgifter.

Om oetablerade ExpressRoute-kretsar

ExpressRoute-kretsar som förblir i tillståndet "NotProvisioned" transporterar inte aktivt trafik utan medför fortfarande månatliga avgifter. Dessa kretsar kan ha skapats men aldrig slutförts med tjänstleverantören. Att identifiera och ta bort dem eliminerar onödiga kostnader.

Note

FinOps-hubbar kan automatiskt identifiera oetablerade ExpressRoute-kretsar. Läs mer.

Identifiera icke-etablerade ExpressRoute-kretsar

Använd följande ARG-fråga för att identifiera ExpressRoute-kretsar i ett icke-etablerat tillstånd.

resources
| where type =~ 'Microsoft.Network/expressRouteCircuits'
    and properties.serviceProviderProvisioningState == "NotProvisioned"
| extend
    ServiceLocation = tostring(properties.serviceProviderProperties.peeringLocation),
    ServiceProvider = tostring(properties.serviceProviderProperties.serviceProviderName),
    BandwidthInMbps = tostring(properties.serviceProviderProperties.bandwidthInMbps)
| project
    ERId = id,
    ERName = name,
    ERRG = resourceGroup,
    SKUName = tostring(sku.name),
    SKUTier = tostring(sku.tier),
    SKUFamily = tostring(sku.family),
    ERLocation = location,
    ServiceLocation,
    ServiceProvider,
    BandwidthInMbps

Lastbalanserare

Azure Load Balancer fungerar på nivå 4 i OSI-modellen och distribuerar inkommande trafik över felfria serverdelspoolinstanser. Det ger hög tillgänglighet genom att övervaka hälsotillståndet för serverdelsinstanser och automatiskt omdirigera trafik bort från ohälsosamma.

Relaterade resurser:

Ta bort inaktiva lastbalanserare

Rekommendation: Ta bort lastbalanserare som inte har några serverdelspooler för att undvika onödiga kostnader.

Om inaktiva lastbalanserare

Lastbalanserare utan mål i serverdelspoolen fördelar inte trafik aktivt och kan vara oanvända resurser. Standard-SKU-lastbalanserare medför kostnader även när de är inaktiva, så att ta bort oanvända instanser kan minska onödiga utgifter.

Note

FinOps-hubbar kan automatiskt identifiera inaktiva lastbalanserare. Läs mer.

Identifiera inaktiva lastbalanserare

Använd följande ARG-fråga för att identifiera Standard SKU-lastbalanserare med tomma serverdelspooler.

resources
| extend resourceGroup = strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)
| extend SKUName = tostring(sku.name)
| extend SKUTier = tostring(sku.tier)
| extend location,backendAddressPools = properties.backendAddressPools
| where type =~ 'microsoft.network/loadbalancers'
    and array_length(backendAddressPools) == 0
    and sku.name!='Basic'
| order by id asc
| project
    id,
    name,
    SKUName,
    SKUTier,
    backendAddressPools,
    location,
    resourceGroup,
    subscriptionId

Uppgradera grundläggande lastbalanserare

Rekommendation: Uppgradera lastbalanserare med den pensionerade Basic SKU:n till Standard för bättre prestanda, säkerhet och fortsatt stöd.

Om grundläggande lastbalanserare

Basic SKU för Azure Load Balancer drogs tillbaka den 30 september 2025. Grundläggande lastbalanserare tillhandahåller inget serviceavtal, saknar stöd för tillgänglighetszoner och har begränsade diagnostikfunktioner. Uppgradering till Standard SKU ger bättre tillförlitlighet, prestanda och säkerhetsfunktioner.

Note

FinOps-hubbar kan automatiskt identifiera grundläggande lastbalanserare. Läs mer.

Identifiera grundläggande lastbalanserare

Använd följande ARG-fråga för att identifiera lastbalanserare med hjälp av Basic SKU.

resources
| where type =~ 'microsoft.network/loadbalancers'
| where sku.name =~ 'Basic'
| project
    ResourceId = tolower(id),
    ResourceName = name,
    SKUName = tostring(sku.name),
    Region = location,
    ResourceGroupName = resourceGroup,
    SubscriptionId = subscriptionId

NAT-gateway

Azure NAT Gateway tillhandahåller utgående Internetanslutning för virtuella nätverk. NAT-gatewayer förenklar utgående internetanslutning genom att tillhandahålla en hanterad SNAT-tjänst med hög tillgänglighet.

Relaterade resurser:

Ta bort överblivna NAT-gatewayer

Rekommendation: Ta bort NAT-gatewayer som inte är associerade med något undernät för att undvika onödiga avgifter.

Om överblivna NAT-gatewayer

NAT-gatewayer debiteras timavgifter och databehandlingskostnader. Gatewayer som inte är associerade med något undernät tillhandahåller inte utgående anslutning och representerar slösade utgifter. Dessa överblivna gatewayer kan finnas kvar när ett undernät eller ett virtuellt nätverk har konfigurerats om.

Note

FinOps-hubbar kan automatiskt identifiera överblivna NAT-gatewayer. Läs mer.

Identifiera överblivna NAT-gatewayer

Använd följande ARG-fråga för att identifiera NAT-gatewayer som inte är associerade med något undernät.

resources
| where type == "microsoft.network/natgateways"
| where isnull(properties.subnets) or array_length(properties.subnets) == 0
| project
    id,
    GWName = name,
    SKUName = tostring(sku.name),
    SKUTier = tostring(sku.tier),
    Location = location,
    resourceGroup = tostring(strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)),
    subnets = properties.subnets,
    subscriptionId

Nätverksgränssnitt

Azure nätverksgränssnitt gör det möjligt för Azure virtuella datorer att kommunicera med internet, Azure och lokala resurser. Nätverkskort medför inte direkta avgifter, men överblivna nätverkskort kan tyda på missade rensningsmöjligheter och komplicera resurshanteringen.

Ta bort nätverksgränssnitt som inte är kopplade

Rekommendation: Ta bort nätverksgränssnitt som inte är kopplade till någon virtuell dator eller privat slutpunkt för att hålla miljön ren och minska hanteringskostnaderna.

Om nätverksgränssnitt som inte är kopplade

När en virtuell dator tas bort kanske dess associerade nätverksgränssnitt inte rensas automatiskt. Dessa överblivna nätverkskort kan ackumuleras över tid, vilket gör din miljö rörig och eventuellt behålla associerade resurser som offentliga IP-adresser. Även om nätverkskort inte medför direkta avgifter förenklar rensningen av dem resurshanteringen och kan avslöja andra överblivna resurser.

Note

FinOps-hubbar kan automatiskt identifiera nätverksgränssnitt som inte är anslutna. Läs mer.

Identifiera nätverksgränssnitt som inte är kopplade

Använd följande ARG-fråga för att identifiera nätverksgränssnitt som inte är kopplade till någon virtuell dator eller privat slutpunkt.

resources
| where type =~ 'microsoft.network/networkinterfaces'
| where isnull(properties.virtualMachine) and isnull(properties.privateEndpoint)
| project
    ResourceId = tolower(id),
    ResourceName = name,
    PrivateIP = tostring(properties.ipConfigurations[0].properties.privateIPAddress),
    Region = location,
    ResourceGroupName = resourceGroup,
    SubscriptionId = subscriptionId

Nätverkssäkerhetsgrupp

Nätverkssäkerhetsgrupper (NSG:er) filtrerar nätverkstrafik till och från Azure resurser i ett virtuellt nätverk. NSG:er innehåller säkerhetsregler som tillåter eller nekar inkommande och utgående nätverkstrafik.

Ta bort tomma nätverkssäkerhetsgrupper

Rekommendation: Ta bort nätverkssäkerhetsgrupper som inte är associerade med något nätverksgränssnitt eller undernät för att förenkla din miljö och minska hanteringskostnaderna.

Om tomma nätverkssäkerhetsgrupper

NSG:er som inte är associerade med något nätverksgränssnitt eller undernät filtrerar inte aktivt trafik. Dessa oanvända resurser kan ackumuleras under infrastrukturändringar, vilket ökar oredan och komplicerar säkerhetsgranskningar. Att ta bort dem förenklar nätverkshanteringen och hjälper till att upprätthålla en ren miljö.

Note

FinOps-hubbar kan automatiskt identifiera tomma nätverkssäkerhetsgrupper. Läs mer.

Identifiera tomma nätverkssäkerhetsgrupper

Använd följande ARG-fråga för att identifiera NSG:er som inte är associerade med något nätverksgränssnitt eller undernät.

resources
| where type =~ 'microsoft.network/networksecuritygroups'
| where isnull(properties.networkInterfaces) and isnull(properties.subnets)
| project
    ResourceId = tolower(id),
    ResourceName = name,
    Region = location,
    ResourceGroupName = resourceGroup,
    SubscriptionId = subscriptionId

Privat DNS

Följande avsnitt innehåller en ARG-fråga för Privat DNS. Det hjälper dig att få insikter om dina Privat DNS resurser och se till att de är konfigurerade med lämpliga inställningar.

Fråga: Privat DNS

Den här ARG-frågan analyserar privat-DNS-zoner i din Azure-miljö för att identifiera de som saknar länkar till virtuella nätverk.

Kategori

Optimering

Fråga

resources
| where type == "microsoft.network/privatednszones"
    and properties.numberOfVirtualNetworkLinks == 0
| project id, PrivateDNSName=name,
    NumberOfRecordSets = tostring(properties.numberOfRecordSets),
    resourceGroup = tostring(strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)),
    vNets = tostring(properties.properties.numberOfVirtualNetworkLinks),
    subscriptionId

Offentlig IP-adress

Azure offentliga IP-adresser gör det möjligt för Azure resurser att kommunicera med Internet och andra offentliga Azure tjänster. Offentliga IP-adresser tilldelas till resurser som virtuella datorer, lastbalanserare och programgatewayer. Statiska offentliga IP-adresser medför kostnader oavsett om de är associerade med en resurs eller inte.

Relaterade resurser:

Uppgradera grundläggande offentliga IP-adresser

Rekommendation: Uppgradera offentliga IP-adresser med hjälp av den tillbakadragna basic-SKU:n till Standard för bättre säkerhet och fortsatt stöd.

Om grundläggande offentliga IP-adresser

Den grundläggande SKU:n för offentliga IP-adresser i Azure avvecklades den 30 september 2025. Grundläggande offentliga IP-adresser saknar zonredundans, stöder inte routningsinställningar och är öppna för inkommande trafik som standard. Uppgradering till Standard SKU ger zonredundans, säkert som standardbeteende (stängt för inkommande trafik) och stöd för routningsinställningar.

Note

FinOps-hubbar kan automatiskt identifiera grundläggande offentliga IP-adresser. Läs mer.

Identifiera grundläggande offentliga IP-adresser

Använd följande ARG-fråga för att identifiera offentliga IP-adresser med hjälp av Basic SKU.

resources
| where type =~ 'microsoft.network/publicipaddresses'
| where sku.name =~ 'Basic'
| project
    ResourceId = tolower(id),
    ResourceName = name,
    SKUName = tostring(sku.name),
    AllocationMethod = tostring(properties.publicIPAllocationMethod),
    Region = location,
    ResourceGroupName = resourceGroup,
    SubscriptionId = subscriptionId

Ta bort inaktiva offentliga IP-adresser

Rekommendation: Ta bort icke anslutna statiska offentliga IP-adresser för att undvika onödiga nätverkskostnader.

Om inaktiva offentliga IP-adresser

Statiska offentliga IP-adresser medför kostnader oavsett om de är associerade med en resurs. Offentliga IP-adresser som inte är kopplade kan ackumuleras över tid när resurser tas bort, men deras associerade offentliga IP-adresser lämnas kvar. Att identifiera och ta bort dessa överblivna resurser kan minska onödiga kostnader.

Note

FinOps-hubbar kan automatiskt identifiera offentliga IP-adresser som inte är anslutna. Läs mer.

Identifiera inaktiva offentliga IP-adresser

Använd följande ARG-fråga för att identifiera icke anslutna statiska offentliga IP-adresser, inklusive de som är associerade med nätverksgränssnitt som inte är kopplade.

resources
| where type =~ 'Microsoft.Network/publicIPAddresses'
    and isempty(properties.ipConfiguration)
    and isempty(properties.natGateway)
    and properties.publicIPAllocationMethod =~ 'Static'
| extend
    PublicIpId = id,
    IPName = name,
    AllocationMethod = tostring(properties.publicIPAllocationMethod),
    SKUName = sku.name,
    Location = location,
    resourceGroup = strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)
| project PublicIpId, IPName, SKUName, resourceGroup, Location, AllocationMethod, subscriptionId
| union (
    Resources
    | where type =~ 'microsoft.network/networkinterfaces'
        and isempty(properties.virtualMachine)
        and isnull(properties.privateEndpoint)
        and isnotempty(properties.ipConfigurations)
    | extend IPconfig = properties.ipConfigurations
    | mv-expand IPconfig
    | extend PublicIpId= tostring(IPconfig.properties.publicIPAddress.id)
    | project PublicIpId
    | join (
        resource
        | where type =~ 'Microsoft.Network/publicIPAddresses'
        | extend
            PublicIpId = id,
            IPName = name,
            AllocationMethod = tostring(properties.publicIPAllocationMethod),
            SKUName = sku.name,
            resourceGroup,
            Location = location
    ) on PublicIpId
    | project
        PublicIpId,
        IPName,
        SKUName,
        resourceGroup,
        Location,
        AllocationMethod,
        subscriptionId
)

Fråga: Identifiera routningsmetod för offentliga IP-adresser

Den här ARG-frågan analyserar offentliga IP-adresser och identifierar routningsmetod, allokeringsmetod och SKU. Den analyserar också annan information om offentliga IP-adresser som är associerade med en IP-konfiguration.

Kategori

Optimering

Fråga

resources
| where type =~ 'Microsoft.Network/publicIPAddresses'
    and isnotempty(properties.ipConfiguration)
| where tostring(properties.ipTags) == "[]"
| extend
    PublicIpId = id,
    RoutingMethod = id,
    IPName = name,
    AllocationMethod = tostring(properties.publicIPAllocationMethod),
    SKUName = sku.name,
    Location = location,
    resourceGroup = strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)
| project
    PublicIpId,
    IPName,
    RoutingMethod,SKUName,
    resourceGroup,
    Location,
    AllocationMethod,
    subscriptionId

Fråga: Kontrollera de offentliga IP-adressernas DDoS-skyddsprincip

Om du behöver skydda färre än 15 offentliga IP-resurser är IP-skyddsnivån det mer kostnadseffektiva alternativet. Men om du har fler än 15 offentliga IP-resurser att skydda blir nätverksskyddsnivån mer kostnadseffektiv.

Kategori

Optimering

Fråga

resources
| where type == "microsoft.network/publicipaddresses"
| project ddosProtection = tostring(properties.ddosSettings), name
| where ddosProtection has "Enabled"
| count
| project TotalIpsProtected = Count
| extend CheckIpsProtected = iff(TotalIpsProtected >= 15, "Enable Network Protection tier", "Enable PIP DDoS Protection")

Virtuell nätverksgateway

Azure Virtual Network Gateways tillhandahåller anslutningar mellan olika platser mellan dina Azure virtuella nätverk och lokal infrastruktur. Gatewayer debiteras timavgifter baserat på deras SKU.

Relaterade resurser:

Ta bort inaktiva VNet-gatewayer

Rekommendation: Ta bort virtuella nätverksgatewayer som inte har några aktiva anslutningar för att undvika onödiga avgifter.

Om inaktiva VNet-gatewayer

Virtuella nätverksgatewayer medför timkostnader baserat på deras SKU-nivå, oavsett om de används aktivt. Gatewayer utan anslutningar tillhandahåller inte anslutningar mellan platser och representerar slösade utgifter. Dessa inaktiva gatewayer kan finnas kvar efter en migrering eller när anslutningskraven ändras.

Note

FinOps-hubbar kan automatiskt identifiera inaktiva VNet-gatewayer. Läs mer.

Identifiera inaktiva VNet-gatewayer

Använd följande ARG-fråga för att identifiera virtuella nätverksgatewayer utan några aktiva anslutningar.

resources
| where type == "microsoft.network/virtualnetworkgateways"
| extend resourceGroup = strcat('/subscriptions/', subscriptionId, '/resourceGroups/', resourceGroup)
| project id, GWName=name, resourceGroup, location, subscriptionId
| join kind = leftouter(
    resources
    | where type == "microsoft.network/connections"
    | extend id = tostring(properties.virtualNetworkGateway1.id)
    | project id
) on id
| where isempty(id1)
| project
    id,
    GWName,
    resourceGroup,
    location,
    subscriptionId,
    status=id

Lämna feedback

Låt oss veta hur det går med en snabb granskning. Vi använder dessa granskningar för att förbättra och utöka FinOps-verktyg och -resurser.

Om du letar efter något specifikt kan du rösta på en befintlig eller skapa en ny idé. Dela idéer med andra för att få fler röster. Vi fokuserar på idéer med flest röster.


Relaterade resurser:

Relaterade lösningar: