Шаблон схемы оповещения бюджета Azure - PullRequest
1 голос
/ 30 мая 2019

Я настраиваю некоторые предупреждения бюджета Azure для вызова веб-крючка приложения логики для выполнения действия.

В бюджете я указал условия оповещения об увольнении группы действий на 25%, 50% и 75% бюджета.У группы действий есть действие, чтобы вызвать веб-крючок приложения логики с использованием общей схемы оповещений.

У меня есть приложение логики «Когда получен запрос HTTP», настроенное с простой полезной нагрузкой оповещения и шаг для обработки запроса.

На этом шаге обработки я хотел бы получить доступ к деталям бюджета, который вызвал оповещение (название бюджета,% бюджета и т. д.), но образец схемы не содержит этогоинформация:

{
    "properties": {
        "data": {
            "properties": {
                "alertContext": {
                    "properties": {
                        "condition": {
                            "properties": {
                                "allOf": {
                                    "items": {
                                        "properties": {
                                            "dimensions": {
                                                "items": {
                                                    "properties": {
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "value": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "value"
                                                    ],
                                                    "type": "object"
                                                },
                                                "type": "array"
                                            },
                                            "metricName": {
                                                "type": "string"
                                            },
                                            "metricNamespace": {
                                                "type": "string"
                                            },
                                            "metricValue": {
                                                "type": "number"
                                            },
                                            "operator": {
                                                "type": "string"
                                            },
                                            "threshold": {
                                                "type": "string"
                                            },
                                            "timeAggregation": {
                                                "type": "string"
                                            }
                                        },
                                        "required": [
                                            "metricName",
                                            "metricNamespace",
                                            "operator",
                                            "threshold",
                                            "timeAggregation",
                                            "dimensions",
                                            "metricValue"
                                        ],
                                        "type": "object"
                                    },
                                    "type": "array"
                                },
                                "windowSize": {
                                    "type": "string"
                                }
                            },
                            "type": "object"
                        },
                        "conditionType": {
                            "type": "string"
                        },
                        "properties": {}
                    },
                    "type": "object"
                },
                "essentials": {
                    "properties": {
                        "alertContextVersion": {
                            "type": "string"
                        },
                        "alertId": {
                            "type": "string"
                        },
                        "alertRule": {
                            "type": "string"
                        },
                        "alertTargetIDs": {
                            "items": {
                                "type": "string"
                            },
                            "type": "array"
                        },
                        "description": {
                            "type": "string"
                        },
                        "essentialsVersion": {
                            "type": "string"
                        },
                        "firedDateTime": {
                            "type": "string"
                        },
                        "monitorCondition": {
                            "type": "string"
                        },
                        "monitoringService": {
                            "type": "string"
                        },
                        "originAlertId": {
                            "type": "string"
                        },
                        "resolvedDateTime": {
                            "type": "string"
                        },
                        "severity": {
                            "type": "string"
                        },
                        "signalType": {
                            "type": "string"
                        }
                    },
                    "type": "object"
                }
            },
            "type": "object"
        },
        "schemaId": {
            "type": "string"
        }
    },
    "type": "object"
}

Есть ли где-нибудь шаблон схемы со всеми возможными полями для предупреждения о бюджете?Так что мое приложение логики может использовать эти поля бюджета в качестве динамического содержимого на последующих этапах.

Спасибо

1 Ответ

0 голосов
/ 24 июня 2019

Я создал приложение логики, которое помещает входные данные json в хранилище больших двоичных объектов.Это приложение логики добавлено как Webhook в группу действий по предупреждению бюджета.

Я получил следующее сообщение.Это похоже на схему для предупреждений о бюджете.

{
    "schemaId": "AIP Budget Notification",
    "data": {
        "SubscriptionName": "",
        "SubscriptionId": "",
        "EnrollmentNumber": "",
        "DepartmentName": "",
        "AccountName": "",
        "BillingAccountId": "",
        "BillingProfileId": "",
        "InvoiceSectionId": "",
        "ResourceGroup": "",
        "SpendingAmount": "",
        "BudgetStartDate": "",
        "Budget": "",
        "Unit": "",
        "BudgetCreator": "",
        "BudgetName": "",
        "BudgetType": "",
        "NotificationThresholdAmount": ""
    }
}

Похоже, что Microsoft упоминала об этой схеме в своей документации, но немного скрытно (ищите json в следующей статье)

https://docs.microsoft.com/en-us/azure/billing/billing-cost-management-budget-scenario#create-an-azure-logic-app-for-orchestration

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...