Поделиться через


Модули bicep планового управления затратами

В этой статье описаны модули реестра Bicep, которые помогут отправить сообщение электронной почты по расписанию или при обнаружении аномалии.

Запланированные действия позволяют настраивать оповещения электронной почты ежедневно, еженедельно или ежемесячно. Запланированные действия настраиваются на основе представления "Управление затратами", которое можно открыть и изменить в анализе затрат в портал Azure. Оповещения электронной почты включают изображение выбранного представления и при необходимости ссылку на CSV-файл с суммированными данными о затратах. Вы также можете использовать запланированные действия для настройки оповещений обнаружения аномалий для подписок.

Сведения о запланированных оповещениях см. в статье "Сохранение и совместное использование представлений". Дополнительные сведения об оповещениях об аномалиях см. в статье "Анализ непредвиденных расходов".


Синтаксис

Версия: 1.1. Области: подписка, группа ресурсов

module <string> 'br/public:cost/<scope>-scheduled-action:1.1' = {
  name: <string>
  params: {
    name: <string>
    kind: 'Email' | 'InsightAlert'
    private: <bool>
    builtInView: 'AccumulatedCosts' | 'CostByService' | 'DailyCosts'
    viewId: <string>
    displayName: <string>
    status: 'Enabled' | 'Disabled'
    notificationEmail: <string>
    emailRecipients: [ <string>, <string>, ... ]
    emailSubject: <string>
    emailMessage: <string>
    emailLanguage: <string>
    emailRegionalFormat: <string>
    includeCsv: <bool>
    scheduleFrequency: 'Daily' | 'Weekly' | 'Monthly'
    scheduleDaysOfWeek: [ 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday' ]
    scheduleDayOfMonth: <int>
    scheduleWeeksOfMonth: [ 'First', 'Second', 'Third', 'Fourth', 'Last' ]
    scheduleStartDate: 'yyyy-MM-ddTHH:miZ'
    scheduleEndDate: 'yyyy-MM-dd'
  }
}

Параметры

Ниже приведены параметры для модулей запланированных действий:

Имя. Тип Описание
name string Обязательное. Имя запланированного действия, используемого в идентификаторе ресурса.
kind string Необязательно. Указывает тип запланированного действия. По умолчанию: электронная почта.
private bool Необязательно. Указывает, является ли запланированное действие частным и редактируемым текущим пользователем. Если значение false, запланированное действие предоставляется другим пользователям в той же области. Игнорируется, если тип .InsightAlert По умолчанию: false.
builtInView string Необязательно. Указывает, какое встроенное представление следует использовать. Это ярлык для полного идентификатора представления.
viewId string Необязательно. Требуется, если тип и Email встроенныйInView не задан. Идентификатор ресурса представления, в который отправляется запланированное действие. Представление должно быть частным (уровень клиента) или принадлежит той же области, что и запланированное действие. Игнорируется, если задан тип InsightAlert или задано значение builtInView.
displayName string Необязательно. Отображаемое имя, отображаемое на портале при просмотре списка запланированных действий. Значение по умолчанию: (имя запланированного действия).
status string Необязательно. Состояние запланированного действия. По умолчанию: Включено.
notificationEmail string Обязательный. Адрес электронной почты пользователя или группы, ответственного за это запланированное действие. Этот адрес электронной почты включен в сообщения электронной почты. Значение по умолчанию: (адрес электронной почты пользователя, развертывающего шаблон).
emailRecipients array Обязательный. Список адресов электронной почты, которые должны получать сообщения электронной почты. Требуется по крайней мере один допустимый адрес электронной почты.
emailSubject string Необязательно. Тема сообщения электронной почты, отправляемого получателям электронной почты. Значение по умолчанию: (имя представления).
emailMessage string Необязательно. Включите сообщение для получателей, чтобы добавить контекст о том, почему они получают сообщение электронной почты, что делать, и /или кто нужно связаться. Значение по умолчанию: "" (сообщение отсутствует).
emailLanguage string Необязательно. Язык, используемый для шаблона электронной почты. По умолчанию: en.
emailRegionalFormat string Необязательно. Региональный формат, используемый для дат, времени и чисел. По умолчанию: en-us.
includeCsv bool Необязательно. Указывает, следует ли включать ссылку на CSV-файл с резервными данными для диаграммы. Игнорируется, если тип .InsightAlert По умолчанию: false.
scheduleFrequency string Необязательно. Частота выполнения запланированного действия. По умолчанию: ежедневно для Email и еженедельно для InsightAlert.
scheduleDaysOfWeek array Необязательно. Требуется, если тип имеет тип Email и scheduleFrequency.Weekly Список дней недели, которые должны доставляться по электронной почте. Разрешено: понедельник, вторник, среда, четверг, пятница, суббота, воскресенье. Значение по умолчанию: понедельник.
scheduleDayOfMonth int Необязательно. Требуется, если тип имеет тип Email и scheduleFrequency.Monthly День месяца, по которому должны доставляться сообщения электронной почты. Ежемесячная стоимость не будет окончательной до третьего дня месяца. Это значение или scheduleWeeksOfMonth является обязательным, если scheduleFrequency имеет значение Monthly. Значение по умолчанию: 0 (не задано).
scheduleWeeksOfMonth array Необязательно. Список недель месяца, в который должны быть доставлены сообщения электронной почты. Это значение или scheduleDayOfMonth требуется, если scheduleFrequency имеет значение Monthly. Разрешено: первый, второй, третий, четвертый, последний. По умолчанию [] (не задано).
scheduleStartDate string Необязательно. Первый день, когда должно выполняться расписание. Используйте время, чтобы указать, когда вы хотите получать сообщения электронной почты. Должен быть в формате гггг-ММ-ддTHH:miZ. Default = Now.
scheduleEndDate string Необязательно. Последний день должно выполняться расписание. Должен быть в формате гггг-ММ-дд. По умолчанию = 1 год с даты начала.

Примеры

В следующих примерах показано, как отправить сообщение электронной почты по расписанию или при обнаружении аномалии.

Планирование сообщения электронной почты для встроенного представления

Подписка Группа ресурсов

Создает общее запланированное действие для встроенного представления DailyCosts.

module dailyCostsAlert 'br/public:cost/subscription-scheduled-action:1.0.2' = {
  name: 'dailyCostsAlert'
  params: {
    name: 'DailyCostsAlert'
    displayName: 'My schedule'
    builtInView: 'DailyCosts'
    emailRecipients: [ 'ema@contoso.com' ]
    notificationEmail: 'ema@contoso.com'
    scheduleFrequency: 'Weekly'
    scheduleDaysOfWeek: [ 'Monday' ]
  }
}

Планирование сообщения электронной почты с настраиваемой датой начала

Подписка Группа ресурсов

Создает частное запланированное действие для встроенного представления DailyCosts с настраиваемыми датами начала и окончания.

module privateAlert 'br/public:cost/resourcegroup-scheduled-action:1.0.2' = {
  name: 'privateAlert'
  params: {
    name: 'PrivateAlert'
    displayName: 'My private schedule'
    private: true
    builtInView: 'DailyCosts'
    emailRecipients: [ 'priya@contoso.com' ]
    notificationEmail: 'priya@contoso.com'
    scheduleFrequency: 'Monthly'
    scheduleDayOfMonth: 1
    scheduleStartDate: scheduleStartDate
    scheduleEndDate: scheduleEndDate
  }
}

Настройка оповещения об аномалиях

Отток подписок

Создает оповещение об аномалиях для подписки.

module anomalyAlert 'br/public:cost/subscription-scheduled-action:1.0.2' = {
  name: 'anomalyAlert'
  params: {
    name: 'AnomalyAlert'
    kind: 'InsightAlert'
    displayName: 'My anomaly check'
    emailRecipients: [ 'ana@contoso.com' ]
    notificationEmail: 'ana@contoso.com'
  }
}

Связанные ресурсы:

Связанные возможности FinOps:

Связанные продукты:

Связанные решения: