Bagikan melalui


Struktur dasbor Azure

Dokumen ini memandu struktur dasbor Azure, menggunakan dasbor berikut sebagai contoh:

Cuplikan layar dasbor sampel di portal Microsoft Azure.

Karena Azure dasbor bersama adalah sumber daya, dasbor ini dapat direpresentasikan sebagai JSON. Anda dapat mengunduh representasi JSON dasbor dengan memilih Ekspor lalu Unduh di portal Azure.

Contoh dasbor JSON

JSON berikut mewakili dasbor sampel yang diperlihatkan di bagian sebelumnya.

{
  "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"
}

Properti sumber daya umum

Mari kita membongkar bagian yang relevan dari JSON. Properti sumber daya umum muncul di dekat akhir contoh JSON. Properti ini dibagikan di semua jenis sumber daya Azure, dan tidak terkait secara khusus dengan konten dasbor.

ID

ID mewakili ID sumber daya Azure dasbor, tunduk pada konvensi penamaan sumber daya Azure. Saat portal membuat dasbor, portal umumnya memilih ID dalam bentuk guid, tetapi Anda dapat menggunakan nama yang valid saat Anda membuat dasbor secara terprogram.

Saat Anda mengekspor dasbor dari portal Azure, id bidang tidak disertakan. Jika Anda membuat dasbor baru dengan mengimpor file JSON yang menyertakan id bidang , nilai akan diabaikan dan nilai ID baru akan ditetapkan ke setiap dasbor baru.

Nama

Nama sumber daya yang portal Azure gunakan untuk dasbor.

Jenis

Semua dasbor berjenis Microsoft.Portal/dashboards.

Lokasi

Tidak seperti sumber daya lain, dasbor tidak memiliki komponen runtime bahasa umum. Untuk dasbor, location menunjukkan lokasi geografis utama yang menyimpan representasi JSON dasbor. Nilai harus menjadi salah satu kode lokasi yang dapat diambil menggunakan API lokasi pada sumber daya langganan.

Tag

Tag adalah fitur umum sumber daya Azure yang memungkinkan Anda mengatur sumber daya Anda dengan pasangan nilai nama yang berubah-ubah. Dasbor menyertakan satu tag khusus yang disebut hidden-title. Jika dasbor Anda telah diisi dengan properti ini, maka nilai tersebut digunakan sebagai nama tampilan untuk dasbor Anda di portal. Tag ini memberi Anda cara untuk memiliki nama tampilan yang dapat diubah namanya untuk dasbor Anda

Properti

Objek properties berisi dua properti, lenses dan metadata. Properti lenses berisi informasi tentang petak peta di dasbor. Properti metadata ini dicadangkan untuk fitur potensial di masa mendatang.

Lensa

Properti lenses berisi dasbor.

Generator

Properti lenses berisi dua properti, order dan parts. Saat ini, order selalu diatur ke 0. Properti parts berisi objek yang menentukan bagian individual (juga disebut sebagai petak peta) di dasbor.

Objek parts berisi properti untuk setiap bagian, di mana nama properti adalah angka. Jumlahnya tidak signifikan.

Setiap objek bagian individual berisi position dan metadata.

Position

Properti position berisi informasi ukuran dan lokasi untuk bagian yang dinyatakan sebagai x, , rowSpany, dan colSpan. Nilainya adalah unit kisi. Unit kisi ini terlihat ketika dasbor dalam mode yang dapat diedit, seperti yang ditunjukkan di sini.

Cuplikan layar yang memperlihatkan unit kisi dasbor di portal Microsoft Azure.

Misalnya, jika Anda ingin petak peta memiliki lebar dua unit kisi, tinggi satu unit kisi, dan lokasi di sudut kiri atas dasbor, maka objek posisi terlihat seperti ini:

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

Metadata

Setiap bagian memiliki properti metadata. Objek hanya memiliki satu properti yang diperlukan dalam metadata: type. String ini memberi tahu portal jenis petak peta mana yang akan ditampilkan. Dasbor contoh kami menggunakan jenis petak peta ini:

  1. Extension/Microsoft_Azure_Monitoring/PartType/MetricsChartPart – Digunakan untuk menunjukkan metrik pemantauan
  2. Extension[azure]/HubsExtension/PartType/MarkdownPart – Digunakan untuk menampilkan konten markdown yang disesuaikan, seperti teks atau gambar, dengan pemformatan dasar untuk daftar, tautan, dll.
  3. Extension[azure]/HubsExtension/PartType/VideoPart – Digunakan untuk menampilkan video dari YouTube, Channel 9, dan jenis video lainnya yang berfungsi dalam tag video HTML.

Setiap jenis bagian memiliki opsi sendiri untuk konfigurasi. Properti konfigurasi yang mungkin disebut inputs, , settingsdan asset.

Input

Objek input umumnya berisi informasi yang mengikat petak peta ke instans sumber daya.

Masing-masing MetricsChartPart dalam contoh kami memiliki satu input yang mengekspresikan sumber daya untuk diikat, mewakili ID sumber daya Azure VM, bersama dengan informasi tentang data yang ditampilkan. Misalnya, berikut adalah inputs objek untuk petak peta yang menunjukkan metrik Total Jaringan Dalam Total dan Jaringan Keluar.

"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"
        }
      ]
    }
  }
]

Pengaturan

Objek pengaturan berisi elemen komponen yang dapat dikonfigurasi. Di dasbor sampel kami, MarkdownPart menggunakan pengaturan untuk menyimpan konten markdown kustom, bersama dengan judul dan subtitel yang dapat dikonfigurasi.

"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
    }
  }
}

Demikian pula, VideoPart memiliki pengaturannya sendiri yang berisi penunjuk ke video untuk diputar, pengaturan pemutaran otomatis, dan informasi judul opsional.


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

Aset

Petak peta yang terikat ke objek portal yang dapat dikelola kelas satu (disebut aset) memiliki hubungan ini yang dinyatakan melalui asset objek . Dalam dasbor contoh kami, petak peta komputer virtual berisi deskripsi aset ini. Properti idInputName memberi tahu portal bahwa input ID berisi pengidentifikasi unik untuk aset, dalam hal ini ID sumber daya. Sebagian besar tipe sumber daya Azure memiliki aset yang ditentukan di portal.

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

Langkah berikutnya