Wyświetlanie artefaktu definicji w aplikacjach zarządzanych platformy Azure
Definicja widoku jest opcjonalnym artefaktem w aplikacjach zarządzanych platformy Azure. Umożliwia dostosowanie strony przeglądu i dodanie większej liczby widoków, takich jak metryki i zasoby niestandardowe.
Ten artykuł zawiera omówienie artefaktu definicji widoku i jego możliwości.
Wyświetlanie artefaktu definicji
Artefakt definicji widoku musi mieć nazwę viewDefinition.json i umieszczony na tym samym poziomie co createUiDefinition.json i mainTemplate.json w pakiecie .zip , który tworzy definicję aplikacji zarządzanej. Aby dowiedzieć się, jak utworzyć pakiet .zip i opublikować definicję aplikacji zarządzanej, zobacz Szybki start: tworzenie i publikowanie definicji aplikacji zarządzanej platformy Azure
Schemat definicji widoku
Plik viewDefinition.json ma tylko jedną właściwość najwyższego poziomu views
, która jest tablicą widoków. Każdy widok jest wyświetlany w interfejsie użytkownika aplikacji zarządzanej jako oddzielny element menu w spisie treści. Każdy widok ma kind
właściwość, która ustawia typ widoku. Musi być ustawiona na jedną z następujących wartości: Przegląd, Metryki, CustomResources, Skojarzenia. Aby uzyskać więcej informacji, zobacz bieżący schemat JSON dla viewDefinition.json.
Przykładowy kod JSON dla definicji widoku:
{
"$schema": "https://schema.management.azure.com/schemas/viewdefinition/0.0.1-preview/ViewDefinition.json#",
"contentVersion": "0.0.0.1",
"views": [
{
"kind": "Overview",
"properties": {
"header": "Welcome to your Azure Managed Application",
"description": "This managed application is for demo purposes only.",
"commands": [
{
"displayName": "Test Action",
"path": "testAction"
}
]
}
},
{
"kind": "Metrics",
"properties": {
"displayName": "This is my metrics view",
"version": "1.0.0",
"charts": [
{
"displayName": "Sample chart",
"chartType": "Bar",
"metrics": [
{
"name": "Availability",
"aggregationType": "avg",
"resourceTagFilter": [
"tag1"
],
"resourceType": "Microsoft.Storage/storageAccounts",
"namespace": "Microsoft.Storage/storageAccounts"
}
]
}
]
}
},
{
"kind": "CustomResources",
"properties": {
"displayName": "Test custom resource type",
"version": "1.0.0",
"resourceType": "testCustomResource",
"createUIDefinition": {},
"commands": [
{
"displayName": "Custom Context Action",
"path": "testCustomResource/testContextAction",
"icon": "Stop",
"createUIDefinition": {}
}
],
"columns": [
{
"key": "name",
"displayName": "Name"
},
{
"key": "properties.myProperty1",
"displayName": "Property 1"
},
{
"key": "properties.myProperty2",
"displayName": "Property 2",
"optional": true
}
]
}
},
{
"kind": "Associations",
"properties": {
"displayName": "Test association resource type",
"version": "1.0.0",
"targetResourceType": "Microsoft.Compute/virtualMachines",
"createUIDefinition": {}
}
}
]
}
Omówienie
"kind": "Overview"
Po podaniu tego widoku w viewDefinition.json zastąpi on domyślną stronę Przegląd w aplikacji zarządzanej.
{
"kind": "Overview",
"properties": {
"header": "Welcome to your Azure Managed Application",
"description": "This managed application is for demo purposes only.",
"commands": [
{
"displayName": "Test Action",
"path": "testAction"
}
]
}
}
Właściwości | Wymagania | opis |
---|---|---|
header |
Nie. | Nagłówek strony przeglądu. |
description |
Nie. | Opis aplikacji zarządzanej. |
commands |
Nie. | Tablica większej liczby przycisków paska narzędzi na stronie przeglądu, zobacz polecenia. |
Metryki
"kind": "Metrics"
Widok metryk umożliwia zbieranie i agregowanie danych z zasobów aplikacji zarządzanych w metrykach usługi Azure Monitor.
{
"kind": "Metrics",
"properties": {
"displayName": "This is my metrics view",
"version": "1.0.0",
"charts": [
{
"displayName": "Sample chart",
"chartType": "Bar",
"metrics": [
{
"name": "Availability",
"aggregationType": "avg",
"resourceTagFilter": [
"tag1"
],
"resourceType": "Microsoft.Storage/storageAccounts",
"namespace": "Microsoft.Storage/storageAccounts"
}
]
}
]
}
}
Właściwości | Wymagania | opis |
---|---|---|
displayName |
Nie. | Wyświetlany tytuł widoku. |
version |
Nie. | Wersja platformy używanej do renderowania widoku. |
charts |
Tak | Tablica wykresów strony metryk. |
Wykres
Właściwości | Wymagania | opis |
---|---|---|
displayName |
Tak | Wyświetlony tytuł wykresu. |
chartType |
Nie. | Wizualizacja do użycia dla tego wykresu. Domyślnie używa wykresu liniowego. Obsługiwane typy wykresów: Bar, Line, Area, Scatter . |
metrics |
Tak | Tablica metryk do wykreślenia na tym wykresie. Aby dowiedzieć się więcej o metrykach obsługiwanych w witrynie Azure Portal, zobacz Obsługiwane metryki za pomocą usługi Azure Monitor. |
Metric
Właściwości | Wymagania | opis |
---|---|---|
name |
Tak | Nazwa metryki. |
aggregationType |
Tak | Typ agregacji do użycia dla tej metryki. Obsługiwane typy agregacji: none, sum, min, max, avg, unique, percentile, count |
namespace |
Nie. | Więcej informacji do użycia podczas określania prawidłowego dostawcy metryk. |
resourceTagFilter |
Nie. | Tablica tagów zasobów jest oddzielona or słowem, dla którego będą wyświetlane metryki. Dotyczy filtru typu zasobu. |
resourceType |
Tak | Typ zasobu, dla którego będą wyświetlane metryki. |
Zasoby niestandardowe
"kind": "CustomResources"
Można zdefiniować wiele widoków tego typu. Każdy widok reprezentuje unikatowy niestandardowy typ zasobu od dostawcy niestandardowego zdefiniowanego w mainTemplate.json. Aby zapoznać się z wprowadzeniem do dostawców niestandardowych, zobacz Omówienie dostawców niestandardowych platformy Azure w wersji zapoznawczej.
W tym widoku można wykonywać operacje GET, PUT, DELETE i POST dla niestandardowego typu zasobu. Operacje POST mogą być globalnymi akcjami niestandardowymi lub akcjami niestandardowymi w kontekście niestandardowego typu zasobu.
{
"kind": "CustomResources",
"properties": {
"displayName": "Test custom resource type",
"version": "1.0.0",
"resourceType": "testCustomResource",
"icon": "Polychromatic.ResourceList",
"createUIDefinition": {},
"commands": [
{
"displayName": "Custom Context Action",
"path": "testCustomResource/testContextAction",
"icon": "Stop",
"createUIDefinition": {},
}
],
"columns": [
{
"key": "name",
"displayName": "Name"
},
{
"key": "properties.myProperty1",
"displayName": "Property 1"
},
{
"key": "properties.myProperty2",
"displayName": "Property 2",
"optional": true
}
]
}
}
Właściwości | Wymagania | opis |
---|---|---|
displayName |
Tak | Wyświetlany tytuł widoku. Tytuł powinien być unikatowy dla każdego widoku CustomResources w viewDefinition.json. |
version |
Nie. | Wersja platformy używanej do renderowania widoku. |
resourceType |
Tak | Niestandardowy typ zasobu. Musi być unikatowym niestandardowym typem zasobu dostawcy niestandardowego. |
icon |
Nie. | Ikona widoku. Lista przykładowych ikon jest definiowana w schemacie JSON. |
createUIDefinition |
Nie. | Utwórz schemat definicji interfejsu użytkownika dla polecenia create custom resource. Aby zapoznać się z wprowadzeniem do tworzenia definicji interfejsu użytkownika, zobacz Wprowadzenie do metody CreateUiDefinition. |
commands |
Nie. | Tablica większej liczby przycisków paska narzędzi widoku CustomResources, zobacz polecenia. |
columns |
Nie. | Tablica kolumn zasobu niestandardowego. Jeśli kolumna nie jest zdefiniowana name , jest wyświetlana domyślnie. Kolumna musi mieć wartości "key" i "displayName" . W przypadku klucza podaj klucz właściwości do wyświetlenia w widoku. W przypadku zagnieżdżenia użyj kropki jako ogranicznika, na przykład "key": "name" lub "key": "properties.property1" . W polu Nazwa wyświetlana podaj nazwę wyświetlaną właściwości do wyświetlenia w widoku. Możesz również podać "optional" właściwość. Po ustawieniu wartości true kolumna jest domyślnie ukryta w widoku. |
Polecenia
Właściwość commands
to tablica większej liczby przycisków paska narzędzi, które są wyświetlane na stronie. Każde polecenie reprezentuje akcję POST od dostawcy niestandardowego platformy Azure zdefiniowaną w mainTemplate.json. Aby zapoznać się z wprowadzeniem do dostawców niestandardowych, zobacz Omówienie dostawców niestandardowych platformy Azure.
{
"commands": [
{
"displayName": "Start Test Action",
"path": "testAction",
"icon": "Start",
"createUIDefinition": {}
},
]
}
Właściwości | Wymagania | opis |
---|---|---|
displayName |
Tak | Wyświetlana nazwa przycisku polecenia. |
path |
Tak | Musi być niestandardową nazwą akcji dostawcy. Akcja musi być zdefiniowana w mainTemplate.json. Nie akceptuje wartości dynamicznych, takich jak identyfikator URI, który pochodzi z mainTemplate.json. |
icon |
Nie. | Ikona przycisku polecenia. Lista przykładowych ikon jest definiowana w schemacie JSON. |
createUIDefinition |
Nie. | Utwórz schemat definicji interfejsu użytkownika dla polecenia . Aby zapoznać się z wprowadzeniem do tworzenia definicji interfejsu użytkownika, zobacz Wprowadzenie do metody CreateUiDefinition. |
Stowarzyszenia
"kind": "Associations"
Można zdefiniować wiele widoków tego typu. Ten widok umożliwia łączenie istniejących zasobów z aplikacją zarządzaną za pośrednictwem niestandardowego dostawcy zdefiniowanego w mainTemplate.json. Aby zapoznać się z wprowadzeniem do dostawców niestandardowych, zobacz Omówienie dostawców niestandardowych platformy Azure w wersji zapoznawczej.
W tym widoku można rozszerzyć istniejące zasoby platformy Azure na podstawie elementu targetResourceType
. Po wybraniu zasobu tworzy żądanie dołączania do publicznego dostawcy niestandardowego, które może zastosować efekt uboczny do zasobu.
{
"kind": "Associations",
"properties": {
"displayName": "Test association resource type",
"version": "1.0.0",
"targetResourceType": "Microsoft.Compute/virtualMachines",
"createUIDefinition": {}
}
}
Właściwości | Wymagania | opis |
---|---|---|
displayName |
Tak | Wyświetlany tytuł widoku. Tytuł powinien być unikatowy dla każdego widoku Skojarzeń w viewDefinition.json. |
version |
Nie. | Wersja platformy używanej do renderowania widoku. |
targetResourceType |
Tak | Typ zasobu docelowego. Ten typ zasobu jest wyświetlany dla dołączania zasobów. |
createUIDefinition |
Nie. | Utwórz schemat definicji interfejsu użytkownika dla polecenia tworzenia zasobu skojarzenia. Aby zapoznać się z wprowadzeniem do tworzenia definicji interfejsu użytkownika, zobacz Wprowadzenie do metody CreateUiDefinition. |
Szukasz pomocy
Jeśli masz pytania lub potrzebujesz odpowiedzi na temat aplikacji zarządzanych platformy Azure, spróbuj zadać pytanie w witrynie Stack Overflow. Użyj tagu azure-managed-app
podczas publikowania pytania.
Następne kroki
- Aby zapoznać się z wprowadzeniem do aplikacji zarządzanych, zobacz Azure Managed Application overview (Omówienie aplikacji zarządzanych platformy Azure).
- Aby zapoznać się z wprowadzeniem do dostawców niestandardowych, zobacz Omówienie dostawców niestandardowych platformy Azure.
- Aby utworzyć aplikację zarządzaną platformy Azure przy użyciu dostawców niestandardowych platformy Azure, zobacz Samouczek: tworzenie aplikacji zarządzanej przy użyciu niestandardowych akcji dostawcy i typów zasobów