Dela via


Strukturen för Azure-instrumentpaneler

Det här dokumentet går igenom strukturen för en Azure-instrumentpanel med hjälp av följande instrumentpanel som exempel:

Skärmbild av en exempelinstrumentpanel i Azure Portal.

Eftersom delade Azure-instrumentpaneler är resurser kan den här instrumentpanelen representeras som JSON. Du kan ladda ned JSON-representationen av en instrumentpanel genom att välja Exportera och sedan Ladda ned i Azure Portal.

Exempel på JSON för instrumentpanelen

Följande JSON representerar exempelinstrumentpanelen som visas i föregående avsnitt.

{
  "properties": {
    "lenses": [
      {
        "order": 0,
        "parts": [
          {
            "position": {
              "x": 0,
              "y": 0,
              "colSpan": 3,
              "rowSpan": 2
            },
            "metadata": {
              "inputs": [],
              "type": "Extension/HubsExtension/PartType/MarkdownPart",
              "settings": {
                "content": {
                  "settings": {
                    "content": "## Azure Virtual Machines Overview\r\nNew team members should watch this video to get familiar with Azure Virtual Machines.",
                    "markdownUri": null
                  }
                }
              }
            }
          },
          {
            "position": {
              "x": 3,
              "y": 0,
              "colSpan": 8,
              "rowSpan": 4
            },
            "metadata": {
              "inputs": [],
              "type": "Extension/HubsExtension/PartType/MarkdownPart",
              "settings": {
                "content": {
                  "settings": {
                    "content": "This is the team dashboard for the test VM we use on our team. Here are some useful links:\r\n\r\n1. [Create a Linux virtual machine](https://docs.microsoft.com/azure/virtual-machines/linux/quick-create-portal)\r\n1. [Create a Windows virtual machine](https://docs.microsoft.com/azure/virtual-machines/windows/quick-create-portal)\r\n1. [Create a virtual machine scale set](https://docs.microsoft.com/azure/virtual-machine-scale-sets/quick-create-portal)",
                    "title": "Test VM Dashboard",
                    "subtitle": "Contoso",
                    "markdownUri": null
                  }
                }
              }
            }
          },
          {
            "position": {
              "x": 0,
              "y": 2,
              "colSpan": 3,
              "rowSpan": 2
            },
            "metadata": {
              "inputs": [],
              "type": "Extension/HubsExtension/PartType/VideoPart",
              "settings": {
                "content": {
                  "settings": {
                    "src": "https://www.youtube.com/watch?v=rOiSRkxtTeU",
                    "autoplay": false
                  }
                }
              }
            }
          },
          {
            "position": {
              "x": 0,
              "y": 4,
              "colSpan": 11,
              "rowSpan": 3
            },
            "metadata": {
              "inputs": [
                {
                  "name": "queryInputs",
                  "value": {
                    "timespan": {
                      "duration": "PT1H"
                    },
                    "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine",
                    "chartType": 0,
                    "metrics": [
                      {
                        "name": "Percentage CPU",
                        "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                      }
                    ]
                  }
                }
              ],
              "type": "Extension/Microsoft_Azure_Monitoring/PartType/MetricsChartPart"
            }
          },
          {
            "position": {
              "x": 0,
              "y": 7,
              "colSpan": 3,
              "rowSpan": 2
            },
            "metadata": {
              "inputs": [
                {
                  "name": "queryInputs",
                  "value": {
                    "timespan": {
                      "duration": "PT1H"
                    },
                    "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine",
                    "chartType": 0,
                    "metrics": [
                      {
                        "name": "Disk Read Operations/Sec",
                        "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                      },
                      {
                        "name": "Disk Write Operations/Sec",
                        "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                      }
                    ]
                  }
                }
              ],
              "type": "Extension/Microsoft_Azure_Monitoring/PartType/MetricsChartPart"
            }
          },
          {
            "position": {
              "x": 3,
              "y": 7,
              "colSpan": 3,
              "rowSpan": 2
            },
            "metadata": {
              "inputs": [
                {
                  "name": "queryInputs",
                  "value": {
                    "timespan": {
                      "duration": "PT1H"
                    },
                    "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine",
                    "chartType": 0,
                    "metrics": [
                      {
                        "name": "Disk Read Bytes",
                        "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                      },
                      {
                        "name": "Disk Write Bytes",
                        "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                      }
                    ]
                  }
                }
              ],
              "type": "Extension/Microsoft_Azure_Monitoring/PartType/MetricsChartPart"
            }
          },
          {
            "position": {
              "x": 6,
              "y": 7,
              "colSpan": 3,
              "rowSpan": 2
            },
            "metadata": {
              "inputs": [
                {
                  "name": "queryInputs",
                  "value": {
                    "timespan": {
                      "duration": "PT1H"
                    },
                    "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine",
                    "chartType": 0,
                    "metrics": [
                      {
                        "name": "Network In Total",
                        "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                      },
                      {
                        "name": "Network Out Total",
                        "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                      }
                    ]
                  }
                }
              ],
              "type": "Extension/Microsoft_Azure_Monitoring/PartType/MetricsChartPart"
            }
          },
          {
            "position": {
              "x": 9,
              "y": 7,
              "colSpan": 2,
              "rowSpan": 2
            },
            "metadata": {
              "inputs": [
                {
                  "name": "id",
                  "value": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
                }
              ],
              "type": "Extension/Microsoft_Azure_Compute/PartType/VirtualMachinePart",
              "asset": {
                "idInputName": "id",
                "type": "VirtualMachine"
              }
            }
          }
        ]
      }
    ],
    "metadata": {
      "model": {}
    }
  },
  "name": "Simple VM Dashboard",
  "type": "Microsoft.Portal/dashboards",
  "location": "INSERT LOCATION",
  "tags": {
    "hidden-title": "Simple VM Dashboard"
  },
  "apiVersion": "2022-12-01-preview"
}

Vanliga resursegenskaper

Nu ska vi dela upp de relevanta avsnitten i JSON. De vanliga resursegenskaperna visas i slutet av JSON-exemplet. De här egenskaperna delas mellan alla Azure-resurstyper och de relaterar inte specifikt till instrumentpanelens innehåll.

ID

ID Representerar instrumentpanelens Azure-resurs-ID, med förbehåll för namngivningskonventionerna för Azure-resurser. När portalen skapar en instrumentpanel väljer den vanligtvis ett ID i form av ett guid, men du kan använda valfritt giltigt namn när du skapar en instrumentpanel programmatiskt.

När du exporterar en instrumentpanel från Azure Portal inkluderas inte fältetid. Om du skapar en ny instrumentpanel genom att importera en JSON-fil som innehåller id fältet ignoreras värdet och ett nytt ID-värde tilldelas till varje ny instrumentpanel.

Name

Resursnamnet som Azure Portal använder för instrumentpanelen.

Typ

Alla instrumentpaneler är av typen Microsoft.Portal/dashboards.

Plats

Till skillnad från andra resurser har instrumentpaneler ingen körningskomponent. För instrumentpaneler location anger den primära geografiska platsen som lagrar instrumentpanelens JSON-representation. Värdet ska vara en av de platskoder som kan hämtas med hjälp av plats-API:et för prenumerationsresursen.

Taggar

Taggar är en vanlig funktion i Azure-resurser som gör att du kan organisera din resurs efter godtyckliga namnvärdepar. Instrumentpaneler innehåller en särskild tagg med namnet hidden-title. Om din instrumentpanel har den här egenskapen ifylld används det värdet som visningsnamn för instrumentpanelen i portalen. Den här taggen ger dig ett sätt att ha ett namn på visningsnamnet för instrumentpanelen

Egenskaper

Objektet properties innehåller två egenskaper och lenses metadata. Egenskapen lenses innehåller information om panelerna på instrumentpanelen. Egenskapen metadata är reserverad för potentiella framtida funktioner.

Linser

Egenskapen lenses innehåller instrumentpanelen.

Delar

Egenskapen lenses innehåller två egenskaper och order parts. order För närvarande är alltid inställt på 0. Egenskapen parts innehåller ett objekt som definierar de enskilda delarna (kallas även paneler) på instrumentpanelen.

Objektet parts innehåller en egenskap för varje del, där namnet på egenskapen är ett tal. Talet är inte signifikant.

Varje enskilt delobjekt innehåller position och metadata.

Position

Egenskapen position innehåller storleks- och platsinformationen för delen uttryckt som x, y, rowSpanoch colSpan. Värdena är i termer av rutnätsenheter. Dessa rutnätsenheter visas när instrumentpanelen är i redigerbart läge, som du ser här.

Skärmbild som visar rutnätsenheterna för en instrumentpanel i Azure Portal.

Om du till exempel vill att en panel ska ha en bredd på två rutnätsenheter, en höjd på en rutnätsenhet och en plats i instrumentpanelens övre vänstra hörn ser positionsobjektet ut så här:

position: { x: 0, y: 0, rowSpan: 2, colSpan: 1 }

Metadata

Varje del har en metadataegenskap. Ett objekt har bara en nödvändig egenskap inom metadata: type. Den här strängen anger vilken paneltyp som ska visas i portalen. Vår exempelinstrumentpanel använder följande typer av paneler:

  1. Extension/Microsoft_Azure_Monitoring/PartType/MetricsChartPart – Används för att visa övervakningsmått
  2. Extension[azure]/HubsExtension/PartType/MarkdownPart – Används för att visa anpassat markdown-innehåll, till exempel text eller bilder, med grundläggande formatering för listor, länkar osv.
  3. Extension[azure]/HubsExtension/PartType/VideoPart – Används för att visa videor från YouTube, Channel 9 och andra typer av video som fungerar i en HTML-videotagg.

Varje typ av del har sina egna alternativ för konfiguration. De möjliga konfigurationsegenskaperna kallas inputs, settingsoch asset.

Indata

Indataobjektet innehåller vanligtvis information som binder en panel till en resursinstans.

Var MetricsChartPart och en i vårt exempel har en enda indata som uttrycker resursen att binda till, som representerar den virtuella datorns Azure-resurs-ID, tillsammans med information om de data som visas. Här är inputs till exempel objektet för panelen som visar måtten Totalt nätverk och Totalt nätverk.

"inputs":
[
  {
    "name": "queryInputs",
    "value": {
      "timespan": {
        "duration": "PT1H"
      },
      "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine",
      "chartType": 0,
      "metrics": [
        {
          "name": "Network In Total",
          "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
        },
        {
          "name": "Network Out Total",
          "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SimpleWinVMResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine"
        }
      ]
    }
  }
]

Inställningar

Inställningsobjektet innehåller de konfigurerbara elementen i en del. I vår exempelinstrumentpanel MarkdownPart använder inställningarna för att lagra det anpassade markdown-innehållet, tillsammans med en konfigurerbar rubrik och underrubrik.

"settings": {
  "content": {
    "settings": {
      "content": "This is the team dashboard for the test VM we use on our team. Here are some useful links:\r\n\r\n1. [Create a Linux virtual machine](https://docs.microsoft.com/azure/virtual-machines/linux/quick-create-portal)\r\n1. [Create a Windows virtual machine](https://docs.microsoft.com/azure/virtual-machines/windows/quick-create-portal)\r\n1. [Create a virtual machine scale set](https://docs.microsoft.com/azure/virtual-machine-scale-sets/quick-create-portal)",
      "title": "Test VM Dashboard",
      "subtitle": "Contoso",
      "markdownUri": null
    }
  }
}

VideoPart På samma sätt har de egna inställningarna som innehåller en pekare till videon som ska spelas upp, en inställning för automatisk uppspelning och valfri rubrikinformation.


"settings": {
  "content": {
    "settings": {
      "src": "https://www.youtube.com/watch?v=rOiSRkxtTeU",
      "autoplay": false
    }
  }
}

Tillgång

Paneler som är bundna till förstklassiga hanterbara portalobjekt (kallas tillgångar) har den här relationen uttryckt via asset objektet. I vår exempelinstrumentpanel innehåller panelen för den virtuella datorn den här tillgångsbeskrivningen. Egenskapen idInputName anger för portalen att ID-indata innehåller den unika identifieraren för tillgången, i det här fallet resurs-ID:t. De flesta Azure-resurstyper har tillgångar som definierats i portalen.

"asset": {
    "idInputName": "id",
    "type": "VirtualMachine"
}

Nästa steg