Forum Discussion
VM with Public IP
Hi All,
Can someone help me with query to get list of VM names and public IP address assigned to them.
Also how to create view in dashboard for the same as I dont have permission to modify or share existing shared dashboards, hence need the output in my private dashboard.
thanks in advance
Here is a blog post about visualizing data from resource graph in Azure Dashboards: https://samcogan.com/visualise-your-azure-resource-with-resource-graph-explorer/
Azure Monitor workbooks can also visualize data from the resource graph:
https://docs.microsoft.com/en-us/azure/azure-monitor/app/usage-workbooks
Below you can find the resource graph query. Keep in mind you can get only the IP address of static ip address:
Resources | where type =~ "Microsoft.Network/networkInterfaces" | mv-expand properties.ipConfigurations | where isnotempty(properties_ipConfigurations.properties.publicIPAddress.id) | extend publicIpId = tostring(properties_ipConfigurations.properties.publicIPAddress.id) | join ( Resources | where type =~ "microsoft.network/publicipaddresses" ) on $left.publicIpId == $right.id | extend ipAddress = tostring(properties1.ipAddress) | extend publicIPAllocationMethod = tostring(properties1.publicIPAllocationMethod) | extend publicIpName = tostring(name1) | extend vmId = tostring(properties.virtualMachine.id) | where notempty(vmId) | join ( Resources | where type == "microsoft.compute/virtualmachines" ) on $left.vmId == $right.id | extend name = name2 | extend resourceGroup = resourceGroup2 | project name, resourceGroup,publicIpName, publicIPAllocationMethod, ipAddress
8 Replies
HiRahul_Mahajan Can you specify more details? Are these for Azure VMs? Also it is important to understand that Log Analytics does not have such information. Trough Heartbeat data you can get the public IP address from which the VM communicates to internet but it does not mean that the VM itself have such information. On the other hand this information should be possible to find via Resource Graph if it is only for Azure VMs. Data from Azure Resource Graph can be visualized in dashboard. Is that what you are looking for?
- Rahul_MahajanBrass Contributor
Yes, exactly that's what I am looking for.
Also when I am trying to create visual using query all things pointing to Visual Designer but I am not able to find in Azure portal, seems to be depreciated. Do we have any alternative for it?
I am trying to create something like :
https://adinermie.com/using-azure-backup-logs-azure-log-analytics-aka-oms/
Here is a blog post about visualizing data from resource graph in Azure Dashboards: https://samcogan.com/visualise-your-azure-resource-with-resource-graph-explorer/
Azure Monitor workbooks can also visualize data from the resource graph:
https://docs.microsoft.com/en-us/azure/azure-monitor/app/usage-workbooks
Below you can find the resource graph query. Keep in mind you can get only the IP address of static ip address:
Resources | where type =~ "Microsoft.Network/networkInterfaces" | mv-expand properties.ipConfigurations | where isnotempty(properties_ipConfigurations.properties.publicIPAddress.id) | extend publicIpId = tostring(properties_ipConfigurations.properties.publicIPAddress.id) | join ( Resources | where type =~ "microsoft.network/publicipaddresses" ) on $left.publicIpId == $right.id | extend ipAddress = tostring(properties1.ipAddress) | extend publicIPAllocationMethod = tostring(properties1.publicIPAllocationMethod) | extend publicIpName = tostring(name1) | extend vmId = tostring(properties.virtualMachine.id) | where notempty(vmId) | join ( Resources | where type == "microsoft.compute/virtualmachines" ) on $left.vmId == $right.id | extend name = name2 | extend resourceGroup = resourceGroup2 | project name, resourceGroup,publicIpName, publicIPAllocationMethod, ipAddress