diff --git a/lib/services/monitorManagement/LICENSE.txt b/lib/services/monitorManagement/LICENSE.txt index 5431ba98b9..8f3d856145 100644 --- a/lib/services/monitorManagement/LICENSE.txt +++ b/lib/services/monitorManagement/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2018 Microsoft +Copyright (c) 2019 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/lib/services/monitorManagement/README.md b/lib/services/monitorManagement/README.md index fbfc3c01f5..c6cb00e87a 100644 --- a/lib/services/monitorManagement/README.md +++ b/lib/services/monitorManagement/README.md @@ -3,39 +3,42 @@ uid: azure-arm-monitor summary: *content --- -# Microsoft Azure SDK for Node.js - MonitorManagementClient +**This SDK will be deprecated next year and will be replaced by a new TypeScript-based isomorphic SDK (found at https://github.com/Azure/azure-sdk-for-js) which works on Node.js and browsers.** +## Microsoft Azure SDK for Node.js - MonitorManagementClient + This project provides a Node.js package for accessing Azure. Right now it supports: - **Node.js version 6.x.x or higher** -## Features +### Features -## How to Install +### How to Install ```bash npm install azure-arm-monitor ``` -## How to use +### How to use -### Authentication, client creation and listByResourceGroup autoscaleSettings as an example. +#### Authentication, client creation, and listByResourceGroup autoscaleSettings as an example. ```javascript const msRestAzure = require("ms-rest-azure"); const MonitorManagementClient = require("azure-arm-monitor"); msRestAzure.interactiveLogin().then((creds) => { - const subscriptionId = ""; - const client = new MonitorManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - return client.autoscaleSettings.listByResourceGroup(resourceGroupName).then((result) => { - console.log("The result is:"); - console.log(result); - }); + const subscriptionId = ""; + const client = new MonitorManagementClient(creds, subscriptionId); + const resourceGroupName = "testresourceGroupName"; + + return client.autoscaleSettings.listByResourceGroup(resourceGroupName).then((result) => { + console.log("The result is:"); + console.log(result); + }); }).catch((err) => { console.log('An error occurred:'); console.dir(err, {depth: null, colors: true}); }); - -## Related projects +``` +### Related projects - [Microsoft Azure SDK for Node.js](https://github.com/Azure/azure-sdk-for-node) diff --git a/lib/services/monitorManagement/lib/models/action.js b/lib/services/monitorManagement/lib/models/action.js index 60cf981165..59cdcfb1ac 100644 --- a/lib/services/monitorManagement/lib/models/action.js +++ b/lib/services/monitorManagement/lib/models/action.js @@ -17,7 +17,7 @@ class Action { /** * Create a Action. - * @member {string} odatatype Polymorphic Discriminator + * @property {string} odatatype Polymorphic Discriminator */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/actionGroupList.js b/lib/services/monitorManagement/lib/models/actionGroupList.js index 686e1c81f9..fdd928b15e 100644 --- a/lib/services/monitorManagement/lib/models/actionGroupList.js +++ b/lib/services/monitorManagement/lib/models/actionGroupList.js @@ -16,8 +16,8 @@ class ActionGroupList extends Array { /** * Create a ActionGroupList. - * @member {string} [nextLink] Provides the link to retrieve the next set of - * elements. + * @property {string} [nextLink] Provides the link to retrieve the next set + * of elements. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/actionGroupPatchBody.js b/lib/services/monitorManagement/lib/models/actionGroupPatchBody.js index c55155969f..94fe850b7a 100644 --- a/lib/services/monitorManagement/lib/models/actionGroupPatchBody.js +++ b/lib/services/monitorManagement/lib/models/actionGroupPatchBody.js @@ -17,8 +17,8 @@ class ActionGroupPatchBody { /** * Create a ActionGroupPatchBody. - * @member {object} [tags] Resource tags - * @member {boolean} [enabled] Indicates whether this action group is + * @property {object} [tags] Resource tags + * @property {boolean} [enabled] Indicates whether this action group is * enabled. If an action group is not enabled, then none of its actions will * be activated. Default value: true . */ diff --git a/lib/services/monitorManagement/lib/models/actionGroupResource.js b/lib/services/monitorManagement/lib/models/actionGroupResource.js index 2c93d546bc..641a24288b 100644 --- a/lib/services/monitorManagement/lib/models/actionGroupResource.js +++ b/lib/services/monitorManagement/lib/models/actionGroupResource.js @@ -20,32 +20,32 @@ const models = require('./index'); class ActionGroupResource extends models['Resource'] { /** * Create a ActionGroupResource. - * @member {string} groupShortName The short name of the action group. This + * @property {string} groupShortName The short name of the action group. This * will be used in SMS messages. - * @member {boolean} enabled Indicates whether this action group is enabled. - * If an action group is not enabled, then none of its receivers will receive - * communications. Default value: true . - * @member {array} [emailReceivers] The list of email receivers that are part - * of this action group. - * @member {array} [smsReceivers] The list of SMS receivers that are part of - * this action group. - * @member {array} [webhookReceivers] The list of webhook receivers that are + * @property {boolean} enabled Indicates whether this action group is + * enabled. If an action group is not enabled, then none of its receivers + * will receive communications. Default value: true . + * @property {array} [emailReceivers] The list of email receivers that are * part of this action group. - * @member {array} [itsmReceivers] The list of ITSM receivers that are part + * @property {array} [smsReceivers] The list of SMS receivers that are part * of this action group. - * @member {array} [azureAppPushReceivers] The list of AzureAppPush receivers - * that are part of this action group. - * @member {array} [automationRunbookReceivers] The list of AutomationRunbook - * receivers that are part of this action group. - * @member {array} [voiceReceivers] The list of voice receivers that are part + * @property {array} [webhookReceivers] The list of webhook receivers that + * are part of this action group. + * @property {array} [itsmReceivers] The list of ITSM receivers that are part * of this action group. - * @member {array} [logicAppReceivers] The list of logic app receivers that + * @property {array} [azureAppPushReceivers] The list of AzureAppPush + * receivers that are part of this action group. + * @property {array} [automationRunbookReceivers] The list of + * AutomationRunbook receivers that are part of this action group. + * @property {array} [voiceReceivers] The list of voice receivers that are + * part of this action group. + * @property {array} [logicAppReceivers] The list of logic app receivers that * are part of this action group. - * @member {array} [azureFunctionReceivers] The list of azure function + * @property {array} [azureFunctionReceivers] The list of azure function * receivers that are part of this action group. - * @member {array} [armRoleReceivers] The list of ARM role receivers that are - * part of this action group. Roles are Azure RBAC roles and only built-in - * roles are supported. + * @property {array} [armRoleReceivers] The list of ARM role receivers that + * are part of this action group. Roles are Azure RBAC roles and only + * built-in roles are supported. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/activityLogAlertActionGroup.js b/lib/services/monitorManagement/lib/models/activityLogAlertActionGroup.js index 727c96320c..770cc37f2b 100644 --- a/lib/services/monitorManagement/lib/models/activityLogAlertActionGroup.js +++ b/lib/services/monitorManagement/lib/models/activityLogAlertActionGroup.js @@ -17,9 +17,9 @@ class ActivityLogAlertActionGroup { /** * Create a ActivityLogAlertActionGroup. - * @member {string} actionGroupId The resourceId of the action group. This + * @property {string} actionGroupId The resourceId of the action group. This * cannot be null or empty. - * @member {object} [webhookProperties] the dictionary of custom properties + * @property {object} [webhookProperties] the dictionary of custom properties * to include with the post operation. These data are appended to the webhook * payload. */ diff --git a/lib/services/monitorManagement/lib/models/activityLogAlertActionList.js b/lib/services/monitorManagement/lib/models/activityLogAlertActionList.js index 3db57621c6..5d151b6924 100644 --- a/lib/services/monitorManagement/lib/models/activityLogAlertActionList.js +++ b/lib/services/monitorManagement/lib/models/activityLogAlertActionList.js @@ -17,7 +17,7 @@ class ActivityLogAlertActionList { /** * Create a ActivityLogAlertActionList. - * @member {array} [actionGroups] The list of activity log alerts. + * @property {array} [actionGroups] The list of activity log alerts. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/activityLogAlertAllOfCondition.js b/lib/services/monitorManagement/lib/models/activityLogAlertAllOfCondition.js index 62e16b8ba7..c08641fbbc 100644 --- a/lib/services/monitorManagement/lib/models/activityLogAlertAllOfCondition.js +++ b/lib/services/monitorManagement/lib/models/activityLogAlertAllOfCondition.js @@ -18,7 +18,7 @@ class ActivityLogAlertAllOfCondition { /** * Create a ActivityLogAlertAllOfCondition. - * @member {array} allOf The list of activity log alert conditions. + * @property {array} allOf The list of activity log alert conditions. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/activityLogAlertLeafCondition.js b/lib/services/monitorManagement/lib/models/activityLogAlertLeafCondition.js index df05750642..a1d20a2378 100644 --- a/lib/services/monitorManagement/lib/models/activityLogAlertLeafCondition.js +++ b/lib/services/monitorManagement/lib/models/activityLogAlertLeafCondition.js @@ -18,12 +18,12 @@ class ActivityLogAlertLeafCondition { /** * Create a ActivityLogAlertLeafCondition. - * @member {string} field The name of the field that this condition will + * @property {string} field The name of the field that this condition will * examine. The possible values for this field are (case-insensitive): * 'resourceId', 'category', 'caller', 'level', 'operationName', * 'resourceGroup', 'resourceProvider', 'status', 'subStatus', * 'resourceType', or anything beginning with 'properties.'. - * @member {string} equals The field value will be compared to this value + * @property {string} equals The field value will be compared to this value * (case-insensitive) to determine if the condition is met. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/activityLogAlertList.js b/lib/services/monitorManagement/lib/models/activityLogAlertList.js index 6379f702f8..16a1a48799 100644 --- a/lib/services/monitorManagement/lib/models/activityLogAlertList.js +++ b/lib/services/monitorManagement/lib/models/activityLogAlertList.js @@ -16,8 +16,8 @@ class ActivityLogAlertList extends Array { /** * Create a ActivityLogAlertList. - * @member {string} [nextLink] Provides the link to retrieve the next set of - * elements. + * @property {string} [nextLink] Provides the link to retrieve the next set + * of elements. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/activityLogAlertPatchBody.js b/lib/services/monitorManagement/lib/models/activityLogAlertPatchBody.js index aa120768da..2f9e64e18a 100644 --- a/lib/services/monitorManagement/lib/models/activityLogAlertPatchBody.js +++ b/lib/services/monitorManagement/lib/models/activityLogAlertPatchBody.js @@ -17,8 +17,8 @@ class ActivityLogAlertPatchBody { /** * Create a ActivityLogAlertPatchBody. - * @member {object} [tags] Resource tags - * @member {boolean} [enabled] Indicates whether this activity log alert is + * @property {object} [tags] Resource tags + * @property {boolean} [enabled] Indicates whether this activity log alert is * enabled. If an activity log alert is not enabled, then none of its actions * will be activated. Default value: true . */ diff --git a/lib/services/monitorManagement/lib/models/activityLogAlertResource.js b/lib/services/monitorManagement/lib/models/activityLogAlertResource.js index dc857e34d9..9cb03ee9e4 100644 --- a/lib/services/monitorManagement/lib/models/activityLogAlertResource.js +++ b/lib/services/monitorManagement/lib/models/activityLogAlertResource.js @@ -20,21 +20,21 @@ const models = require('./index'); class ActivityLogAlertResource extends models['Resource'] { /** * Create a ActivityLogAlertResource. - * @member {array} scopes A list of resourceIds that will be used as + * @property {array} scopes A list of resourceIds that will be used as * prefixes. The alert will only apply to activityLogs with resourceIds that * fall under one of these prefixes. This list must include at least one * item. - * @member {boolean} [enabled] Indicates whether this activity log alert is + * @property {boolean} [enabled] Indicates whether this activity log alert is * enabled. If an activity log alert is not enabled, then none of its actions * will be activated. Default value: true . - * @member {object} condition The condition that will cause this alert to + * @property {object} condition The condition that will cause this alert to * activate. - * @member {array} [condition.allOf] The list of activity log alert + * @property {array} [condition.allOf] The list of activity log alert * conditions. - * @member {object} actions The actions that will activate when the condition - * is met. - * @member {array} [actions.actionGroups] The list of activity log alerts. - * @member {string} [description] A description of this activity log alert. + * @property {object} actions The actions that will activate when the + * condition is met. + * @property {array} [actions.actionGroups] The list of activity log alerts. + * @property {string} [description] A description of this activity log alert. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/alertRuleResource.js b/lib/services/monitorManagement/lib/models/alertRuleResource.js index 40978cb847..c1719c2d23 100644 --- a/lib/services/monitorManagement/lib/models/alertRuleResource.js +++ b/lib/services/monitorManagement/lib/models/alertRuleResource.js @@ -20,26 +20,26 @@ const models = require('./index'); class AlertRuleResource extends models['Resource'] { /** * Create a AlertRuleResource. - * @member {string} alertRuleResourceName the name of the alert rule. - * @member {string} [description] the description of the alert rule that will - * be included in the alert email. - * @member {boolean} isEnabled the flag that indicates whether the alert rule - * is enabled. - * @member {object} condition the condition that results in the alert rule + * @property {string} alertRuleResourceName the name of the alert rule. + * @property {string} [description] the description of the alert rule that + * will be included in the alert email. + * @property {boolean} isEnabled the flag that indicates whether the alert + * rule is enabled. + * @property {object} condition the condition that results in the alert rule * being activated. - * @member {object} [condition.dataSource] the resource from which the rule + * @property {object} [condition.dataSource] the resource from which the rule * collects its data. For this type dataSource will always be of type * RuleMetricDataSource. - * @member {string} [condition.dataSource.resourceUri] the resource + * @property {string} [condition.dataSource.resourceUri] the resource * identifier of the resource the rule monitors. **NOTE**: this property * cannot be updated for an existing rule. - * @member {string} [condition.dataSource.odatatype] Polymorphic + * @property {string} [condition.dataSource.odatatype] Polymorphic * Discriminator - * @member {string} [condition.odatatype] Polymorphic Discriminator - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. + * @property {string} [condition.odatatype] Polymorphic Discriminator + * @property {array} [actions] the array of actions that are performed when + * the alert rule becomes active, and when an alert condition is resolved. + * @property {date} [lastUpdatedTime] Last time the rule was updated in + * ISO8601 format. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/alertRuleResourcePatch.js b/lib/services/monitorManagement/lib/models/alertRuleResourcePatch.js index 5f3a812930..902144ea36 100644 --- a/lib/services/monitorManagement/lib/models/alertRuleResourcePatch.js +++ b/lib/services/monitorManagement/lib/models/alertRuleResourcePatch.js @@ -17,27 +17,27 @@ class AlertRuleResourcePatch { /** * Create a AlertRuleResourcePatch. - * @member {object} [tags] Resource tags - * @member {string} name the name of the alert rule. - * @member {string} [description] the description of the alert rule that will - * be included in the alert email. - * @member {boolean} isEnabled the flag that indicates whether the alert rule - * is enabled. - * @member {object} condition the condition that results in the alert rule + * @property {object} [tags] Resource tags + * @property {string} name the name of the alert rule. + * @property {string} [description] the description of the alert rule that + * will be included in the alert email. + * @property {boolean} isEnabled the flag that indicates whether the alert + * rule is enabled. + * @property {object} condition the condition that results in the alert rule * being activated. - * @member {object} [condition.dataSource] the resource from which the rule + * @property {object} [condition.dataSource] the resource from which the rule * collects its data. For this type dataSource will always be of type * RuleMetricDataSource. - * @member {string} [condition.dataSource.resourceUri] the resource + * @property {string} [condition.dataSource.resourceUri] the resource * identifier of the resource the rule monitors. **NOTE**: this property * cannot be updated for an existing rule. - * @member {string} [condition.dataSource.odatatype] Polymorphic + * @property {string} [condition.dataSource.odatatype] Polymorphic * Discriminator - * @member {string} [condition.odatatype] Polymorphic Discriminator - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. + * @property {string} [condition.odatatype] Polymorphic Discriminator + * @property {array} [actions] the array of actions that are performed when + * the alert rule becomes active, and when an alert condition is resolved. + * @property {date} [lastUpdatedTime] Last time the rule was updated in + * ISO8601 format. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/alertingAction.js b/lib/services/monitorManagement/lib/models/alertingAction.js index 03ee8274af..460eb2539c 100644 --- a/lib/services/monitorManagement/lib/models/alertingAction.js +++ b/lib/services/monitorManagement/lib/models/alertingAction.js @@ -13,42 +13,42 @@ const models = require('./index'); /** - * Specifiy action need to be taken when rule type is Alert + * Specify action need to be taken when rule type is Alert * * @extends models['Action'] */ class AlertingAction extends models['Action'] { /** * Create a AlertingAction. - * @member {string} severity Severity of the alert. Possible values include: - * '0', '1', '2', '3', '4' - * @member {object} aznsAction Azure action group reference. - * @member {array} [aznsAction.actionGroup] Azure Action Group reference. - * @member {string} [aznsAction.emailSubject] Custom subject override for all - * email ids in Azure action group - * @member {string} [aznsAction.customWebhookPayload] Custom payload to be - * sent for all webook URI in Azure action group - * @member {number} [throttlingInMin] time (in minutes) for which Alerts + * @property {string} severity Severity of the alert. Possible values + * include: '0', '1', '2', '3', '4' + * @property {object} [aznsAction] Azure action group reference. + * @property {array} [aznsAction.actionGroup] Azure Action Group reference. + * @property {string} [aznsAction.emailSubject] Custom subject override for + * all email ids in Azure action group + * @property {string} [aznsAction.customWebhookPayload] Custom payload to be + * sent for all webhook URI in Azure action group + * @property {number} [throttlingInMin] time (in minutes) for which Alerts * should be throttled or suppressed. - * @member {object} trigger The trigger condition that results in the alert + * @property {object} trigger The trigger condition that results in the alert * rule being. - * @member {string} [trigger.thresholdOperator] Evaluation operation for rule - * - 'GreaterThan' or 'LessThan. Possible values include: 'GreaterThan', + * @property {string} [trigger.thresholdOperator] Evaluation operation for + * rule - 'GreaterThan' or 'LessThan. Possible values include: 'GreaterThan', * 'LessThan', 'Equal' - * @member {number} [trigger.threshold] Result or count threshold based on + * @property {number} [trigger.threshold] Result or count threshold based on * which rule should be triggered. - * @member {object} [trigger.metricTrigger] Trigger condition for metric + * @property {object} [trigger.metricTrigger] Trigger condition for metric * query rule - * @member {string} [trigger.metricTrigger.thresholdOperator] Evaluation + * @property {string} [trigger.metricTrigger.thresholdOperator] Evaluation * operation for Metric -'GreaterThan' or 'LessThan' or 'Equal'. Possible * values include: 'GreaterThan', 'LessThan', 'Equal' - * @member {number} [trigger.metricTrigger.threshold] The threshold of the + * @property {number} [trigger.metricTrigger.threshold] The threshold of the * metric trigger. - * @member {string} [trigger.metricTrigger.metricTriggerType] Metric Trigger - * Type - 'Consecutive' or 'Total'. Possible values include: 'Consecutive', - * 'Total' - * @member {string} [trigger.metricTrigger.metricColumn] Evaluation of metric - * on a particular column + * @property {string} [trigger.metricTrigger.metricTriggerType] Metric + * Trigger Type - 'Consecutive' or 'Total'. Possible values include: + * 'Consecutive', 'Total' + * @property {string} [trigger.metricTrigger.metricColumn] Evaluation of + * metric on a particular column */ constructor() { super(); @@ -89,7 +89,7 @@ class AlertingAction extends models['Action'] { } }, aznsAction: { - required: true, + required: false, serializedName: 'aznsAction', type: { name: 'Composite', diff --git a/lib/services/monitorManagement/lib/models/armRoleReceiver.js b/lib/services/monitorManagement/lib/models/armRoleReceiver.js index 6b3ef75e62..422989e1ae 100644 --- a/lib/services/monitorManagement/lib/models/armRoleReceiver.js +++ b/lib/services/monitorManagement/lib/models/armRoleReceiver.js @@ -17,9 +17,9 @@ class ArmRoleReceiver { /** * Create a ArmRoleReceiver. - * @member {string} name The name of the arm role receiver. Names must be + * @property {string} name The name of the arm role receiver. Names must be * unique across all receivers within an action group. - * @member {string} roleId The arm role id. + * @property {string} roleId The arm role id. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/automationRunbookReceiver.js b/lib/services/monitorManagement/lib/models/automationRunbookReceiver.js index b54ae4d250..2de8a7f17e 100644 --- a/lib/services/monitorManagement/lib/models/automationRunbookReceiver.js +++ b/lib/services/monitorManagement/lib/models/automationRunbookReceiver.js @@ -17,15 +17,15 @@ class AutomationRunbookReceiver { /** * Create a AutomationRunbookReceiver. - * @member {string} automationAccountId The Azure automation account Id which - * holds this runbook and authenticate to Azure resource. - * @member {string} runbookName The name for this runbook. - * @member {string} webhookResourceId The resource id for webhook linked to + * @property {string} automationAccountId The Azure automation account Id + * which holds this runbook and authenticate to Azure resource. + * @property {string} runbookName The name for this runbook. + * @property {string} webhookResourceId The resource id for webhook linked to * this runbook. - * @member {boolean} isGlobalRunbook Indicates whether this instance is + * @property {boolean} isGlobalRunbook Indicates whether this instance is * global runbook. - * @member {string} [name] Indicates name of the webhook. - * @member {string} [serviceUri] The URI where webhooks should be sent. + * @property {string} [name] Indicates name of the webhook. + * @property {string} [serviceUri] The URI where webhooks should be sent. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/autoscaleNotification.js b/lib/services/monitorManagement/lib/models/autoscaleNotification.js index df7056debe..927721b6d4 100644 --- a/lib/services/monitorManagement/lib/models/autoscaleNotification.js +++ b/lib/services/monitorManagement/lib/models/autoscaleNotification.js @@ -17,14 +17,14 @@ class AutoscaleNotification { /** * Create a AutoscaleNotification. - * @member {object} [email] the email notification. - * @member {boolean} [email.sendToSubscriptionAdministrator] a value + * @property {object} [email] the email notification. + * @property {boolean} [email.sendToSubscriptionAdministrator] a value * indicating whether to send email to subscription administrator. - * @member {boolean} [email.sendToSubscriptionCoAdministrators] a value + * @property {boolean} [email.sendToSubscriptionCoAdministrators] a value * indicating whether to send email to subscription co-administrators. - * @member {array} [email.customEmails] the custom e-mails list. This value + * @property {array} [email.customEmails] the custom e-mails list. This value * can be null or empty, in which case this attribute will be ignored. - * @member {array} [webhooks] the collection of webhook notifications. + * @property {array} [webhooks] the collection of webhook notifications. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/autoscaleProfile.js b/lib/services/monitorManagement/lib/models/autoscaleProfile.js index 0e71d11fc7..2cd7eb78da 100644 --- a/lib/services/monitorManagement/lib/models/autoscaleProfile.js +++ b/lib/services/monitorManagement/lib/models/autoscaleProfile.js @@ -17,24 +17,24 @@ class AutoscaleProfile { /** * Create a AutoscaleProfile. - * @member {string} name the name of the profile. - * @member {object} capacity the number of instances that can be used during - * this profile. - * @member {string} [capacity.minimum] the minimum number of instances for + * @property {string} name the name of the profile. + * @property {object} capacity the number of instances that can be used + * during this profile. + * @property {string} [capacity.minimum] the minimum number of instances for * the resource. - * @member {string} [capacity.maximum] the maximum number of instances for + * @property {string} [capacity.maximum] the maximum number of instances for * the resource. The actual maximum number of instances is limited by the * cores that are available in the subscription. - * @member {string} [capacity.default] the number of instances that will be + * @property {string} [capacity.default] the number of instances that will be * set if metrics are not available for evaluation. The default is only used * if the current instance count is lower than the default. - * @member {array} rules the collection of rules that provide the triggers + * @property {array} rules the collection of rules that provide the triggers * and parameters for the scaling action. A maximum of 10 rules can be * specified. - * @member {object} [fixedDate] the specific date-time for the profile. This - * element is not used if the Recurrence element is used. - * @member {string} [fixedDate.timeZone] the timezone of the start and end - * times for the profile. Some examples of valid timezones are: Dateline + * @property {object} [fixedDate] the specific date-time for the profile. + * This element is not used if the Recurrence element is used. + * @property {string} [fixedDate.timeZone] the timezone of the start and end + * times for the profile. Some examples of valid time zones are: Dateline * Standard Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, * Pacific Standard Time (Mexico), Pacific Standard Time, US Mountain * Standard Time, Mountain Standard Time (Mexico), Mountain Standard Time, @@ -71,65 +71,65 @@ class AutoscaleProfile { * Time Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New * Zealand Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard * Time, Tonga Standard Time, Samoa Standard Time, Line Islands Standard Time - * @member {date} [fixedDate.start] the start time for the profile in ISO + * @property {date} [fixedDate.start] the start time for the profile in ISO * 8601 format. - * @member {date} [fixedDate.end] the end time for the profile in ISO 8601 + * @property {date} [fixedDate.end] the end time for the profile in ISO 8601 * format. - * @member {object} [recurrence] the repeating times at which this profile + * @property {object} [recurrence] the repeating times at which this profile * begins. This element is not used if the FixedDate element is used. - * @member {string} [recurrence.frequency] the recurrence frequency. How + * @property {string} [recurrence.frequency] the recurrence frequency. How * often the schedule profile should take effect. This value must be Week, * meaning each week will have the same set of profiles. For example, to set * a daily schedule, set **schedule** to every day of the week. The frequency * property specifies that the schedule is repeated weekly. Possible values * include: 'None', 'Second', 'Minute', 'Hour', 'Day', 'Week', 'Month', * 'Year' - * @member {object} [recurrence.schedule] the scheduling constraints for when - * the profile begins. - * @member {string} [recurrence.schedule.timeZone] the timezone for the hours - * of the profile. Some examples of valid timezones are: Dateline Standard - * Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific - * Standard Time (Mexico), Pacific Standard Time, US Mountain Standard Time, - * Mountain Standard Time (Mexico), Mountain Standard Time, Central America - * Standard Time, Central Standard Time, Central Standard Time (Mexico), - * Canada Central Standard Time, SA Pacific Standard Time, Eastern Standard - * Time, US Eastern Standard Time, Venezuela Standard Time, Paraguay Standard - * Time, Atlantic Standard Time, Central Brazilian Standard Time, SA Western - * Standard Time, Pacific SA Standard Time, Newfoundland Standard Time, E. - * South America Standard Time, Argentina Standard Time, SA Eastern Standard - * Time, Greenland Standard Time, Montevideo Standard Time, Bahia Standard - * Time, UTC-02, Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde - * Standard Time, Morocco Standard Time, UTC, GMT Standard Time, Greenwich - * Standard Time, W. Europe Standard Time, Central Europe Standard Time, - * Romance Standard Time, Central European Standard Time, W. Central Africa - * Standard Time, Namibia Standard Time, Jordan Standard Time, GTB Standard - * Time, Middle East Standard Time, Egypt Standard Time, Syria Standard Time, - * E. Europe Standard Time, South Africa Standard Time, FLE Standard Time, - * Turkey Standard Time, Israel Standard Time, Kaliningrad Standard Time, - * Libya Standard Time, Arabic Standard Time, Arab Standard Time, Belarus - * Standard Time, Russian Standard Time, E. Africa Standard Time, Iran - * Standard Time, Arabian Standard Time, Azerbaijan Standard Time, Russia - * Time Zone 3, Mauritius Standard Time, Georgian Standard Time, Caucasus - * Standard Time, Afghanistan Standard Time, West Asia Standard Time, - * Ekaterinburg Standard Time, Pakistan Standard Time, India Standard Time, - * Sri Lanka Standard Time, Nepal Standard Time, Central Asia Standard Time, - * Bangladesh Standard Time, N. Central Asia Standard Time, Myanmar Standard - * Time, SE Asia Standard Time, North Asia Standard Time, China Standard - * Time, North Asia East Standard Time, Singapore Standard Time, W. Australia - * Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time, Tokyo - * Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen. Australia - * Standard Time, AUS Central Standard Time, E. Australia Standard Time, AUS - * Eastern Standard Time, West Pacific Standard Time, Tasmania Standard Time, - * Magadan Standard Time, Vladivostok Standard Time, Russia Time Zone 10, - * Central Pacific Standard Time, Russia Time Zone 11, New Zealand Standard - * Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga Standard - * Time, Samoa Standard Time, Line Islands Standard Time - * @member {array} [recurrence.schedule.days] the collection of days that the - * profile takes effect on. Possible values are Sunday through Saturday. - * @member {array} [recurrence.schedule.hours] A collection of hours that the - * profile takes effect on. Values supported are 0 to 23 on the 24-hour clock - * (AM/PM times are not supported). - * @member {array} [recurrence.schedule.minutes] A collection of minutes at + * @property {object} [recurrence.schedule] the scheduling constraints for + * when the profile begins. + * @property {string} [recurrence.schedule.timeZone] the timezone for the + * hours of the profile. Some examples of valid time zones are: Dateline + * Standard Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, + * Pacific Standard Time (Mexico), Pacific Standard Time, US Mountain + * Standard Time, Mountain Standard Time (Mexico), Mountain Standard Time, + * Central America Standard Time, Central Standard Time, Central Standard + * Time (Mexico), Canada Central Standard Time, SA Pacific Standard Time, + * Eastern Standard Time, US Eastern Standard Time, Venezuela Standard Time, + * Paraguay Standard Time, Atlantic Standard Time, Central Brazilian Standard + * Time, SA Western Standard Time, Pacific SA Standard Time, Newfoundland + * Standard Time, E. South America Standard Time, Argentina Standard Time, SA + * Eastern Standard Time, Greenland Standard Time, Montevideo Standard Time, + * Bahia Standard Time, UTC-02, Mid-Atlantic Standard Time, Azores Standard + * Time, Cape Verde Standard Time, Morocco Standard Time, UTC, GMT Standard + * Time, Greenwich Standard Time, W. Europe Standard Time, Central Europe + * Standard Time, Romance Standard Time, Central European Standard Time, W. + * Central Africa Standard Time, Namibia Standard Time, Jordan Standard Time, + * GTB Standard Time, Middle East Standard Time, Egypt Standard Time, Syria + * Standard Time, E. Europe Standard Time, South Africa Standard Time, FLE + * Standard Time, Turkey Standard Time, Israel Standard Time, Kaliningrad + * Standard Time, Libya Standard Time, Arabic Standard Time, Arab Standard + * Time, Belarus Standard Time, Russian Standard Time, E. Africa Standard + * Time, Iran Standard Time, Arabian Standard Time, Azerbaijan Standard Time, + * Russia Time Zone 3, Mauritius Standard Time, Georgian Standard Time, + * Caucasus Standard Time, Afghanistan Standard Time, West Asia Standard + * Time, Ekaterinburg Standard Time, Pakistan Standard Time, India Standard + * Time, Sri Lanka Standard Time, Nepal Standard Time, Central Asia Standard + * Time, Bangladesh Standard Time, N. Central Asia Standard Time, Myanmar + * Standard Time, SE Asia Standard Time, North Asia Standard Time, China + * Standard Time, North Asia East Standard Time, Singapore Standard Time, W. + * Australia Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time, + * Tokyo Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen. + * Australia Standard Time, AUS Central Standard Time, E. Australia Standard + * Time, AUS Eastern Standard Time, West Pacific Standard Time, Tasmania + * Standard Time, Magadan Standard Time, Vladivostok Standard Time, Russia + * Time Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New + * Zealand Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard + * Time, Tonga Standard Time, Samoa Standard Time, Line Islands Standard Time + * @property {array} [recurrence.schedule.days] the collection of days that + * the profile takes effect on. Possible values are Sunday through Saturday. + * @property {array} [recurrence.schedule.hours] A collection of hours that + * the profile takes effect on. Values supported are 0 to 23 on the 24-hour + * clock (AM/PM times are not supported). + * @property {array} [recurrence.schedule.minutes] A collection of minutes at * which the profile takes effect at. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/autoscaleSettingResource.js b/lib/services/monitorManagement/lib/models/autoscaleSettingResource.js index d5363c2f72..4b854d52b1 100644 --- a/lib/services/monitorManagement/lib/models/autoscaleSettingResource.js +++ b/lib/services/monitorManagement/lib/models/autoscaleSettingResource.js @@ -20,16 +20,16 @@ const models = require('./index'); class AutoscaleSettingResource extends models['Resource'] { /** * Create a AutoscaleSettingResource. - * @member {array} profiles the collection of automatic scaling profiles that - * specify different scaling parameters for different time periods. A maximum - * of 20 profiles can be specified. - * @member {array} [notifications] the collection of notifications. - * @member {boolean} [enabled] the enabled flag. Specifies whether automatic - * scaling is enabled for the resource. The default value is 'true'. Default - * value: true . - * @member {string} [autoscaleSettingResourceName] the name of the autoscale - * setting. - * @member {string} [targetResourceUri] the resource identifier of the + * @property {array} profiles the collection of automatic scaling profiles + * that specify different scaling parameters for different time periods. A + * maximum of 20 profiles can be specified. + * @property {array} [notifications] the collection of notifications. + * @property {boolean} [enabled] the enabled flag. Specifies whether + * automatic scaling is enabled for the resource. The default value is + * 'true'. Default value: true . + * @property {string} [autoscaleSettingResourceName] the name of the + * autoscale setting. + * @property {string} [targetResourceUri] the resource identifier of the * resource that the autoscale setting should be added to. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/autoscaleSettingResourceCollection.js b/lib/services/monitorManagement/lib/models/autoscaleSettingResourceCollection.js index 0f0ca6ac53..6de0d59d45 100644 --- a/lib/services/monitorManagement/lib/models/autoscaleSettingResourceCollection.js +++ b/lib/services/monitorManagement/lib/models/autoscaleSettingResourceCollection.js @@ -16,7 +16,7 @@ class AutoscaleSettingResourceCollection extends Array { /** * Create a AutoscaleSettingResourceCollection. - * @member {string} [nextLink] URL to get the next set of results. + * @property {string} [nextLink] URL to get the next set of results. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/autoscaleSettingResourcePatch.js b/lib/services/monitorManagement/lib/models/autoscaleSettingResourcePatch.js index 5a16e79145..93e9a1da65 100644 --- a/lib/services/monitorManagement/lib/models/autoscaleSettingResourcePatch.js +++ b/lib/services/monitorManagement/lib/models/autoscaleSettingResourcePatch.js @@ -17,16 +17,16 @@ class AutoscaleSettingResourcePatch { /** * Create a AutoscaleSettingResourcePatch. - * @member {object} [tags] Resource tags - * @member {array} profiles the collection of automatic scaling profiles that - * specify different scaling parameters for different time periods. A maximum - * of 20 profiles can be specified. - * @member {array} [notifications] the collection of notifications. - * @member {boolean} [enabled] the enabled flag. Specifies whether automatic - * scaling is enabled for the resource. The default value is 'true'. Default - * value: true . - * @member {string} [name] the name of the autoscale setting. - * @member {string} [targetResourceUri] the resource identifier of the + * @property {object} [tags] Resource tags + * @property {array} profiles the collection of automatic scaling profiles + * that specify different scaling parameters for different time periods. A + * maximum of 20 profiles can be specified. + * @property {array} [notifications] the collection of notifications. + * @property {boolean} [enabled] the enabled flag. Specifies whether + * automatic scaling is enabled for the resource. The default value is + * 'true'. Default value: true . + * @property {string} [name] the name of the autoscale setting. + * @property {string} [targetResourceUri] the resource identifier of the * resource that the autoscale setting should be added to. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/azNsActionGroup.js b/lib/services/monitorManagement/lib/models/azNsActionGroup.js index c3d0dea8ee..557cbd3a4c 100644 --- a/lib/services/monitorManagement/lib/models/azNsActionGroup.js +++ b/lib/services/monitorManagement/lib/models/azNsActionGroup.js @@ -17,11 +17,11 @@ class AzNsActionGroup { /** * Create a AzNsActionGroup. - * @member {array} [actionGroup] Azure Action Group reference. - * @member {string} [emailSubject] Custom subject override for all email ids - * in Azure action group - * @member {string} [customWebhookPayload] Custom payload to be sent for all - * webook URI in Azure action group + * @property {array} [actionGroup] Azure Action Group reference. + * @property {string} [emailSubject] Custom subject override for all email + * ids in Azure action group + * @property {string} [customWebhookPayload] Custom payload to be sent for + * all webhook URI in Azure action group */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/azureAppPushReceiver.js b/lib/services/monitorManagement/lib/models/azureAppPushReceiver.js index 0360bb90f0..5458430133 100644 --- a/lib/services/monitorManagement/lib/models/azureAppPushReceiver.js +++ b/lib/services/monitorManagement/lib/models/azureAppPushReceiver.js @@ -17,9 +17,9 @@ class AzureAppPushReceiver { /** * Create a AzureAppPushReceiver. - * @member {string} name The name of the Azure mobile app push receiver. + * @property {string} name The name of the Azure mobile app push receiver. * Names must be unique across all receivers within an action group. - * @member {string} emailAddress The email address registered for the Azure + * @property {string} emailAddress The email address registered for the Azure * mobile app. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/azureFunctionReceiver.js b/lib/services/monitorManagement/lib/models/azureFunctionReceiver.js index 1252eef8a7..385154e52f 100644 --- a/lib/services/monitorManagement/lib/models/azureFunctionReceiver.js +++ b/lib/services/monitorManagement/lib/models/azureFunctionReceiver.js @@ -17,12 +17,12 @@ class AzureFunctionReceiver { /** * Create a AzureFunctionReceiver. - * @member {string} name The name of the azure function receiver. Names must - * be unique across all receivers within an action group. - * @member {string} functionAppResourceId The azure resource id of the + * @property {string} name The name of the azure function receiver. Names + * must be unique across all receivers within an action group. + * @property {string} functionAppResourceId The azure resource id of the * function app. - * @member {string} functionName The function name in the function app. - * @member {string} httpTriggerUrl The http trigger url where http request + * @property {string} functionName The function name in the function app. + * @property {string} httpTriggerUrl The http trigger url where http request * sent to. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/baseline.js b/lib/services/monitorManagement/lib/models/baseline.js index ffd9d6f3eb..9fe8ca1f12 100644 --- a/lib/services/monitorManagement/lib/models/baseline.js +++ b/lib/services/monitorManagement/lib/models/baseline.js @@ -17,10 +17,10 @@ class Baseline { /** * Create a Baseline. - * @member {string} sensitivity the sensitivity of the baseline. Possible + * @property {string} sensitivity the sensitivity of the baseline. Possible * values include: 'Low', 'Medium', 'High' - * @member {array} lowThresholds The low thresholds of the baseline. - * @member {array} highThresholds The high thresholds of the baseline. + * @property {array} lowThresholds The low thresholds of the baseline. + * @property {array} highThresholds The high thresholds of the baseline. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/baselineMetadataValue.js b/lib/services/monitorManagement/lib/models/baselineMetadataValue.js index 904515ec31..9f8001a7fd 100644 --- a/lib/services/monitorManagement/lib/models/baselineMetadataValue.js +++ b/lib/services/monitorManagement/lib/models/baselineMetadataValue.js @@ -17,10 +17,10 @@ class BaselineMetadataValue { /** * Create a BaselineMetadataValue. - * @member {object} [name] the name of the metadata. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [value] the value of the metadata. + * @property {object} [name] the name of the metadata. + * @property {string} [name.value] the invariant value. + * @property {string} [name.localizedValue] the locale specific value. + * @property {string} [value] the value of the metadata. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/baselineResponse.js b/lib/services/monitorManagement/lib/models/baselineResponse.js index 4a7ff3c87e..4ca7908791 100644 --- a/lib/services/monitorManagement/lib/models/baselineResponse.js +++ b/lib/services/monitorManagement/lib/models/baselineResponse.js @@ -17,24 +17,24 @@ class BaselineResponse { /** * Create a BaselineResponse. - * @member {string} [id] the metric baseline Id. - * @member {string} [type] the resource type of the baseline resource. - * @member {object} [name] the name and the display name of the metric, i.e. - * it is localizable string. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [timespan] The timespan for which the data was retrieved. - * Its value consists of two datatimes concatenated, separated by '/'. This - * may be adjusted in the future and returned back from what was originally - * requested. - * @member {moment.duration} [interval] The interval (window size) for which - * the metric data was returned in. This may be adjusted in the future and - * returned back from what was originally requested. This is not present if - * a metadata request was made. - * @member {string} [aggregation] The aggregation type of the metric. - * @member {array} [timestamps] the array of timestamps of the baselines. - * @member {array} [baseline] the baseline values for each sensitivity. - * @member {array} [metadata] the baseline metadata values. + * @property {string} [id] the metric baseline Id. + * @property {string} [type] the resource type of the baseline resource. + * @property {object} [name] the name and the display name of the metric, + * i.e. it is localizable string. + * @property {string} [name.value] the invariant value. + * @property {string} [name.localizedValue] the locale specific value. + * @property {string} [timespan] The timespan for which the data was + * retrieved. Its value consists of two datetimes concatenated, separated by + * '/'. This may be adjusted in the future and returned back from what was + * originally requested. + * @property {moment.duration} [interval] The interval (window size) for + * which the metric data was returned in. This may be adjusted in the future + * and returned back from what was originally requested. This is not present + * if a metadata request was made. + * @property {string} [aggregation] The aggregation type of the metric. + * @property {array} [timestamps] the array of timestamps of the baselines. + * @property {array} [baseline] the baseline values for each sensitivity. + * @property {array} [metadata] the baseline metadata values. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/calculateBaselineResponse.js b/lib/services/monitorManagement/lib/models/calculateBaselineResponse.js index 2c3984cfe7..a84104a523 100644 --- a/lib/services/monitorManagement/lib/models/calculateBaselineResponse.js +++ b/lib/services/monitorManagement/lib/models/calculateBaselineResponse.js @@ -11,15 +11,15 @@ 'use strict'; /** - * The response to a calcualte baseline call. + * The response to a calculate baseline call. * */ class CalculateBaselineResponse { /** * Create a CalculateBaselineResponse. - * @member {string} type the resource type of the baseline resource. - * @member {array} [timestamps] the array of timestamps of the baselines. - * @member {array} baseline the baseline values for each sensitivity. + * @property {string} type the resource type of the baseline resource. + * @property {array} [timestamps] the array of timestamps of the baselines. + * @property {array} baseline the baseline values for each sensitivity. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/criteria.js b/lib/services/monitorManagement/lib/models/criteria.js index 00c198d834..bc596a475b 100644 --- a/lib/services/monitorManagement/lib/models/criteria.js +++ b/lib/services/monitorManagement/lib/models/criteria.js @@ -17,8 +17,8 @@ class Criteria { /** * Create a Criteria. - * @member {string} metricName Name of the metric - * @member {array} [dimensions] List of Dimensions for creating metric + * @property {string} metricName Name of the metric + * @property {array} [dimensions] List of Dimensions for creating metric */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/dataContainer.js b/lib/services/monitorManagement/lib/models/dataContainer.js new file mode 100644 index 0000000000..3cfd3ac99c --- /dev/null +++ b/lib/services/monitorManagement/lib/models/dataContainer.js @@ -0,0 +1,59 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +'use strict'; + +/** + * Information about a container with data for a given resource. + * + */ +class DataContainer { + /** + * Create a DataContainer. + * @property {object} workspace Log Analytics workspace information. + * @property {string} [workspace.id] Azure Resource Manager identifier of the + * Log Analytics Workspace. + * @property {string} [workspace.location] Location of the Log Analytics + * workspace. + * @property {string} [workspace.customerId] Log Analytics workspace + * identifier. + */ + constructor() { + } + + /** + * Defines the metadata of DataContainer + * + * @returns {object} metadata of DataContainer + * + */ + mapper() { + return { + required: false, + serializedName: 'DataContainer', + type: { + name: 'Composite', + className: 'DataContainer', + modelProperties: { + workspace: { + required: true, + serializedName: 'workspace', + type: { + name: 'Composite', + className: 'WorkspaceInfo' + } + } + } + } + }; + } +} + +module.exports = DataContainer; diff --git a/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResource.js b/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResource.js index 6d79f2a7f3..3513bfd8e6 100644 --- a/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResource.js +++ b/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResource.js @@ -20,7 +20,7 @@ const models = require('./index'); class DiagnosticSettingsCategoryResource extends models['ProxyOnlyResource'] { /** * Create a DiagnosticSettingsCategoryResource. - * @member {string} [categoryType] The type of the diagnostic settings + * @property {string} [categoryType] The type of the diagnostic settings * category. Possible values include: 'Metrics', 'Logs' */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResourceCollection.js b/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResourceCollection.js index b3808199b6..3c3ce0d068 100644 --- a/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResourceCollection.js +++ b/lib/services/monitorManagement/lib/models/diagnosticSettingsCategoryResourceCollection.js @@ -17,7 +17,7 @@ class DiagnosticSettingsCategoryResourceCollection { /** * Create a DiagnosticSettingsCategoryResourceCollection. - * @member {array} [value] The collection of diagnostic settings category + * @property {array} [value] The collection of diagnostic settings category * resources. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/diagnosticSettingsResource.js b/lib/services/monitorManagement/lib/models/diagnosticSettingsResource.js index e4b3da0650..ee9b1bdf70 100644 --- a/lib/services/monitorManagement/lib/models/diagnosticSettingsResource.js +++ b/lib/services/monitorManagement/lib/models/diagnosticSettingsResource.js @@ -20,17 +20,17 @@ const models = require('./index'); class DiagnosticSettingsResource extends models['ProxyOnlyResource'] { /** * Create a DiagnosticSettingsResource. - * @member {string} [storageAccountId] The resource ID of the storage account - * to which you would like to send Diagnostic Logs. - * @member {string} [serviceBusRuleId] The service bus rule Id of the + * @property {string} [storageAccountId] The resource ID of the storage + * account to which you would like to send Diagnostic Logs. + * @property {string} [serviceBusRuleId] The service bus rule Id of the * diagnostic setting. This is here to maintain backwards compatibility. - * @member {string} [eventHubAuthorizationRuleId] The resource Id for the + * @property {string} [eventHubAuthorizationRuleId] The resource Id for the * event hub authorization rule. - * @member {string} [eventHubName] The name of the event hub. If none is + * @property {string} [eventHubName] The name of the event hub. If none is * specified, the default event hub will be selected. - * @member {array} [metrics] the list of metric settings. - * @member {array} [logs] the list of logs settings. - * @member {string} [workspaceId] The workspace ID (resource ID of a Log + * @property {array} [metrics] the list of metric settings. + * @property {array} [logs] the list of logs settings. + * @property {string} [workspaceId] The workspace ID (resource ID of a Log * Analytics workspace) for a Log Analytics workspace to which you would like * to send Diagnostic Logs. Example: * /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2 diff --git a/lib/services/monitorManagement/lib/models/diagnosticSettingsResourceCollection.js b/lib/services/monitorManagement/lib/models/diagnosticSettingsResourceCollection.js index adf6899c2e..c96a9b3f66 100644 --- a/lib/services/monitorManagement/lib/models/diagnosticSettingsResourceCollection.js +++ b/lib/services/monitorManagement/lib/models/diagnosticSettingsResourceCollection.js @@ -17,7 +17,8 @@ class DiagnosticSettingsResourceCollection { /** * Create a DiagnosticSettingsResourceCollection. - * @member {array} [value] The collection of diagnostic settings resources;. + * @property {array} [value] The collection of diagnostic settings + * resources;. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/dimension.js b/lib/services/monitorManagement/lib/models/dimension.js index f5d573c594..d415826c49 100644 --- a/lib/services/monitorManagement/lib/models/dimension.js +++ b/lib/services/monitorManagement/lib/models/dimension.js @@ -17,8 +17,8 @@ class Dimension { /** * Create a Dimension. - * @member {string} name Name of the dimension - * @member {array} values List of dimension values + * @property {string} name Name of the dimension + * @property {array} values List of dimension values */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/emailNotification.js b/lib/services/monitorManagement/lib/models/emailNotification.js index c11f1b2d24..224446f2e1 100644 --- a/lib/services/monitorManagement/lib/models/emailNotification.js +++ b/lib/services/monitorManagement/lib/models/emailNotification.js @@ -17,12 +17,12 @@ class EmailNotification { /** * Create a EmailNotification. - * @member {boolean} [sendToSubscriptionAdministrator] a value indicating + * @property {boolean} [sendToSubscriptionAdministrator] a value indicating * whether to send email to subscription administrator. - * @member {boolean} [sendToSubscriptionCoAdministrators] a value indicating - * whether to send email to subscription co-administrators. - * @member {array} [customEmails] the custom e-mails list. This value can be - * null or empty, in which case this attribute will be ignored. + * @property {boolean} [sendToSubscriptionCoAdministrators] a value + * indicating whether to send email to subscription co-administrators. + * @property {array} [customEmails] the custom e-mails list. This value can + * be null or empty, in which case this attribute will be ignored. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/emailReceiver.js b/lib/services/monitorManagement/lib/models/emailReceiver.js index 508eac1ad4..6fb715da8a 100644 --- a/lib/services/monitorManagement/lib/models/emailReceiver.js +++ b/lib/services/monitorManagement/lib/models/emailReceiver.js @@ -17,10 +17,10 @@ class EmailReceiver { /** * Create a EmailReceiver. - * @member {string} name The name of the email receiver. Names must be unique - * across all receivers within an action group. - * @member {string} emailAddress The email address of this receiver. - * @member {string} [status] The receiver status of the e-mail. Possible + * @property {string} name The name of the email receiver. Names must be + * unique across all receivers within an action group. + * @property {string} emailAddress The email address of this receiver. + * @property {string} [status] The receiver status of the e-mail. Possible * values include: 'NotSpecified', 'Enabled', 'Disabled' */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/enableRequest.js b/lib/services/monitorManagement/lib/models/enableRequest.js index 886d80bc33..b84fa5be88 100644 --- a/lib/services/monitorManagement/lib/models/enableRequest.js +++ b/lib/services/monitorManagement/lib/models/enableRequest.js @@ -17,7 +17,7 @@ class EnableRequest { /** * Create a EnableRequest. - * @member {string} receiverName The name of the receiver to resubscribe. + * @property {string} receiverName The name of the receiver to resubscribe. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/errorModel.js b/lib/services/monitorManagement/lib/models/errorModel.js new file mode 100644 index 0000000000..aa58dbe728 --- /dev/null +++ b/lib/services/monitorManagement/lib/models/errorModel.js @@ -0,0 +1,60 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +'use strict'; + +/** + * Error details. + * + */ +class ErrorModel { + /** + * Create a ErrorModel. + * @property {string} code Error code identifying the specific error. + * @property {string} [message] Error message in the caller's locale. + */ + constructor() { + } + + /** + * Defines the metadata of ErrorModel + * + * @returns {object} metadata of ErrorModel + * + */ + mapper() { + return { + required: false, + serializedName: 'Error', + type: { + name: 'Composite', + className: 'ErrorModel', + modelProperties: { + code: { + required: true, + serializedName: 'code', + type: { + name: 'String' + } + }, + message: { + required: false, + serializedName: 'message', + type: { + name: 'String' + } + } + } + } + }; + } +} + +module.exports = ErrorModel; diff --git a/lib/services/monitorManagement/lib/models/errorResponse.js b/lib/services/monitorManagement/lib/models/errorResponse.js index f952d62061..fc85ac1b8b 100644 --- a/lib/services/monitorManagement/lib/models/errorResponse.js +++ b/lib/services/monitorManagement/lib/models/errorResponse.js @@ -17,8 +17,8 @@ class ErrorResponse { /** * Create a ErrorResponse. - * @member {string} [code] Error code - * @member {string} [message] Error message indicating why the operation + * @property {string} [code] Error code + * @property {string} [message] Error message indicating why the operation * failed. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/eventData.js b/lib/services/monitorManagement/lib/models/eventData.js index 5b22aed759..4414d1587f 100644 --- a/lib/services/monitorManagement/lib/models/eventData.js +++ b/lib/services/monitorManagement/lib/models/eventData.js @@ -17,86 +17,88 @@ class EventData { /** * Create a EventData. - * @member {object} [authorization] The sender authorization information. - * @member {string} [authorization.action] the permissible actions. For + * @property {object} [authorization] The sender authorization information. + * @property {string} [authorization.action] the permissible actions. For * instance: microsoft.support/supporttickets/write - * @member {string} [authorization.role] the role of the user. For instance: - * Subscription Admin - * @member {string} [authorization.scope] the scope. - * @member {object} [claims] key value pairs to identify ARM permissions. - * @member {string} [caller] the email address of the user who has performed - * the operation, the UPN claim or SPN claim based on availability. - * @member {string} [description] the description of the event. - * @member {string} [id] the Id of this event as required by ARM for RBAC. It - * contains the EventDataID and a timestamp information. - * @member {string} [eventDataId] the event data Id. This is a unique + * @property {string} [authorization.role] the role of the user. For + * instance: Subscription Admin + * @property {string} [authorization.scope] the scope. + * @property {object} [claims] key value pairs to identify ARM permissions. + * @property {string} [caller] the email address of the user who has + * performed the operation, the UPN claim or SPN claim based on availability. + * @property {string} [description] the description of the event. + * @property {string} [id] the Id of this event as required by ARM for RBAC. + * It contains the EventDataID and a timestamp information. + * @property {string} [eventDataId] the event data Id. This is a unique * identifier for an event. - * @member {string} [correlationId] the correlation Id, usually a GUID in the - * string format. The correlation Id is shared among the events that belong - * to the same uber operation. - * @member {object} [eventName] the event name. This value should not be + * @property {string} [correlationId] the correlation Id, usually a GUID in + * the string format. The correlation Id is shared among the events that + * belong to the same uber operation. + * @property {object} [eventName] the event name. This value should not be * confused with OperationName. For practical purposes, OperationName might * be more appealing to end users. - * @member {string} [eventName.value] the invariant value. - * @member {string} [eventName.localizedValue] the locale specific value. - * @member {object} [category] the event category. - * @member {string} [category.value] the invariant value. - * @member {string} [category.localizedValue] the locale specific value. - * @member {object} [httpRequest] the HTTP request info. Usually includes the - * 'clientRequestId', 'clientIpAddress' (IP address of the user who initiated - * the event) and 'method' (HTTP method e.g. PUT). - * @member {string} [httpRequest.clientRequestId] the client request id. - * @member {string} [httpRequest.clientIpAddress] the client Ip Address - * @member {string} [httpRequest.method] the Http request method. - * @member {string} [httpRequest.uri] the Uri. - * @member {string} [level] the event level. Possible values include: + * @property {string} [eventName.value] the invariant value. + * @property {string} [eventName.localizedValue] the locale specific value. + * @property {object} [category] the event category. + * @property {string} [category.value] the invariant value. + * @property {string} [category.localizedValue] the locale specific value. + * @property {object} [httpRequest] the HTTP request info. Usually includes + * the 'clientRequestId', 'clientIpAddress' (IP address of the user who + * initiated the event) and 'method' (HTTP method e.g. PUT). + * @property {string} [httpRequest.clientRequestId] the client request id. + * @property {string} [httpRequest.clientIpAddress] the client Ip Address + * @property {string} [httpRequest.method] the Http request method. + * @property {string} [httpRequest.uri] the Uri. + * @property {string} [level] the event level. Possible values include: * 'Critical', 'Error', 'Warning', 'Informational', 'Verbose' - * @member {string} [resourceGroupName] the resource group name of the + * @property {string} [resourceGroupName] the resource group name of the * impacted resource. - * @member {object} [resourceProviderName] the resource provider name of the - * impacted resource. - * @member {string} [resourceProviderName.value] the invariant value. - * @member {string} [resourceProviderName.localizedValue] the locale specific - * value. - * @member {string} [resourceId] the resource uri that uniquely identifies + * @property {object} [resourceProviderName] the resource provider name of + * the impacted resource. + * @property {string} [resourceProviderName.value] the invariant value. + * @property {string} [resourceProviderName.localizedValue] the locale + * specific value. + * @property {string} [resourceId] the resource uri that uniquely identifies * the resource that caused this event. - * @member {object} [resourceType] the resource type - * @member {string} [resourceType.value] the invariant value. - * @member {string} [resourceType.localizedValue] the locale specific value. - * @member {string} [operationId] It is usually a GUID shared among the + * @property {object} [resourceType] the resource type + * @property {string} [resourceType.value] the invariant value. + * @property {string} [resourceType.localizedValue] the locale specific + * value. + * @property {string} [operationId] It is usually a GUID shared among the * events corresponding to single operation. This value should not be * confused with EventName. - * @member {object} [operationName] the operation name. - * @member {string} [operationName.value] the invariant value. - * @member {string} [operationName.localizedValue] the locale specific value. - * @member {object} [properties] the set of pairs (usually a + * @property {object} [operationName] the operation name. + * @property {string} [operationName.value] the invariant value. + * @property {string} [operationName.localizedValue] the locale specific + * value. + * @property {object} [properties] the set of pairs (usually a * Dictionary) that includes details about the event. - * @member {object} [status] a string describing the status of the operation. - * Some typical values are: Started, In progress, Succeeded, Failed, - * Resolved. - * @member {string} [status.value] the invariant value. - * @member {string} [status.localizedValue] the locale specific value. - * @member {object} [subStatus] the event sub status. Most of the time, when - * included, this captures the HTTP status code of the REST call. Common + * @property {object} [status] a string describing the status of the + * operation. Some typical values are: Started, In progress, Succeeded, + * Failed, Resolved. + * @property {string} [status.value] the invariant value. + * @property {string} [status.localizedValue] the locale specific value. + * @property {object} [subStatus] the event sub status. Most of the time, + * when included, this captures the HTTP status code of the REST call. Common * values are: OK (HTTP Status Code: 200), Created (HTTP Status Code: 201), * Accepted (HTTP Status Code: 202), No Content (HTTP Status Code: 204), Bad * Request(HTTP Status Code: 400), Not Found (HTTP Status Code: 404), * Conflict (HTTP Status Code: 409), Internal Server Error (HTTP Status Code: * 500), Service Unavailable (HTTP Status Code:503), Gateway Timeout (HTTP * Status Code: 504) - * @member {string} [subStatus.value] the invariant value. - * @member {string} [subStatus.localizedValue] the locale specific value. - * @member {date} [eventTimestamp] the timestamp of when the event was + * @property {string} [subStatus.value] the invariant value. + * @property {string} [subStatus.localizedValue] the locale specific value. + * @property {date} [eventTimestamp] the timestamp of when the event was * generated by the Azure service processing the request corresponding the * event. It in ISO 8601 format. - * @member {date} [submissionTimestamp] the timestamp of when the event + * @property {date} [submissionTimestamp] the timestamp of when the event * became available for querying via this API. It is in ISO 8601 format. This * value should not be confused eventTimestamp. As there might be a delay * between the occurrence time of the event, and the time that the event is * submitted to the Azure logging infrastructure. - * @member {string} [subscriptionId] the Azure subscription Id usually a + * @property {string} [subscriptionId] the Azure subscription Id usually a * GUID. - * @member {string} [tenantId] the Azure tenant Id + * @property {string} [tenantId] the Azure tenant Id */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/eventDataCollection.js b/lib/services/monitorManagement/lib/models/eventDataCollection.js index 0fe4c985c9..f99e28ee63 100644 --- a/lib/services/monitorManagement/lib/models/eventDataCollection.js +++ b/lib/services/monitorManagement/lib/models/eventDataCollection.js @@ -16,8 +16,8 @@ class EventDataCollection extends Array { /** * Create a EventDataCollection. - * @member {string} [nextLink] Provides the link to retrieve the next set of - * events. + * @property {string} [nextLink] Provides the link to retrieve the next set + * of events. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/httpRequestInfo.js b/lib/services/monitorManagement/lib/models/httpRequestInfo.js index 309dc12fd0..1ce822b7c2 100644 --- a/lib/services/monitorManagement/lib/models/httpRequestInfo.js +++ b/lib/services/monitorManagement/lib/models/httpRequestInfo.js @@ -17,10 +17,10 @@ class HttpRequestInfo { /** * Create a HttpRequestInfo. - * @member {string} [clientRequestId] the client request id. - * @member {string} [clientIpAddress] the client Ip Address - * @member {string} [method] the Http request method. - * @member {string} [uri] the Uri. + * @property {string} [clientRequestId] the client request id. + * @property {string} [clientIpAddress] the client Ip Address + * @property {string} [method] the Http request method. + * @property {string} [uri] the Uri. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/incident.js b/lib/services/monitorManagement/lib/models/incident.js index a591fb7efa..20d7c11bbb 100644 --- a/lib/services/monitorManagement/lib/models/incident.js +++ b/lib/services/monitorManagement/lib/models/incident.js @@ -17,15 +17,16 @@ class Incident { /** * Create a Incident. - * @member {string} [name] Incident name. - * @member {string} [ruleName] Rule name that is associated with the + * @property {string} [name] Incident name. + * @property {string} [ruleName] Rule name that is associated with the * incident. - * @member {boolean} [isActive] A boolean to indicate whether the incident is - * active or resolved. - * @member {date} [activatedTime] The time at which the incident was + * @property {boolean} [isActive] A boolean to indicate whether the incident + * is active or resolved. + * @property {date} [activatedTime] The time at which the incident was * activated in ISO8601 format. - * @member {date} [resolvedTime] The time at which the incident was resolved - * in ISO8601 format. If null, it means the incident is still active. + * @property {date} [resolvedTime] The time at which the incident was + * resolved in ISO8601 format. If null, it means the incident is still + * active. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/index.d.ts b/lib/services/monitorManagement/lib/models/index.d.ts index 7f88faafcc..7c4c00e808 100644 --- a/lib/services/monitorManagement/lib/models/index.d.ts +++ b/lib/services/monitorManagement/lib/models/index.d.ts @@ -1,2698 +1,2559 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { BaseResource } from 'ms-rest-azure'; -import { CloudError } from 'ms-rest-azure'; -import * as moment from 'moment'; +import { BaseResource, CloudError } from "ms-rest-azure"; +import * as moment from "moment"; -export { BaseResource } from 'ms-rest-azure'; -export { CloudError } from 'ms-rest-azure'; +export { + BaseResource, + CloudError +}; /** - * @class - * Initializes a new instance of the Resource class. - * @constructor * An azure resource object - * - * @member {string} [id] Azure resource Id - * @member {string} [name] Azure resource name - * @member {string} [type] Azure resource type - * @member {string} location Resource location - * @member {object} [tags] Resource tags */ export interface Resource extends BaseResource { + /** + * Azure resource Id + */ readonly id?: string; + /** + * Azure resource name + */ readonly name?: string; + /** + * Azure resource type + */ readonly type?: string; + /** + * Resource location + */ location: string; + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; } /** - * @class - * Initializes a new instance of the ScaleCapacity class. - * @constructor * The number of instances that can be used during this profile. - * - * @member {string} minimum the minimum number of instances for the resource. - * @member {string} maximum the maximum number of instances for the resource. - * The actual maximum number of instances is limited by the cores that are - * available in the subscription. - * @member {string} default the number of instances that will be set if metrics - * are not available for evaluation. The default is only used if the current - * instance count is lower than the default. */ export interface ScaleCapacity { + /** + * the minimum number of instances for the resource. + */ minimum: string; + /** + * the maximum number of instances for the resource. The actual maximum number of instances is + * limited by the cores that are available in the subscription. + */ maximum: string; + /** + * the number of instances that will be set if metrics are not available for evaluation. The + * default is only used if the current instance count is lower than the default. + */ default: string; } /** - * @class - * Initializes a new instance of the MetricTrigger class. - * @constructor * The trigger that results in a scaling action. - * - * @member {string} metricName the name of the metric that defines what the - * rule monitors. - * @member {string} metricResourceUri the resource identifier of the resource - * the rule monitors. - * @member {moment.duration} timeGrain the granularity of metrics the rule - * monitors. Must be one of the predefined values returned from metric - * definitions for the metric. Must be between 12 hours and 1 minute. - * @member {string} statistic the metric statistic type. How the metrics from - * multiple instances are combined. Possible values include: 'Average', 'Min', - * 'Max', 'Sum' - * @member {moment.duration} timeWindow the range of time in which instance - * data is collected. This value must be greater than the delay in metric - * collection, which can vary from resource-to-resource. Must be between 12 - * hours and 5 minutes. - * @member {string} timeAggregation time aggregation type. How the data that is - * collected should be combined over time. The default value is Average. - * Possible values include: 'Average', 'Minimum', 'Maximum', 'Total', 'Count', - * 'Last' - * @member {string} operator the operator that is used to compare the metric - * data and the threshold. Possible values include: 'Equals', 'NotEquals', - * 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', 'LessThanOrEqual' - * @member {number} threshold the threshold of the metric that triggers the - * scale action. */ export interface MetricTrigger { + /** + * the name of the metric that defines what the rule monitors. + */ metricName: string; + /** + * the resource identifier of the resource the rule monitors. + */ metricResourceUri: string; + /** + * the granularity of metrics the rule monitors. Must be one of the predefined values returned + * from metric definitions for the metric. Must be between 12 hours and 1 minute. + */ timeGrain: moment.Duration; + /** + * the metric statistic type. How the metrics from multiple instances are combined. Possible + * values include: 'Average', 'Min', 'Max', 'Sum' + */ statistic: string; + /** + * the range of time in which instance data is collected. This value must be greater than the + * delay in metric collection, which can vary from resource-to-resource. Must be between 12 hours + * and 5 minutes. + */ timeWindow: moment.Duration; + /** + * time aggregation type. How the data that is collected should be combined over time. The + * default value is Average. Possible values include: 'Average', 'Minimum', 'Maximum', 'Total', + * 'Count', 'Last' + */ timeAggregation: string; + /** + * the operator that is used to compare the metric data and the threshold. Possible values + * include: 'Equals', 'NotEquals', 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', + * 'LessThanOrEqual' + */ operator: string; + /** + * the threshold of the metric that triggers the scale action. + */ threshold: number; } /** - * @class - * Initializes a new instance of the ScaleAction class. - * @constructor * The parameters for the scaling action. - * - * @member {string} direction the scale direction. Whether the scaling action - * increases or decreases the number of instances. Possible values include: - * 'None', 'Increase', 'Decrease' - * @member {string} type the type of action that should occur when the scale - * rule fires. Possible values include: 'ChangeCount', 'PercentChangeCount', - * 'ExactCount' - * @member {string} [value] the number of instances that are involved in the - * scaling action. This value must be 1 or greater. The default value is 1. - * Default value: '1' . - * @member {moment.duration} cooldown the amount of time to wait since the last - * scaling action before this action occurs. It must be between 1 week and 1 - * minute in ISO 8601 format. */ export interface ScaleAction { + /** + * the scale direction. Whether the scaling action increases or decreases the number of + * instances. Possible values include: 'None', 'Increase', 'Decrease' + */ direction: string; + /** + * the type of action that should occur when the scale rule fires. Possible values include: + * 'ChangeCount', 'PercentChangeCount', 'ExactCount' + */ type: string; + /** + * the number of instances that are involved in the scaling action. This value must be 1 or + * greater. The default value is 1. + */ value?: string; + /** + * the amount of time to wait since the last scaling action before this action occurs. It must be + * between 1 week and 1 minute in ISO 8601 format. + */ cooldown: moment.Duration; } /** - * @class - * Initializes a new instance of the ScaleRule class. - * @constructor * A rule that provide the triggers and parameters for the scaling action. - * - * @member {object} metricTrigger the trigger that results in a scaling action. - * @member {string} [metricTrigger.metricName] the name of the metric that - * defines what the rule monitors. - * @member {string} [metricTrigger.metricResourceUri] the resource identifier - * of the resource the rule monitors. - * @member {moment.duration} [metricTrigger.timeGrain] the granularity of - * metrics the rule monitors. Must be one of the predefined values returned - * from metric definitions for the metric. Must be between 12 hours and 1 - * minute. - * @member {string} [metricTrigger.statistic] the metric statistic type. How - * the metrics from multiple instances are combined. Possible values include: - * 'Average', 'Min', 'Max', 'Sum' - * @member {moment.duration} [metricTrigger.timeWindow] the range of time in - * which instance data is collected. This value must be greater than the delay - * in metric collection, which can vary from resource-to-resource. Must be - * between 12 hours and 5 minutes. - * @member {string} [metricTrigger.timeAggregation] time aggregation type. How - * the data that is collected should be combined over time. The default value - * is Average. Possible values include: 'Average', 'Minimum', 'Maximum', - * 'Total', 'Count', 'Last' - * @member {string} [metricTrigger.operator] the operator that is used to - * compare the metric data and the threshold. Possible values include: - * 'Equals', 'NotEquals', 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', - * 'LessThanOrEqual' - * @member {number} [metricTrigger.threshold] the threshold of the metric that - * triggers the scale action. - * @member {object} scaleAction the parameters for the scaling action. - * @member {string} [scaleAction.direction] the scale direction. Whether the - * scaling action increases or decreases the number of instances. Possible - * values include: 'None', 'Increase', 'Decrease' - * @member {string} [scaleAction.type] the type of action that should occur - * when the scale rule fires. Possible values include: 'ChangeCount', - * 'PercentChangeCount', 'ExactCount' - * @member {string} [scaleAction.value] the number of instances that are - * involved in the scaling action. This value must be 1 or greater. The default - * value is 1. - * @member {moment.duration} [scaleAction.cooldown] the amount of time to wait - * since the last scaling action before this action occurs. It must be between - * 1 week and 1 minute in ISO 8601 format. */ export interface ScaleRule { + /** + * the trigger that results in a scaling action. + */ metricTrigger: MetricTrigger; + /** + * the parameters for the scaling action. + */ scaleAction: ScaleAction; } /** - * @class - * Initializes a new instance of the TimeWindow class. - * @constructor * A specific date-time for the profile. - * - * @member {string} [timeZone] the timezone of the start and end times for the - * profile. Some examples of valid timezones are: Dateline Standard Time, - * UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific Standard Time - * (Mexico), Pacific Standard Time, US Mountain Standard Time, Mountain - * Standard Time (Mexico), Mountain Standard Time, Central America Standard - * Time, Central Standard Time, Central Standard Time (Mexico), Canada Central - * Standard Time, SA Pacific Standard Time, Eastern Standard Time, US Eastern - * Standard Time, Venezuela Standard Time, Paraguay Standard Time, Atlantic - * Standard Time, Central Brazilian Standard Time, SA Western Standard Time, - * Pacific SA Standard Time, Newfoundland Standard Time, E. South America - * Standard Time, Argentina Standard Time, SA Eastern Standard Time, Greenland - * Standard Time, Montevideo Standard Time, Bahia Standard Time, UTC-02, - * Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde Standard Time, - * Morocco Standard Time, UTC, GMT Standard Time, Greenwich Standard Time, W. - * Europe Standard Time, Central Europe Standard Time, Romance Standard Time, - * Central European Standard Time, W. Central Africa Standard Time, Namibia - * Standard Time, Jordan Standard Time, GTB Standard Time, Middle East Standard - * Time, Egypt Standard Time, Syria Standard Time, E. Europe Standard Time, - * South Africa Standard Time, FLE Standard Time, Turkey Standard Time, Israel - * Standard Time, Kaliningrad Standard Time, Libya Standard Time, Arabic - * Standard Time, Arab Standard Time, Belarus Standard Time, Russian Standard - * Time, E. Africa Standard Time, Iran Standard Time, Arabian Standard Time, - * Azerbaijan Standard Time, Russia Time Zone 3, Mauritius Standard Time, - * Georgian Standard Time, Caucasus Standard Time, Afghanistan Standard Time, - * West Asia Standard Time, Ekaterinburg Standard Time, Pakistan Standard Time, - * India Standard Time, Sri Lanka Standard Time, Nepal Standard Time, Central - * Asia Standard Time, Bangladesh Standard Time, N. Central Asia Standard Time, - * Myanmar Standard Time, SE Asia Standard Time, North Asia Standard Time, - * China Standard Time, North Asia East Standard Time, Singapore Standard Time, - * W. Australia Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time, - * Tokyo Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen. - * Australia Standard Time, AUS Central Standard Time, E. Australia Standard - * Time, AUS Eastern Standard Time, West Pacific Standard Time, Tasmania - * Standard Time, Magadan Standard Time, Vladivostok Standard Time, Russia Time - * Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New Zealand - * Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga - * Standard Time, Samoa Standard Time, Line Islands Standard Time - * @member {date} start the start time for the profile in ISO 8601 format. - * @member {date} end the end time for the profile in ISO 8601 format. */ export interface TimeWindow { + /** + * the timezone of the start and end times for the profile. Some examples of valid time zones + * are: Dateline Standard Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific + * Standard Time (Mexico), Pacific Standard Time, US Mountain Standard Time, Mountain Standard + * Time (Mexico), Mountain Standard Time, Central America Standard Time, Central Standard Time, + * Central Standard Time (Mexico), Canada Central Standard Time, SA Pacific Standard Time, + * Eastern Standard Time, US Eastern Standard Time, Venezuela Standard Time, Paraguay Standard + * Time, Atlantic Standard Time, Central Brazilian Standard Time, SA Western Standard Time, + * Pacific SA Standard Time, Newfoundland Standard Time, E. South America Standard Time, + * Argentina Standard Time, SA Eastern Standard Time, Greenland Standard Time, Montevideo + * Standard Time, Bahia Standard Time, UTC-02, Mid-Atlantic Standard Time, Azores Standard Time, + * Cape Verde Standard Time, Morocco Standard Time, UTC, GMT Standard Time, Greenwich Standard + * Time, W. Europe Standard Time, Central Europe Standard Time, Romance Standard Time, Central + * European Standard Time, W. Central Africa Standard Time, Namibia Standard Time, Jordan + * Standard Time, GTB Standard Time, Middle East Standard Time, Egypt Standard Time, Syria + * Standard Time, E. Europe Standard Time, South Africa Standard Time, FLE Standard Time, Turkey + * Standard Time, Israel Standard Time, Kaliningrad Standard Time, Libya Standard Time, Arabic + * Standard Time, Arab Standard Time, Belarus Standard Time, Russian Standard Time, E. Africa + * Standard Time, Iran Standard Time, Arabian Standard Time, Azerbaijan Standard Time, Russia + * Time Zone 3, Mauritius Standard Time, Georgian Standard Time, Caucasus Standard Time, + * Afghanistan Standard Time, West Asia Standard Time, Ekaterinburg Standard Time, Pakistan + * Standard Time, India Standard Time, Sri Lanka Standard Time, Nepal Standard Time, Central Asia + * Standard Time, Bangladesh Standard Time, N. Central Asia Standard Time, Myanmar Standard Time, + * SE Asia Standard Time, North Asia Standard Time, China Standard Time, North Asia East Standard + * Time, Singapore Standard Time, W. Australia Standard Time, Taipei Standard Time, Ulaanbaatar + * Standard Time, Tokyo Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen. Australia + * Standard Time, AUS Central Standard Time, E. Australia Standard Time, AUS Eastern Standard + * Time, West Pacific Standard Time, Tasmania Standard Time, Magadan Standard Time, Vladivostok + * Standard Time, Russia Time Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New + * Zealand Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga Standard + * Time, Samoa Standard Time, Line Islands Standard Time + */ timeZone?: string; + /** + * the start time for the profile in ISO 8601 format. + */ start: Date; + /** + * the end time for the profile in ISO 8601 format. + */ end: Date; } /** - * @class - * Initializes a new instance of the RecurrentSchedule class. - * @constructor * The scheduling constraints for when the profile begins. - * - * @member {string} timeZone the timezone for the hours of the profile. Some - * examples of valid timezones are: Dateline Standard Time, UTC-11, Hawaiian - * Standard Time, Alaskan Standard Time, Pacific Standard Time (Mexico), - * Pacific Standard Time, US Mountain Standard Time, Mountain Standard Time - * (Mexico), Mountain Standard Time, Central America Standard Time, Central - * Standard Time, Central Standard Time (Mexico), Canada Central Standard Time, - * SA Pacific Standard Time, Eastern Standard Time, US Eastern Standard Time, - * Venezuela Standard Time, Paraguay Standard Time, Atlantic Standard Time, - * Central Brazilian Standard Time, SA Western Standard Time, Pacific SA - * Standard Time, Newfoundland Standard Time, E. South America Standard Time, - * Argentina Standard Time, SA Eastern Standard Time, Greenland Standard Time, - * Montevideo Standard Time, Bahia Standard Time, UTC-02, Mid-Atlantic Standard - * Time, Azores Standard Time, Cape Verde Standard Time, Morocco Standard Time, - * UTC, GMT Standard Time, Greenwich Standard Time, W. Europe Standard Time, - * Central Europe Standard Time, Romance Standard Time, Central European - * Standard Time, W. Central Africa Standard Time, Namibia Standard Time, - * Jordan Standard Time, GTB Standard Time, Middle East Standard Time, Egypt - * Standard Time, Syria Standard Time, E. Europe Standard Time, South Africa - * Standard Time, FLE Standard Time, Turkey Standard Time, Israel Standard - * Time, Kaliningrad Standard Time, Libya Standard Time, Arabic Standard Time, - * Arab Standard Time, Belarus Standard Time, Russian Standard Time, E. Africa - * Standard Time, Iran Standard Time, Arabian Standard Time, Azerbaijan - * Standard Time, Russia Time Zone 3, Mauritius Standard Time, Georgian - * Standard Time, Caucasus Standard Time, Afghanistan Standard Time, West Asia - * Standard Time, Ekaterinburg Standard Time, Pakistan Standard Time, India - * Standard Time, Sri Lanka Standard Time, Nepal Standard Time, Central Asia - * Standard Time, Bangladesh Standard Time, N. Central Asia Standard Time, - * Myanmar Standard Time, SE Asia Standard Time, North Asia Standard Time, - * China Standard Time, North Asia East Standard Time, Singapore Standard Time, - * W. Australia Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time, - * Tokyo Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen. - * Australia Standard Time, AUS Central Standard Time, E. Australia Standard - * Time, AUS Eastern Standard Time, West Pacific Standard Time, Tasmania - * Standard Time, Magadan Standard Time, Vladivostok Standard Time, Russia Time - * Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New Zealand - * Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga - * Standard Time, Samoa Standard Time, Line Islands Standard Time - * @member {array} days the collection of days that the profile takes effect - * on. Possible values are Sunday through Saturday. - * @member {array} hours A collection of hours that the profile takes effect - * on. Values supported are 0 to 23 on the 24-hour clock (AM/PM times are not - * supported). - * @member {array} minutes A collection of minutes at which the profile takes - * effect at. */ export interface RecurrentSchedule { + /** + * the timezone for the hours of the profile. Some examples of valid time zones are: Dateline + * Standard Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific Standard Time + * (Mexico), Pacific Standard Time, US Mountain Standard Time, Mountain Standard Time (Mexico), + * Mountain Standard Time, Central America Standard Time, Central Standard Time, Central Standard + * Time (Mexico), Canada Central Standard Time, SA Pacific Standard Time, Eastern Standard Time, + * US Eastern Standard Time, Venezuela Standard Time, Paraguay Standard Time, Atlantic Standard + * Time, Central Brazilian Standard Time, SA Western Standard Time, Pacific SA Standard Time, + * Newfoundland Standard Time, E. South America Standard Time, Argentina Standard Time, SA + * Eastern Standard Time, Greenland Standard Time, Montevideo Standard Time, Bahia Standard Time, + * UTC-02, Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde Standard Time, Morocco + * Standard Time, UTC, GMT Standard Time, Greenwich Standard Time, W. Europe Standard Time, + * Central Europe Standard Time, Romance Standard Time, Central European Standard Time, W. + * Central Africa Standard Time, Namibia Standard Time, Jordan Standard Time, GTB Standard Time, + * Middle East Standard Time, Egypt Standard Time, Syria Standard Time, E. Europe Standard Time, + * South Africa Standard Time, FLE Standard Time, Turkey Standard Time, Israel Standard Time, + * Kaliningrad Standard Time, Libya Standard Time, Arabic Standard Time, Arab Standard Time, + * Belarus Standard Time, Russian Standard Time, E. Africa Standard Time, Iran Standard Time, + * Arabian Standard Time, Azerbaijan Standard Time, Russia Time Zone 3, Mauritius Standard Time, + * Georgian Standard Time, Caucasus Standard Time, Afghanistan Standard Time, West Asia Standard + * Time, Ekaterinburg Standard Time, Pakistan Standard Time, India Standard Time, Sri Lanka + * Standard Time, Nepal Standard Time, Central Asia Standard Time, Bangladesh Standard Time, N. + * Central Asia Standard Time, Myanmar Standard Time, SE Asia Standard Time, North Asia Standard + * Time, China Standard Time, North Asia East Standard Time, Singapore Standard Time, W. + * Australia Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time, Tokyo Standard Time, + * Korea Standard Time, Yakutsk Standard Time, Cen. Australia Standard Time, AUS Central Standard + * Time, E. Australia Standard Time, AUS Eastern Standard Time, West Pacific Standard Time, + * Tasmania Standard Time, Magadan Standard Time, Vladivostok Standard Time, Russia Time Zone 10, + * Central Pacific Standard Time, Russia Time Zone 11, New Zealand Standard Time, UTC+12, Fiji + * Standard Time, Kamchatka Standard Time, Tonga Standard Time, Samoa Standard Time, Line Islands + * Standard Time + */ timeZone: string; + /** + * the collection of days that the profile takes effect on. Possible values are Sunday through + * Saturday. + */ days: string[]; + /** + * A collection of hours that the profile takes effect on. Values supported are 0 to 23 on the + * 24-hour clock (AM/PM times are not supported). + */ hours: number[]; + /** + * A collection of minutes at which the profile takes effect at. + */ minutes: number[]; } /** - * @class - * Initializes a new instance of the Recurrence class. - * @constructor - * The repeating times at which this profile begins. This element is not used - * if the FixedDate element is used. - * - * @member {string} frequency the recurrence frequency. How often the schedule - * profile should take effect. This value must be Week, meaning each week will - * have the same set of profiles. For example, to set a daily schedule, set - * **schedule** to every day of the week. The frequency property specifies that - * the schedule is repeated weekly. Possible values include: 'None', 'Second', - * 'Minute', 'Hour', 'Day', 'Week', 'Month', 'Year' - * @member {object} schedule the scheduling constraints for when the profile - * begins. - * @member {string} [schedule.timeZone] the timezone for the hours of the - * profile. Some examples of valid timezones are: Dateline Standard Time, - * UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific Standard Time - * (Mexico), Pacific Standard Time, US Mountain Standard Time, Mountain - * Standard Time (Mexico), Mountain Standard Time, Central America Standard - * Time, Central Standard Time, Central Standard Time (Mexico), Canada Central - * Standard Time, SA Pacific Standard Time, Eastern Standard Time, US Eastern - * Standard Time, Venezuela Standard Time, Paraguay Standard Time, Atlantic - * Standard Time, Central Brazilian Standard Time, SA Western Standard Time, - * Pacific SA Standard Time, Newfoundland Standard Time, E. South America - * Standard Time, Argentina Standard Time, SA Eastern Standard Time, Greenland - * Standard Time, Montevideo Standard Time, Bahia Standard Time, UTC-02, - * Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde Standard Time, - * Morocco Standard Time, UTC, GMT Standard Time, Greenwich Standard Time, W. - * Europe Standard Time, Central Europe Standard Time, Romance Standard Time, - * Central European Standard Time, W. Central Africa Standard Time, Namibia - * Standard Time, Jordan Standard Time, GTB Standard Time, Middle East Standard - * Time, Egypt Standard Time, Syria Standard Time, E. Europe Standard Time, - * South Africa Standard Time, FLE Standard Time, Turkey Standard Time, Israel - * Standard Time, Kaliningrad Standard Time, Libya Standard Time, Arabic - * Standard Time, Arab Standard Time, Belarus Standard Time, Russian Standard - * Time, E. Africa Standard Time, Iran Standard Time, Arabian Standard Time, - * Azerbaijan Standard Time, Russia Time Zone 3, Mauritius Standard Time, - * Georgian Standard Time, Caucasus Standard Time, Afghanistan Standard Time, - * West Asia Standard Time, Ekaterinburg Standard Time, Pakistan Standard Time, - * India Standard Time, Sri Lanka Standard Time, Nepal Standard Time, Central - * Asia Standard Time, Bangladesh Standard Time, N. Central Asia Standard Time, - * Myanmar Standard Time, SE Asia Standard Time, North Asia Standard Time, - * China Standard Time, North Asia East Standard Time, Singapore Standard Time, - * W. Australia Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time, - * Tokyo Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen. - * Australia Standard Time, AUS Central Standard Time, E. Australia Standard - * Time, AUS Eastern Standard Time, West Pacific Standard Time, Tasmania - * Standard Time, Magadan Standard Time, Vladivostok Standard Time, Russia Time - * Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New Zealand - * Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga - * Standard Time, Samoa Standard Time, Line Islands Standard Time - * @member {array} [schedule.days] the collection of days that the profile - * takes effect on. Possible values are Sunday through Saturday. - * @member {array} [schedule.hours] A collection of hours that the profile - * takes effect on. Values supported are 0 to 23 on the 24-hour clock (AM/PM - * times are not supported). - * @member {array} [schedule.minutes] A collection of minutes at which the - * profile takes effect at. + * The repeating times at which this profile begins. This element is not used if the FixedDate + * element is used. */ export interface Recurrence { + /** + * the recurrence frequency. How often the schedule profile should take effect. This value must + * be Week, meaning each week will have the same set of profiles. For example, to set a daily + * schedule, set **schedule** to every day of the week. The frequency property specifies that the + * schedule is repeated weekly. Possible values include: 'None', 'Second', 'Minute', 'Hour', + * 'Day', 'Week', 'Month', 'Year' + */ frequency: string; + /** + * the scheduling constraints for when the profile begins. + */ schedule: RecurrentSchedule; } /** - * @class - * Initializes a new instance of the AutoscaleProfile class. - * @constructor * Autoscale profile. - * - * @member {string} name the name of the profile. - * @member {object} capacity the number of instances that can be used during - * this profile. - * @member {string} [capacity.minimum] the minimum number of instances for the - * resource. - * @member {string} [capacity.maximum] the maximum number of instances for the - * resource. The actual maximum number of instances is limited by the cores - * that are available in the subscription. - * @member {string} [capacity.default] the number of instances that will be set - * if metrics are not available for evaluation. The default is only used if the - * current instance count is lower than the default. - * @member {array} rules the collection of rules that provide the triggers and - * parameters for the scaling action. A maximum of 10 rules can be specified. - * @member {object} [fixedDate] the specific date-time for the profile. This - * element is not used if the Recurrence element is used. - * @member {string} [fixedDate.timeZone] the timezone of the start and end - * times for the profile. Some examples of valid timezones are: Dateline - * Standard Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, - * Pacific Standard Time (Mexico), Pacific Standard Time, US Mountain Standard - * Time, Mountain Standard Time (Mexico), Mountain Standard Time, Central - * America Standard Time, Central Standard Time, Central Standard Time - * (Mexico), Canada Central Standard Time, SA Pacific Standard Time, Eastern - * Standard Time, US Eastern Standard Time, Venezuela Standard Time, Paraguay - * Standard Time, Atlantic Standard Time, Central Brazilian Standard Time, SA - * Western Standard Time, Pacific SA Standard Time, Newfoundland Standard Time, - * E. South America Standard Time, Argentina Standard Time, SA Eastern Standard - * Time, Greenland Standard Time, Montevideo Standard Time, Bahia Standard - * Time, UTC-02, Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde - * Standard Time, Morocco Standard Time, UTC, GMT Standard Time, Greenwich - * Standard Time, W. Europe Standard Time, Central Europe Standard Time, - * Romance Standard Time, Central European Standard Time, W. Central Africa - * Standard Time, Namibia Standard Time, Jordan Standard Time, GTB Standard - * Time, Middle East Standard Time, Egypt Standard Time, Syria Standard Time, - * E. Europe Standard Time, South Africa Standard Time, FLE Standard Time, - * Turkey Standard Time, Israel Standard Time, Kaliningrad Standard Time, Libya - * Standard Time, Arabic Standard Time, Arab Standard Time, Belarus Standard - * Time, Russian Standard Time, E. Africa Standard Time, Iran Standard Time, - * Arabian Standard Time, Azerbaijan Standard Time, Russia Time Zone 3, - * Mauritius Standard Time, Georgian Standard Time, Caucasus Standard Time, - * Afghanistan Standard Time, West Asia Standard Time, Ekaterinburg Standard - * Time, Pakistan Standard Time, India Standard Time, Sri Lanka Standard Time, - * Nepal Standard Time, Central Asia Standard Time, Bangladesh Standard Time, - * N. Central Asia Standard Time, Myanmar Standard Time, SE Asia Standard Time, - * North Asia Standard Time, China Standard Time, North Asia East Standard - * Time, Singapore Standard Time, W. Australia Standard Time, Taipei Standard - * Time, Ulaanbaatar Standard Time, Tokyo Standard Time, Korea Standard Time, - * Yakutsk Standard Time, Cen. Australia Standard Time, AUS Central Standard - * Time, E. Australia Standard Time, AUS Eastern Standard Time, West Pacific - * Standard Time, Tasmania Standard Time, Magadan Standard Time, Vladivostok - * Standard Time, Russia Time Zone 10, Central Pacific Standard Time, Russia - * Time Zone 11, New Zealand Standard Time, UTC+12, Fiji Standard Time, - * Kamchatka Standard Time, Tonga Standard Time, Samoa Standard Time, Line - * Islands Standard Time - * @member {date} [fixedDate.start] the start time for the profile in ISO 8601 - * format. - * @member {date} [fixedDate.end] the end time for the profile in ISO 8601 - * format. - * @member {object} [recurrence] the repeating times at which this profile - * begins. This element is not used if the FixedDate element is used. - * @member {string} [recurrence.frequency] the recurrence frequency. How often - * the schedule profile should take effect. This value must be Week, meaning - * each week will have the same set of profiles. For example, to set a daily - * schedule, set **schedule** to every day of the week. The frequency property - * specifies that the schedule is repeated weekly. Possible values include: - * 'None', 'Second', 'Minute', 'Hour', 'Day', 'Week', 'Month', 'Year' - * @member {object} [recurrence.schedule] the scheduling constraints for when - * the profile begins. - * @member {string} [recurrence.schedule.timeZone] the timezone for the hours - * of the profile. Some examples of valid timezones are: Dateline Standard - * Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific - * Standard Time (Mexico), Pacific Standard Time, US Mountain Standard Time, - * Mountain Standard Time (Mexico), Mountain Standard Time, Central America - * Standard Time, Central Standard Time, Central Standard Time (Mexico), Canada - * Central Standard Time, SA Pacific Standard Time, Eastern Standard Time, US - * Eastern Standard Time, Venezuela Standard Time, Paraguay Standard Time, - * Atlantic Standard Time, Central Brazilian Standard Time, SA Western Standard - * Time, Pacific SA Standard Time, Newfoundland Standard Time, E. South America - * Standard Time, Argentina Standard Time, SA Eastern Standard Time, Greenland - * Standard Time, Montevideo Standard Time, Bahia Standard Time, UTC-02, - * Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde Standard Time, - * Morocco Standard Time, UTC, GMT Standard Time, Greenwich Standard Time, W. - * Europe Standard Time, Central Europe Standard Time, Romance Standard Time, - * Central European Standard Time, W. Central Africa Standard Time, Namibia - * Standard Time, Jordan Standard Time, GTB Standard Time, Middle East Standard - * Time, Egypt Standard Time, Syria Standard Time, E. Europe Standard Time, - * South Africa Standard Time, FLE Standard Time, Turkey Standard Time, Israel - * Standard Time, Kaliningrad Standard Time, Libya Standard Time, Arabic - * Standard Time, Arab Standard Time, Belarus Standard Time, Russian Standard - * Time, E. Africa Standard Time, Iran Standard Time, Arabian Standard Time, - * Azerbaijan Standard Time, Russia Time Zone 3, Mauritius Standard Time, - * Georgian Standard Time, Caucasus Standard Time, Afghanistan Standard Time, - * West Asia Standard Time, Ekaterinburg Standard Time, Pakistan Standard Time, - * India Standard Time, Sri Lanka Standard Time, Nepal Standard Time, Central - * Asia Standard Time, Bangladesh Standard Time, N. Central Asia Standard Time, - * Myanmar Standard Time, SE Asia Standard Time, North Asia Standard Time, - * China Standard Time, North Asia East Standard Time, Singapore Standard Time, - * W. Australia Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time, - * Tokyo Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen. - * Australia Standard Time, AUS Central Standard Time, E. Australia Standard - * Time, AUS Eastern Standard Time, West Pacific Standard Time, Tasmania - * Standard Time, Magadan Standard Time, Vladivostok Standard Time, Russia Time - * Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New Zealand - * Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga - * Standard Time, Samoa Standard Time, Line Islands Standard Time - * @member {array} [recurrence.schedule.days] the collection of days that the - * profile takes effect on. Possible values are Sunday through Saturday. - * @member {array} [recurrence.schedule.hours] A collection of hours that the - * profile takes effect on. Values supported are 0 to 23 on the 24-hour clock - * (AM/PM times are not supported). - * @member {array} [recurrence.schedule.minutes] A collection of minutes at - * which the profile takes effect at. */ export interface AutoscaleProfile { + /** + * the name of the profile. + */ name: string; + /** + * the number of instances that can be used during this profile. + */ capacity: ScaleCapacity; + /** + * the collection of rules that provide the triggers and parameters for the scaling action. A + * maximum of 10 rules can be specified. + */ rules: ScaleRule[]; + /** + * the specific date-time for the profile. This element is not used if the Recurrence element is + * used. + */ fixedDate?: TimeWindow; + /** + * the repeating times at which this profile begins. This element is not used if the FixedDate + * element is used. + */ recurrence?: Recurrence; } /** - * @class - * Initializes a new instance of the EmailNotification class. - * @constructor * Email notification of an autoscale event. - * - * @member {boolean} [sendToSubscriptionAdministrator] a value indicating - * whether to send email to subscription administrator. - * @member {boolean} [sendToSubscriptionCoAdministrators] a value indicating - * whether to send email to subscription co-administrators. - * @member {array} [customEmails] the custom e-mails list. This value can be - * null or empty, in which case this attribute will be ignored. */ export interface EmailNotification { + /** + * a value indicating whether to send email to subscription administrator. + */ sendToSubscriptionAdministrator?: boolean; + /** + * a value indicating whether to send email to subscription co-administrators. + */ sendToSubscriptionCoAdministrators?: boolean; + /** + * the custom e-mails list. This value can be null or empty, in which case this attribute will be + * ignored. + */ customEmails?: string[]; } /** - * @class - * Initializes a new instance of the WebhookNotification class. - * @constructor * Webhook notification of an autoscale event. - * - * @member {string} [serviceUri] the service address to receive the - * notification. - * @member {object} [properties] a property bag of settings. This value can be - * empty. */ export interface WebhookNotification { + /** + * the service address to receive the notification. + */ serviceUri?: string; + /** + * a property bag of settings. This value can be empty. + */ properties?: { [propertyName: string]: string }; } /** - * @class - * Initializes a new instance of the AutoscaleNotification class. - * @constructor * Autoscale notification. - * - * @member {object} [email] the email notification. - * @member {boolean} [email.sendToSubscriptionAdministrator] a value indicating - * whether to send email to subscription administrator. - * @member {boolean} [email.sendToSubscriptionCoAdministrators] a value - * indicating whether to send email to subscription co-administrators. - * @member {array} [email.customEmails] the custom e-mails list. This value can - * be null or empty, in which case this attribute will be ignored. - * @member {array} [webhooks] the collection of webhook notifications. */ export interface AutoscaleNotification { + /** + * the email notification. + */ email?: EmailNotification; + /** + * the collection of webhook notifications. + */ webhooks?: WebhookNotification[]; } /** - * @class - * Initializes a new instance of the AutoscaleSettingResource class. - * @constructor * The autoscale setting resource. - * - * @member {array} profiles the collection of automatic scaling profiles that - * specify different scaling parameters for different time periods. A maximum - * of 20 profiles can be specified. - * @member {array} [notifications] the collection of notifications. - * @member {boolean} [enabled] the enabled flag. Specifies whether automatic - * scaling is enabled for the resource. The default value is 'true'. Default - * value: true . - * @member {string} [autoscaleSettingResourceName] the name of the autoscale - * setting. - * @member {string} [targetResourceUri] the resource identifier of the resource - * that the autoscale setting should be added to. */ export interface AutoscaleSettingResource extends Resource { + /** + * the collection of automatic scaling profiles that specify different scaling parameters for + * different time periods. A maximum of 20 profiles can be specified. + */ profiles: AutoscaleProfile[]; + /** + * the collection of notifications. + */ notifications?: AutoscaleNotification[]; + /** + * the enabled flag. Specifies whether automatic scaling is enabled for the resource. The default + * value is 'true'. + */ enabled?: boolean; + /** + * the name of the autoscale setting. + */ autoscaleSettingResourceName?: string; + /** + * the resource identifier of the resource that the autoscale setting should be added to. + */ targetResourceUri?: string; } /** - * @class - * Initializes a new instance of the AutoscaleSettingResourcePatch class. - * @constructor * The autoscale setting object for patch operations. - * - * @member {object} [tags] Resource tags - * @member {array} profiles the collection of automatic scaling profiles that - * specify different scaling parameters for different time periods. A maximum - * of 20 profiles can be specified. - * @member {array} [notifications] the collection of notifications. - * @member {boolean} [enabled] the enabled flag. Specifies whether automatic - * scaling is enabled for the resource. The default value is 'true'. Default - * value: true . - * @member {string} [name] the name of the autoscale setting. - * @member {string} [targetResourceUri] the resource identifier of the resource - * that the autoscale setting should be added to. */ export interface AutoscaleSettingResourcePatch { + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; + /** + * the collection of automatic scaling profiles that specify different scaling parameters for + * different time periods. A maximum of 20 profiles can be specified. + */ profiles: AutoscaleProfile[]; + /** + * the collection of notifications. + */ notifications?: AutoscaleNotification[]; + /** + * the enabled flag. Specifies whether automatic scaling is enabled for the resource. The default + * value is 'true'. + */ enabled?: boolean; + /** + * the name of the autoscale setting. + */ name?: string; + /** + * the resource identifier of the resource that the autoscale setting should be added to. + */ targetResourceUri?: string; } /** - * @class - * Initializes a new instance of the ErrorResponse class. - * @constructor * Describes the format of Error response. - * - * @member {string} [code] Error code - * @member {string} [message] Error message indicating why the operation - * failed. */ export interface ErrorResponse { + /** + * Error code + */ code?: string; + /** + * Error message indicating why the operation failed. + */ message?: string; } /** - * @class - * Initializes a new instance of the OperationDisplay class. - * @constructor * Display metadata associated with the operation. - * - * @member {string} [provider] Service provider: Microsoft.Insights - * @member {string} [resource] Resource on which the operation is performed: - * AlertRules, Autoscale, etc. - * @member {string} [operation] Operation type: Read, write, delete, etc. */ export interface OperationDisplay { + /** + * Service provider: Microsoft.Insights + */ provider?: string; + /** + * Resource on which the operation is performed: AlertRules, Autoscale, etc. + */ resource?: string; + /** + * Operation type: Read, write, delete, etc. + */ operation?: string; } /** - * @class - * Initializes a new instance of the Operation class. - * @constructor * Microsoft Insights API operation definition. - * - * @member {string} [name] Operation name: {provider}/{resource}/{operation} - * @member {object} [display] Display metadata associated with the operation. - * @member {string} [display.provider] Service provider: Microsoft.Insights - * @member {string} [display.resource] Resource on which the operation is - * performed: AlertRules, Autoscale, etc. - * @member {string} [display.operation] Operation type: Read, write, delete, - * etc. */ export interface Operation { + /** + * Operation name: {provider}/{resource}/{operation} + */ name?: string; + /** + * Display metadata associated with the operation. + */ display?: OperationDisplay; } /** - * @class - * Initializes a new instance of the OperationListResult class. - * @constructor - * Result of the request to list Microsoft.Insights operations. It contains a - * list of operations and a URL link to get the next set of results. - * - * @member {array} [value] List of operations supported by the - * Microsoft.Insights provider. - * @member {string} [nextLink] URL to get the next set of operation list - * results if there are any. + * Result of the request to list Microsoft.Insights operations. It contains a list of operations + * and a URL link to get the next set of results. */ export interface OperationListResult { + /** + * List of operations supported by the Microsoft.Insights provider. + */ value?: Operation[]; + /** + * URL to get the next set of operation list results if there are any. + */ nextLink?: string; } /** - * @class - * Initializes a new instance of the Incident class. - * @constructor * An alert incident indicates the activation status of an alert rule. - * - * @member {string} [name] Incident name. - * @member {string} [ruleName] Rule name that is associated with the incident. - * @member {boolean} [isActive] A boolean to indicate whether the incident is - * active or resolved. - * @member {date} [activatedTime] The time at which the incident was activated - * in ISO8601 format. - * @member {date} [resolvedTime] The time at which the incident was resolved in - * ISO8601 format. If null, it means the incident is still active. */ export interface Incident { + /** + * Incident name. + */ readonly name?: string; + /** + * Rule name that is associated with the incident. + */ readonly ruleName?: string; + /** + * A boolean to indicate whether the incident is active or resolved. + */ readonly isActive?: boolean; + /** + * The time at which the incident was activated in ISO8601 format. + */ readonly activatedTime?: Date; + /** + * The time at which the incident was resolved in ISO8601 format. If null, it means the incident + * is still active. + */ readonly resolvedTime?: Date; } /** - * @class - * Initializes a new instance of the RuleDataSource class. - * @constructor * The resource from which the rule collects its data. - * - * @member {string} [resourceUri] the resource identifier of the resource the - * rule monitors. **NOTE**: this property cannot be updated for an existing - * rule. - * @member {string} odatatype Polymorphic Discriminator */ export interface RuleDataSource { + /** + * the resource identifier of the resource the rule monitors. **NOTE**: this property cannot be + * updated for an existing rule. + */ resourceUri?: string; + /** + * Polymorphic Discriminator + */ odatatype: string; } /** - * @class - * Initializes a new instance of the RuleCondition class. - * @constructor * The condition that results in the alert rule being activated. - * - * @member {object} [dataSource] the resource from which the rule collects its - * data. For this type dataSource will always be of type RuleMetricDataSource. - * @member {string} [dataSource.resourceUri] the resource identifier of the - * resource the rule monitors. **NOTE**: this property cannot be updated for an - * existing rule. - * @member {string} [dataSource.odatatype] Polymorphic Discriminator - * @member {string} odatatype Polymorphic Discriminator */ export interface RuleCondition { + /** + * the resource from which the rule collects its data. For this type dataSource will always be of + * type RuleMetricDataSource. + */ dataSource?: RuleDataSource; + /** + * Polymorphic Discriminator + */ odatatype: string; } /** - * @class - * Initializes a new instance of the RuleMetricDataSource class. - * @constructor - * A rule metric data source. The discriminator value is always - * RuleMetricDataSource in this case. - * - * @member {string} [metricName] the name of the metric that defines what the - * rule monitors. + * A rule metric data source. The discriminator value is always RuleMetricDataSource in this case. */ export interface RuleMetricDataSource extends RuleDataSource { + /** + * the name of the metric that defines what the rule monitors. + */ metricName?: string; } /** - * @class - * Initializes a new instance of the RuleManagementEventClaimsDataSource class. - * @constructor * The claims for a rule management event data source. - * - * @member {string} [emailAddress] the email address. */ export interface RuleManagementEventClaimsDataSource { + /** + * the email address. + */ emailAddress?: string; } /** - * @class - * Initializes a new instance of the RuleManagementEventDataSource class. - * @constructor * A rule management event data source. The discriminator fields is always * RuleManagementEventDataSource in this case. - * - * @member {string} [eventName] the event name. - * @member {string} [eventSource] the event source. - * @member {string} [level] the level. - * @member {string} [operationName] The name of the operation that should be - * checked for. If no name is provided, any operation will match. - * @member {string} [resourceGroupName] the resource group name. - * @member {string} [resourceProviderName] the resource provider name. - * @member {string} [status] The status of the operation that should be checked - * for. If no status is provided, any status will match. - * @member {string} [subStatus] the substatus. - * @member {object} [claims] the claims. - * @member {string} [claims.emailAddress] the email address. */ export interface RuleManagementEventDataSource extends RuleDataSource { + /** + * the event name. + */ eventName?: string; + /** + * the event source. + */ eventSource?: string; + /** + * the level. + */ level?: string; + /** + * The name of the operation that should be checked for. If no name is provided, any operation + * will match. + */ operationName?: string; + /** + * the resource group name. + */ resourceGroupName?: string; + /** + * the resource provider name. + */ resourceProviderName?: string; + /** + * The status of the operation that should be checked for. If no status is provided, any status + * will match. + */ status?: string; + /** + * the substatus. + */ subStatus?: string; + /** + * the claims. + */ claims?: RuleManagementEventClaimsDataSource; } /** - * @class - * Initializes a new instance of the ThresholdRuleCondition class. - * @constructor * A rule condition based on a metric crossing a threshold. - * - * @member {string} operator the operator used to compare the data and the - * threshold. Possible values include: 'GreaterThan', 'GreaterThanOrEqual', - * 'LessThan', 'LessThanOrEqual' - * @member {number} threshold the threshold value that activates the alert. - * @member {moment.duration} [windowSize] the period of time (in ISO 8601 - * duration format) that is used to monitor alert activity based on the - * threshold. If specified then it must be between 5 minutes and 1 day. - * @member {string} [timeAggregation] the time aggregation operator. How the - * data that are collected should be combined over time. The default value is - * the PrimaryAggregationType of the Metric. Possible values include: - * 'Average', 'Minimum', 'Maximum', 'Total', 'Last' */ export interface ThresholdRuleCondition extends RuleCondition { + /** + * the operator used to compare the data and the threshold. Possible values include: + * 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', 'LessThanOrEqual' + */ operator: string; + /** + * the threshold value that activates the alert. + */ threshold: number; + /** + * the period of time (in ISO 8601 duration format) that is used to monitor alert activity based + * on the threshold. If specified then it must be between 5 minutes and 1 day. + */ windowSize?: moment.Duration; + /** + * the time aggregation operator. How the data that are collected should be combined over time. + * The default value is the PrimaryAggregationType of the Metric. Possible values include: + * 'Average', 'Minimum', 'Maximum', 'Total', 'Last' + */ timeAggregation?: string; } /** - * @class - * Initializes a new instance of the LocationThresholdRuleCondition class. - * @constructor * A rule condition based on a certain number of locations failing. - * - * @member {moment.duration} [windowSize] the period of time (in ISO 8601 - * duration format) that is used to monitor alert activity based on the - * threshold. If specified then it must be between 5 minutes and 1 day. - * @member {number} failedLocationCount the number of locations that must fail - * to activate the alert. */ export interface LocationThresholdRuleCondition extends RuleCondition { + /** + * the period of time (in ISO 8601 duration format) that is used to monitor alert activity based + * on the threshold. If specified then it must be between 5 minutes and 1 day. + */ windowSize?: moment.Duration; + /** + * the number of locations that must fail to activate the alert. + */ failedLocationCount: number; } /** - * @class - * Initializes a new instance of the ManagementEventAggregationCondition class. - * @constructor * How the data that is collected should be combined over time. - * - * @member {string} [operator] the condition operator. Possible values include: - * 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', 'LessThanOrEqual' - * @member {number} [threshold] The threshold value that activates the alert. - * @member {moment.duration} [windowSize] the period of time (in ISO 8601 - * duration format) that is used to monitor alert activity based on the - * threshold. If specified then it must be between 5 minutes and 1 day. */ export interface ManagementEventAggregationCondition { + /** + * the condition operator. Possible values include: 'GreaterThan', 'GreaterThanOrEqual', + * 'LessThan', 'LessThanOrEqual' + */ operator?: string; + /** + * The threshold value that activates the alert. + */ threshold?: number; + /** + * the period of time (in ISO 8601 duration format) that is used to monitor alert activity based + * on the threshold. If specified then it must be between 5 minutes and 1 day. + */ windowSize?: moment.Duration; } /** - * @class - * Initializes a new instance of the ManagementEventRuleCondition class. - * @constructor * A management event rule condition. - * - * @member {object} [aggregation] How the data that is collected should be - * combined over time and when the alert is activated. Note that for management - * event alerts aggregation is optional – if it is not provided then any event - * will cause the alert to activate. - * @member {string} [aggregation.operator] the condition operator. Possible - * values include: 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', - * 'LessThanOrEqual' - * @member {number} [aggregation.threshold] The threshold value that activates - * the alert. - * @member {moment.duration} [aggregation.windowSize] the period of time (in - * ISO 8601 duration format) that is used to monitor alert activity based on - * the threshold. If specified then it must be between 5 minutes and 1 day. */ export interface ManagementEventRuleCondition extends RuleCondition { + /** + * How the data that is collected should be combined over time and when the alert is activated. + * Note that for management event alerts aggregation is optional – if it is not provided then any + * event will cause the alert to activate. + */ aggregation?: ManagementEventAggregationCondition; } /** - * @class - * Initializes a new instance of the RuleAction class. - * @constructor - * The action that is performed when the alert rule becomes active, and when an - * alert condition is resolved. - * - * @member {string} odatatype Polymorphic Discriminator + * The action that is performed when the alert rule becomes active, and when an alert condition is + * resolved. */ export interface RuleAction { + /** + * Polymorphic Discriminator + */ odatatype: string; } /** - * @class - * Initializes a new instance of the RuleEmailAction class. - * @constructor - * Specifies the action to send email when the rule condition is evaluated. The - * discriminator is always RuleEmailAction in this case. - * - * @member {boolean} [sendToServiceOwners] Whether the administrators (service - * and co-administrators) of the service should be notified when the alert is - * activated. - * @member {array} [customEmails] the list of administrator's custom email - * addresses to notify of the activation of the alert. + * Specifies the action to send email when the rule condition is evaluated. The discriminator is + * always RuleEmailAction in this case. */ export interface RuleEmailAction extends RuleAction { + /** + * Whether the administrators (service and co-administrators) of the service should be notified + * when the alert is activated. + */ sendToServiceOwners?: boolean; + /** + * the list of administrator's custom email addresses to notify of the activation of the alert. + */ customEmails?: string[]; } /** - * @class - * Initializes a new instance of the RuleWebhookAction class. - * @constructor - * Specifies the action to post to service when the rule condition is - * evaluated. The discriminator is always RuleWebhookAction in this case. - * - * @member {string} [serviceUri] the service uri to Post the notification when - * the alert activates or resolves. - * @member {object} [properties] the dictionary of custom properties to include - * with the post operation. These data are appended to the webhook payload. + * Specifies the action to post to service when the rule condition is evaluated. The discriminator + * is always RuleWebhookAction in this case. */ export interface RuleWebhookAction extends RuleAction { + /** + * the service uri to Post the notification when the alert activates or resolves. + */ serviceUri?: string; + /** + * the dictionary of custom properties to include with the post operation. These data are + * appended to the webhook payload. + */ properties?: { [propertyName: string]: string }; } /** - * @class - * Initializes a new instance of the AlertRuleResource class. - * @constructor * The alert rule resource. - * - * @member {string} alertRuleResourceName the name of the alert rule. - * @member {string} [description] the description of the alert rule that will - * be included in the alert email. - * @member {boolean} isEnabled the flag that indicates whether the alert rule - * is enabled. - * @member {object} condition the condition that results in the alert rule - * being activated. - * @member {object} [condition.dataSource] the resource from which the rule - * collects its data. For this type dataSource will always be of type - * RuleMetricDataSource. - * @member {string} [condition.dataSource.resourceUri] the resource identifier - * of the resource the rule monitors. **NOTE**: this property cannot be updated - * for an existing rule. - * @member {string} [condition.dataSource.odatatype] Polymorphic Discriminator - * @member {string} [condition.odatatype] Polymorphic Discriminator - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. */ export interface AlertRuleResource extends Resource { + /** + * the name of the alert rule. + */ alertRuleResourceName: string; + /** + * the description of the alert rule that will be included in the alert email. + */ description?: string; + /** + * the flag that indicates whether the alert rule is enabled. + */ isEnabled: boolean; + /** + * the condition that results in the alert rule being activated. + */ condition: RuleCondition; + /** + * the array of actions that are performed when the alert rule becomes active, and when an alert + * condition is resolved. + */ actions?: RuleAction[]; + /** + * Last time the rule was updated in ISO8601 format. + */ readonly lastUpdatedTime?: Date; } /** - * @class - * Initializes a new instance of the AlertRuleResourcePatch class. - * @constructor * The alert rule object for patch operations. - * - * @member {object} [tags] Resource tags - * @member {string} name the name of the alert rule. - * @member {string} [description] the description of the alert rule that will - * be included in the alert email. - * @member {boolean} isEnabled the flag that indicates whether the alert rule - * is enabled. - * @member {object} condition the condition that results in the alert rule - * being activated. - * @member {object} [condition.dataSource] the resource from which the rule - * collects its data. For this type dataSource will always be of type - * RuleMetricDataSource. - * @member {string} [condition.dataSource.resourceUri] the resource identifier - * of the resource the rule monitors. **NOTE**: this property cannot be updated - * for an existing rule. - * @member {string} [condition.dataSource.odatatype] Polymorphic Discriminator - * @member {string} [condition.odatatype] Polymorphic Discriminator - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. */ export interface AlertRuleResourcePatch { + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; + /** + * the name of the alert rule. + */ name: string; + /** + * the description of the alert rule that will be included in the alert email. + */ description?: string; + /** + * the flag that indicates whether the alert rule is enabled. + */ isEnabled: boolean; + /** + * the condition that results in the alert rule being activated. + */ condition: RuleCondition; + /** + * the array of actions that are performed when the alert rule becomes active, and when an alert + * condition is resolved. + */ actions?: RuleAction[]; + /** + * Last time the rule was updated in ISO8601 format. + */ readonly lastUpdatedTime?: Date; } /** - * @class - * Initializes a new instance of the RetentionPolicy class. - * @constructor * Specifies the retention policy for the log. - * - * @member {boolean} enabled a value indicating whether the retention policy is - * enabled. - * @member {number} days the number of days for the retention in days. A value - * of 0 will retain the events indefinitely. */ export interface RetentionPolicy { + /** + * a value indicating whether the retention policy is enabled. + */ enabled: boolean; + /** + * the number of days for the retention in days. A value of 0 will retain the events + * indefinitely. + */ days: number; } /** - * @class - * Initializes a new instance of the LogProfileResource class. - * @constructor * The log profile resource. - * - * @member {string} [storageAccountId] the resource id of the storage account - * to which you would like to send the Activity Log. - * @member {string} [serviceBusRuleId] The service bus rule ID of the service - * bus namespace in which you would like to have Event Hubs created for - * streaming the Activity Log. The rule ID is of the format: '{service bus - * resource ID}/authorizationrules/{key name}'. - * @member {array} locations List of regions for which Activity Log events - * should be stored or streamed. It is a comma separated list of valid ARM - * locations including the 'global' location. - * @member {array} categories the categories of the logs. These categories are - * created as is convenient to the user. Some values are: 'Write', 'Delete', - * and/or 'Action.' - * @member {object} retentionPolicy the retention policy for the events in the - * log. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the retention - * in days. A value of 0 will retain the events indefinitely. */ export interface LogProfileResource extends Resource { + /** + * the resource id of the storage account to which you would like to send the Activity Log. + */ storageAccountId?: string; + /** + * The service bus rule ID of the service bus namespace in which you would like to have Event + * Hubs created for streaming the Activity Log. The rule ID is of the format: '{service bus + * resource ID}/authorizationrules/{key name}'. + */ serviceBusRuleId?: string; + /** + * List of regions for which Activity Log events should be stored or streamed. It is a comma + * separated list of valid ARM locations including the 'global' location. + */ locations: string[]; + /** + * the categories of the logs. These categories are created as is convenient to the user. Some + * values are: 'Write', 'Delete', and/or 'Action.' + */ categories: string[]; + /** + * the retention policy for the events in the log. + */ retentionPolicy: RetentionPolicy; } /** - * @class - * Initializes a new instance of the LogProfileResourcePatch class. - * @constructor * The log profile resource for patch operations. - * - * @member {object} [tags] Resource tags - * @member {string} [storageAccountId] the resource id of the storage account - * to which you would like to send the Activity Log. - * @member {string} [serviceBusRuleId] The service bus rule ID of the service - * bus namespace in which you would like to have Event Hubs created for - * streaming the Activity Log. The rule ID is of the format: '{service bus - * resource ID}/authorizationrules/{key name}'. - * @member {array} locations List of regions for which Activity Log events - * should be stored or streamed. It is a comma separated list of valid ARM - * locations including the 'global' location. - * @member {array} categories the categories of the logs. These categories are - * created as is convenient to the user. Some values are: 'Write', 'Delete', - * and/or 'Action.' - * @member {object} retentionPolicy the retention policy for the events in the - * log. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the retention - * in days. A value of 0 will retain the events indefinitely. */ export interface LogProfileResourcePatch { + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; + /** + * the resource id of the storage account to which you would like to send the Activity Log. + */ storageAccountId?: string; + /** + * The service bus rule ID of the service bus namespace in which you would like to have Event + * Hubs created for streaming the Activity Log. The rule ID is of the format: '{service bus + * resource ID}/authorizationrules/{key name}'. + */ serviceBusRuleId?: string; + /** + * List of regions for which Activity Log events should be stored or streamed. It is a comma + * separated list of valid ARM locations including the 'global' location. + */ locations: string[]; + /** + * the categories of the logs. These categories are created as is convenient to the user. Some + * values are: 'Write', 'Delete', and/or 'Action.' + */ categories: string[]; + /** + * the retention policy for the events in the log. + */ retentionPolicy: RetentionPolicy; } /** - * @class - * Initializes a new instance of the ProxyOnlyResource class. - * @constructor * A proxy only azure resource object - * - * @member {string} [id] Azure resource Id - * @member {string} [name] Azure resource name - * @member {string} [type] Azure resource type */ export interface ProxyOnlyResource extends BaseResource { + /** + * Azure resource Id + */ readonly id?: string; + /** + * Azure resource name + */ readonly name?: string; + /** + * Azure resource type + */ readonly type?: string; } /** - * @class - * Initializes a new instance of the MetricSettings class. - * @constructor - * Part of MultiTenantDiagnosticSettings. Specifies the settings for a - * particular metric. - * - * @member {moment.duration} [timeGrain] the timegrain of the metric in ISO8601 - * format. - * @member {string} [category] Name of a Diagnostic Metric category for a - * resource type this setting is applied to. To obtain the list of Diagnostic - * metric categories for a resource, first perform a GET diagnostic settings - * operation. - * @member {boolean} enabled a value indicating whether this category is - * enabled. - * @member {object} [retentionPolicy] the retention policy for this category. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the retention - * in days. A value of 0 will retain the events indefinitely. + * Part of MultiTenantDiagnosticSettings. Specifies the settings for a particular metric. */ export interface MetricSettings { + /** + * the timegrain of the metric in ISO8601 format. + */ timeGrain?: moment.Duration; + /** + * Name of a Diagnostic Metric category for a resource type this setting is applied to. To obtain + * the list of Diagnostic metric categories for a resource, first perform a GET diagnostic + * settings operation. + */ category?: string; + /** + * a value indicating whether this category is enabled. + */ enabled: boolean; + /** + * the retention policy for this category. + */ retentionPolicy?: RetentionPolicy; } /** - * @class - * Initializes a new instance of the LogSettings class. - * @constructor - * Part of MultiTenantDiagnosticSettings. Specifies the settings for a - * particular log. - * - * @member {string} [category] Name of a Diagnostic Log category for a resource - * type this setting is applied to. To obtain the list of Diagnostic Log - * categories for a resource, first perform a GET diagnostic settings - * operation. - * @member {boolean} enabled a value indicating whether this log is enabled. - * @member {object} [retentionPolicy] the retention policy for this log. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the retention - * in days. A value of 0 will retain the events indefinitely. + * Part of MultiTenantDiagnosticSettings. Specifies the settings for a particular log. */ export interface LogSettings { + /** + * Name of a Diagnostic Log category for a resource type this setting is applied to. To obtain + * the list of Diagnostic Log categories for a resource, first perform a GET diagnostic settings + * operation. + */ category?: string; + /** + * a value indicating whether this log is enabled. + */ enabled: boolean; + /** + * the retention policy for this log. + */ retentionPolicy?: RetentionPolicy; } /** - * @class - * Initializes a new instance of the DiagnosticSettingsResource class. - * @constructor * The diagnostic setting resource. - * - * @member {string} [storageAccountId] The resource ID of the storage account - * to which you would like to send Diagnostic Logs. - * @member {string} [serviceBusRuleId] The service bus rule Id of the - * diagnostic setting. This is here to maintain backwards compatibility. - * @member {string} [eventHubAuthorizationRuleId] The resource Id for the event - * hub authorization rule. - * @member {string} [eventHubName] The name of the event hub. If none is - * specified, the default event hub will be selected. - * @member {array} [metrics] the list of metric settings. - * @member {array} [logs] the list of logs settings. - * @member {string} [workspaceId] The workspace ID (resource ID of a Log - * Analytics workspace) for a Log Analytics workspace to which you would like - * to send Diagnostic Logs. Example: - * /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2 */ export interface DiagnosticSettingsResource extends ProxyOnlyResource { + /** + * The resource ID of the storage account to which you would like to send Diagnostic Logs. + */ storageAccountId?: string; + /** + * The service bus rule Id of the diagnostic setting. This is here to maintain backwards + * compatibility. + */ serviceBusRuleId?: string; + /** + * The resource Id for the event hub authorization rule. + */ eventHubAuthorizationRuleId?: string; + /** + * The name of the event hub. If none is specified, the default event hub will be selected. + */ eventHubName?: string; + /** + * the list of metric settings. + */ metrics?: MetricSettings[]; + /** + * the list of logs settings. + */ logs?: LogSettings[]; + /** + * The workspace ID (resource ID of a Log Analytics workspace) for a Log Analytics workspace to + * which you would like to send Diagnostic Logs. Example: + * /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2 + */ workspaceId?: string; } /** - * @class - * Initializes a new instance of the DiagnosticSettingsResourceCollection class. - * @constructor * Represents a collection of alert rule resources. - * - * @member {array} [value] The collection of diagnostic settings resources;. */ export interface DiagnosticSettingsResourceCollection { + /** + * The collection of diagnostic settings resources;. + */ value?: DiagnosticSettingsResource[]; } /** - * @class - * Initializes a new instance of the DiagnosticSettingsCategoryResource class. - * @constructor * The diagnostic settings category resource. - * - * @member {string} [categoryType] The type of the diagnostic settings - * category. Possible values include: 'Metrics', 'Logs' */ export interface DiagnosticSettingsCategoryResource extends ProxyOnlyResource { + /** + * The type of the diagnostic settings category. Possible values include: 'Metrics', 'Logs' + */ categoryType?: string; } /** - * @class - * Initializes a new instance of the DiagnosticSettingsCategoryResourceCollection class. - * @constructor * Represents a collection of diagnostic setting category resources. - * - * @member {array} [value] The collection of diagnostic settings category - * resources. */ export interface DiagnosticSettingsCategoryResourceCollection { + /** + * The collection of diagnostic settings category resources. + */ value?: DiagnosticSettingsCategoryResource[]; } /** - * @class - * Initializes a new instance of the EmailReceiver class. - * @constructor * An email receiver. - * - * @member {string} name The name of the email receiver. Names must be unique - * across all receivers within an action group. - * @member {string} emailAddress The email address of this receiver. - * @member {string} [status] The receiver status of the e-mail. Possible values - * include: 'NotSpecified', 'Enabled', 'Disabled' */ export interface EmailReceiver { + /** + * The name of the email receiver. Names must be unique across all receivers within an action + * group. + */ name: string; + /** + * The email address of this receiver. + */ emailAddress: string; + /** + * The receiver status of the e-mail. Possible values include: 'NotSpecified', 'Enabled', + * 'Disabled' + */ readonly status?: string; } /** - * @class - * Initializes a new instance of the SmsReceiver class. - * @constructor * An SMS receiver. - * - * @member {string} name The name of the SMS receiver. Names must be unique - * across all receivers within an action group. - * @member {string} countryCode The country code of the SMS receiver. - * @member {string} phoneNumber The phone number of the SMS receiver. - * @member {string} [status] The status of the receiver. Possible values - * include: 'NotSpecified', 'Enabled', 'Disabled' */ export interface SmsReceiver { + /** + * The name of the SMS receiver. Names must be unique across all receivers within an action + * group. + */ name: string; + /** + * The country code of the SMS receiver. + */ countryCode: string; + /** + * The phone number of the SMS receiver. + */ phoneNumber: string; + /** + * The status of the receiver. Possible values include: 'NotSpecified', 'Enabled', 'Disabled' + */ readonly status?: string; } /** - * @class - * Initializes a new instance of the WebhookReceiver class. - * @constructor * A webhook receiver. - * - * @member {string} name The name of the webhook receiver. Names must be unique - * across all receivers within an action group. - * @member {string} serviceUri The URI where webhooks should be sent. */ export interface WebhookReceiver { + /** + * The name of the webhook receiver. Names must be unique across all receivers within an action + * group. + */ name: string; + /** + * The URI where webhooks should be sent. + */ serviceUri: string; } /** - * @class - * Initializes a new instance of the ItsmReceiver class. - * @constructor * An Itsm receiver. - * - * @member {string} name The name of the Itsm receiver. Names must be unique - * across all receivers within an action group. - * @member {string} workspaceId OMS LA instance identifier. - * @member {string} connectionId Unique identification of ITSM connection among - * multiple defined in above workspace. - * @member {string} ticketConfiguration JSON blob for the configurations of the - * ITSM action. CreateMultipleWorkItems option will be part of this blob as - * well. - * @member {string} region Region in which workspace resides. Supported - * values:'centralindia','japaneast','southeastasia','australiasoutheast','uksouth','westcentralus','canadacentral','eastus','westeurope' */ export interface ItsmReceiver { + /** + * The name of the Itsm receiver. Names must be unique across all receivers within an action + * group. + */ name: string; + /** + * OMS LA instance identifier. + */ workspaceId: string; + /** + * Unique identification of ITSM connection among multiple defined in above workspace. + */ connectionId: string; + /** + * JSON blob for the configurations of the ITSM action. CreateMultipleWorkItems option will be + * part of this blob as well. + */ ticketConfiguration: string; + /** + * Region in which workspace resides. Supported + * values:'centralindia','japaneast','southeastasia','australiasoutheast','uksouth','westcentralus','canadacentral','eastus','westeurope' + */ region: string; } /** - * @class - * Initializes a new instance of the AzureAppPushReceiver class. - * @constructor * The Azure mobile App push notification receiver. - * - * @member {string} name The name of the Azure mobile app push receiver. Names - * must be unique across all receivers within an action group. - * @member {string} emailAddress The email address registered for the Azure - * mobile app. */ export interface AzureAppPushReceiver { + /** + * The name of the Azure mobile app push receiver. Names must be unique across all receivers + * within an action group. + */ name: string; + /** + * The email address registered for the Azure mobile app. + */ emailAddress: string; } /** - * @class - * Initializes a new instance of the AutomationRunbookReceiver class. - * @constructor * The Azure Automation Runbook notification receiver. - * - * @member {string} automationAccountId The Azure automation account Id which - * holds this runbook and authenticate to Azure resource. - * @member {string} runbookName The name for this runbook. - * @member {string} webhookResourceId The resource id for webhook linked to - * this runbook. - * @member {boolean} isGlobalRunbook Indicates whether this instance is global - * runbook. - * @member {string} [name] Indicates name of the webhook. - * @member {string} [serviceUri] The URI where webhooks should be sent. */ export interface AutomationRunbookReceiver { + /** + * The Azure automation account Id which holds this runbook and authenticate to Azure resource. + */ automationAccountId: string; + /** + * The name for this runbook. + */ runbookName: string; + /** + * The resource id for webhook linked to this runbook. + */ webhookResourceId: string; + /** + * Indicates whether this instance is global runbook. + */ isGlobalRunbook: boolean; + /** + * Indicates name of the webhook. + */ name?: string; + /** + * The URI where webhooks should be sent. + */ serviceUri?: string; } /** - * @class - * Initializes a new instance of the VoiceReceiver class. - * @constructor * A voice receiver. - * - * @member {string} name The name of the voice receiver. Names must be unique - * across all receivers within an action group. - * @member {string} countryCode The country code of the voice receiver. - * @member {string} phoneNumber The phone number of the voice receiver. */ export interface VoiceReceiver { + /** + * The name of the voice receiver. Names must be unique across all receivers within an action + * group. + */ name: string; + /** + * The country code of the voice receiver. + */ countryCode: string; + /** + * The phone number of the voice receiver. + */ phoneNumber: string; } /** - * @class - * Initializes a new instance of the LogicAppReceiver class. - * @constructor * A logic app receiver. - * - * @member {string} name The name of the logic app receiver. Names must be - * unique across all receivers within an action group. - * @member {string} resourceId The azure resource id of the logic app receiver. - * @member {string} callbackUrl The callback url where http request sent to. */ export interface LogicAppReceiver { + /** + * The name of the logic app receiver. Names must be unique across all receivers within an action + * group. + */ name: string; + /** + * The azure resource id of the logic app receiver. + */ resourceId: string; + /** + * The callback url where http request sent to. + */ callbackUrl: string; } /** - * @class - * Initializes a new instance of the AzureFunctionReceiver class. - * @constructor * An azure function receiver. - * - * @member {string} name The name of the azure function receiver. Names must be - * unique across all receivers within an action group. - * @member {string} functionAppResourceId The azure resource id of the function - * app. - * @member {string} functionName The function name in the function app. - * @member {string} httpTriggerUrl The http trigger url where http request sent - * to. */ export interface AzureFunctionReceiver { + /** + * The name of the azure function receiver. Names must be unique across all receivers within an + * action group. + */ name: string; + /** + * The azure resource id of the function app. + */ functionAppResourceId: string; + /** + * The function name in the function app. + */ functionName: string; + /** + * The http trigger url where http request sent to. + */ httpTriggerUrl: string; } /** - * @class - * Initializes a new instance of the ArmRoleReceiver class. - * @constructor * An arm role receiver. - * - * @member {string} name The name of the arm role receiver. Names must be - * unique across all receivers within an action group. - * @member {string} roleId The arm role id. */ export interface ArmRoleReceiver { + /** + * The name of the arm role receiver. Names must be unique across all receivers within an action + * group. + */ name: string; + /** + * The arm role id. + */ roleId: string; } /** - * @class - * Initializes a new instance of the ActionGroupResource class. - * @constructor * An action group resource. - * - * @member {string} groupShortName The short name of the action group. This - * will be used in SMS messages. - * @member {boolean} enabled Indicates whether this action group is enabled. If - * an action group is not enabled, then none of its receivers will receive - * communications. Default value: true . - * @member {array} [emailReceivers] The list of email receivers that are part - * of this action group. - * @member {array} [smsReceivers] The list of SMS receivers that are part of - * this action group. - * @member {array} [webhookReceivers] The list of webhook receivers that are - * part of this action group. - * @member {array} [itsmReceivers] The list of ITSM receivers that are part of - * this action group. - * @member {array} [azureAppPushReceivers] The list of AzureAppPush receivers - * that are part of this action group. - * @member {array} [automationRunbookReceivers] The list of AutomationRunbook - * receivers that are part of this action group. - * @member {array} [voiceReceivers] The list of voice receivers that are part - * of this action group. - * @member {array} [logicAppReceivers] The list of logic app receivers that are - * part of this action group. - * @member {array} [azureFunctionReceivers] The list of azure function - * receivers that are part of this action group. - * @member {array} [armRoleReceivers] The list of ARM role receivers that are - * part of this action group. Roles are Azure RBAC roles and only built-in - * roles are supported. */ export interface ActionGroupResource extends Resource { + /** + * The short name of the action group. This will be used in SMS messages. + */ groupShortName: string; + /** + * Indicates whether this action group is enabled. If an action group is not enabled, then none + * of its receivers will receive communications. + */ enabled: boolean; + /** + * The list of email receivers that are part of this action group. + */ emailReceivers?: EmailReceiver[]; + /** + * The list of SMS receivers that are part of this action group. + */ smsReceivers?: SmsReceiver[]; + /** + * The list of webhook receivers that are part of this action group. + */ webhookReceivers?: WebhookReceiver[]; + /** + * The list of ITSM receivers that are part of this action group. + */ itsmReceivers?: ItsmReceiver[]; + /** + * The list of AzureAppPush receivers that are part of this action group. + */ azureAppPushReceivers?: AzureAppPushReceiver[]; + /** + * The list of AutomationRunbook receivers that are part of this action group. + */ automationRunbookReceivers?: AutomationRunbookReceiver[]; + /** + * The list of voice receivers that are part of this action group. + */ voiceReceivers?: VoiceReceiver[]; + /** + * The list of logic app receivers that are part of this action group. + */ logicAppReceivers?: LogicAppReceiver[]; + /** + * The list of azure function receivers that are part of this action group. + */ azureFunctionReceivers?: AzureFunctionReceiver[]; + /** + * The list of ARM role receivers that are part of this action group. Roles are Azure RBAC roles + * and only built-in roles are supported. + */ armRoleReceivers?: ArmRoleReceiver[]; } /** - * @class - * Initializes a new instance of the EnableRequest class. - * @constructor * Describes a receiver that should be resubscribed. - * - * @member {string} receiverName The name of the receiver to resubscribe. */ export interface EnableRequest { + /** + * The name of the receiver to resubscribe. + */ receiverName: string; } /** - * @class - * Initializes a new instance of the ActionGroupPatchBody class. - * @constructor * An action group object for the body of patch operations. - * - * @member {object} [tags] Resource tags - * @member {boolean} [enabled] Indicates whether this action group is enabled. - * If an action group is not enabled, then none of its actions will be - * activated. Default value: true . */ export interface ActionGroupPatchBody { + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; + /** + * Indicates whether this action group is enabled. If an action group is not enabled, then none + * of its actions will be activated. + */ enabled?: boolean; } /** - * @class - * Initializes a new instance of the ActivityLogAlertLeafCondition class. - * @constructor - * An Activity Log alert condition that is met by comparing an activity log - * field and value. - * - * @member {string} field The name of the field that this condition will - * examine. The possible values for this field are (case-insensitive): - * 'resourceId', 'category', 'caller', 'level', 'operationName', - * 'resourceGroup', 'resourceProvider', 'status', 'subStatus', 'resourceType', - * or anything beginning with 'properties.'. - * @member {string} equals The field value will be compared to this value - * (case-insensitive) to determine if the condition is met. + * An Activity Log alert condition that is met by comparing an activity log field and value. */ export interface ActivityLogAlertLeafCondition { + /** + * The name of the field that this condition will examine. The possible values for this field are + * (case-insensitive): 'resourceId', 'category', 'caller', 'level', 'operationName', + * 'resourceGroup', 'resourceProvider', 'status', 'subStatus', 'resourceType', or anything + * beginning with 'properties.'. + */ field: string; + /** + * The field value will be compared to this value (case-insensitive) to determine if the + * condition is met. + */ equals: string; } /** - * @class - * Initializes a new instance of the ActivityLogAlertAllOfCondition class. - * @constructor - * An Activity Log alert condition that is met when all its member conditions - * are met. - * - * @member {array} allOf The list of activity log alert conditions. + * An Activity Log alert condition that is met when all its member conditions are met. */ export interface ActivityLogAlertAllOfCondition { + /** + * The list of activity log alert conditions. + */ allOf: ActivityLogAlertLeafCondition[]; } /** - * @class - * Initializes a new instance of the ActivityLogAlertActionGroup class. - * @constructor * A pointer to an Azure Action Group. - * - * @member {string} actionGroupId The resourceId of the action group. This - * cannot be null or empty. - * @member {object} [webhookProperties] the dictionary of custom properties to - * include with the post operation. These data are appended to the webhook - * payload. */ export interface ActivityLogAlertActionGroup { + /** + * The resourceId of the action group. This cannot be null or empty. + */ actionGroupId: string; + /** + * the dictionary of custom properties to include with the post operation. These data are + * appended to the webhook payload. + */ webhookProperties?: { [propertyName: string]: string }; } /** - * @class - * Initializes a new instance of the ActivityLogAlertActionList class. - * @constructor * A list of activity log alert actions. - * - * @member {array} [actionGroups] The list of activity log alerts. */ export interface ActivityLogAlertActionList { + /** + * The list of activity log alerts. + */ actionGroups?: ActivityLogAlertActionGroup[]; } /** - * @class - * Initializes a new instance of the ActivityLogAlertResource class. - * @constructor * An activity log alert resource. - * - * @member {array} scopes A list of resourceIds that will be used as prefixes. - * The alert will only apply to activityLogs with resourceIds that fall under - * one of these prefixes. This list must include at least one item. - * @member {boolean} [enabled] Indicates whether this activity log alert is - * enabled. If an activity log alert is not enabled, then none of its actions - * will be activated. Default value: true . - * @member {object} condition The condition that will cause this alert to - * activate. - * @member {array} [condition.allOf] The list of activity log alert conditions. - * @member {object} actions The actions that will activate when the condition - * is met. - * @member {array} [actions.actionGroups] The list of activity log alerts. - * @member {string} [description] A description of this activity log alert. */ export interface ActivityLogAlertResource extends Resource { + /** + * A list of resourceIds that will be used as prefixes. The alert will only apply to activityLogs + * with resourceIds that fall under one of these prefixes. This list must include at least one + * item. + */ scopes: string[]; + /** + * Indicates whether this activity log alert is enabled. If an activity log alert is not enabled, + * then none of its actions will be activated. + */ enabled?: boolean; + /** + * The condition that will cause this alert to activate. + */ condition: ActivityLogAlertAllOfCondition; + /** + * The actions that will activate when the condition is met. + */ actions: ActivityLogAlertActionList; + /** + * A description of this activity log alert. + */ description?: string; } /** - * @class - * Initializes a new instance of the ActivityLogAlertPatchBody class. - * @constructor * An activity log alert object for the body of patch operations. - * - * @member {object} [tags] Resource tags - * @member {boolean} [enabled] Indicates whether this activity log alert is - * enabled. If an activity log alert is not enabled, then none of its actions - * will be activated. Default value: true . */ export interface ActivityLogAlertPatchBody { + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; + /** + * Indicates whether this activity log alert is enabled. If an activity log alert is not enabled, + * then none of its actions will be activated. + */ enabled?: boolean; } /** - * @class - * Initializes a new instance of the LocalizableString class. - * @constructor * The localizable string class. - * - * @member {string} value the invariant value. - * @member {string} [localizedValue] the locale specific value. */ export interface LocalizableString { + /** + * the invariant value. + */ value: string; + /** + * the locale specific value. + */ localizedValue?: string; } /** - * @class - * Initializes a new instance of the SenderAuthorization class. - * @constructor - * the authorization used by the user who has performed the operation that led - * to this event. This captures the RBAC properties of the event. These usually - * include the 'action', 'role' and the 'scope' - * - * @member {string} [action] the permissible actions. For instance: - * microsoft.support/supporttickets/write - * @member {string} [role] the role of the user. For instance: Subscription - * Admin - * @member {string} [scope] the scope. + * the authorization used by the user who has performed the operation that led to this event. This + * captures the RBAC properties of the event. These usually include the 'action', 'role' and the + * 'scope' */ export interface SenderAuthorization { + /** + * the permissible actions. For instance: microsoft.support/supporttickets/write + */ action?: string; + /** + * the role of the user. For instance: Subscription Admin + */ role?: string; + /** + * the scope. + */ scope?: string; } /** - * @class - * Initializes a new instance of the HttpRequestInfo class. - * @constructor * The Http request info. - * - * @member {string} [clientRequestId] the client request id. - * @member {string} [clientIpAddress] the client Ip Address - * @member {string} [method] the Http request method. - * @member {string} [uri] the Uri. */ export interface HttpRequestInfo { + /** + * the client request id. + */ clientRequestId?: string; + /** + * the client Ip Address + */ clientIpAddress?: string; + /** + * the Http request method. + */ method?: string; + /** + * the Uri. + */ uri?: string; } /** - * @class - * Initializes a new instance of the EventData class. - * @constructor * The Azure event log entries are of type EventData - * - * @member {object} [authorization] The sender authorization information. - * @member {string} [authorization.action] the permissible actions. For - * instance: microsoft.support/supporttickets/write - * @member {string} [authorization.role] the role of the user. For instance: - * Subscription Admin - * @member {string} [authorization.scope] the scope. - * @member {object} [claims] key value pairs to identify ARM permissions. - * @member {string} [caller] the email address of the user who has performed - * the operation, the UPN claim or SPN claim based on availability. - * @member {string} [description] the description of the event. - * @member {string} [id] the Id of this event as required by ARM for RBAC. It - * contains the EventDataID and a timestamp information. - * @member {string} [eventDataId] the event data Id. This is a unique - * identifier for an event. - * @member {string} [correlationId] the correlation Id, usually a GUID in the - * string format. The correlation Id is shared among the events that belong to - * the same uber operation. - * @member {object} [eventName] the event name. This value should not be - * confused with OperationName. For practical purposes, OperationName might be - * more appealing to end users. - * @member {string} [eventName.value] the invariant value. - * @member {string} [eventName.localizedValue] the locale specific value. - * @member {object} [category] the event category. - * @member {string} [category.value] the invariant value. - * @member {string} [category.localizedValue] the locale specific value. - * @member {object} [httpRequest] the HTTP request info. Usually includes the - * 'clientRequestId', 'clientIpAddress' (IP address of the user who initiated - * the event) and 'method' (HTTP method e.g. PUT). - * @member {string} [httpRequest.clientRequestId] the client request id. - * @member {string} [httpRequest.clientIpAddress] the client Ip Address - * @member {string} [httpRequest.method] the Http request method. - * @member {string} [httpRequest.uri] the Uri. - * @member {string} [level] the event level. Possible values include: - * 'Critical', 'Error', 'Warning', 'Informational', 'Verbose' - * @member {string} [resourceGroupName] the resource group name of the impacted - * resource. - * @member {object} [resourceProviderName] the resource provider name of the - * impacted resource. - * @member {string} [resourceProviderName.value] the invariant value. - * @member {string} [resourceProviderName.localizedValue] the locale specific - * value. - * @member {string} [resourceId] the resource uri that uniquely identifies the - * resource that caused this event. - * @member {object} [resourceType] the resource type - * @member {string} [resourceType.value] the invariant value. - * @member {string} [resourceType.localizedValue] the locale specific value. - * @member {string} [operationId] It is usually a GUID shared among the events - * corresponding to single operation. This value should not be confused with - * EventName. - * @member {object} [operationName] the operation name. - * @member {string} [operationName.value] the invariant value. - * @member {string} [operationName.localizedValue] the locale specific value. - * @member {object} [properties] the set of pairs (usually a - * Dictionary) that includes details about the event. - * @member {object} [status] a string describing the status of the operation. - * Some typical values are: Started, In progress, Succeeded, Failed, Resolved. - * @member {string} [status.value] the invariant value. - * @member {string} [status.localizedValue] the locale specific value. - * @member {object} [subStatus] the event sub status. Most of the time, when - * included, this captures the HTTP status code of the REST call. Common values - * are: OK (HTTP Status Code: 200), Created (HTTP Status Code: 201), Accepted - * (HTTP Status Code: 202), No Content (HTTP Status Code: 204), Bad - * Request(HTTP Status Code: 400), Not Found (HTTP Status Code: 404), Conflict - * (HTTP Status Code: 409), Internal Server Error (HTTP Status Code: 500), - * Service Unavailable (HTTP Status Code:503), Gateway Timeout (HTTP Status - * Code: 504) - * @member {string} [subStatus.value] the invariant value. - * @member {string} [subStatus.localizedValue] the locale specific value. - * @member {date} [eventTimestamp] the timestamp of when the event was - * generated by the Azure service processing the request corresponding the - * event. It in ISO 8601 format. - * @member {date} [submissionTimestamp] the timestamp of when the event became - * available for querying via this API. It is in ISO 8601 format. This value - * should not be confused eventTimestamp. As there might be a delay between the - * occurrence time of the event, and the time that the event is submitted to - * the Azure logging infrastructure. - * @member {string} [subscriptionId] the Azure subscription Id usually a GUID. - * @member {string} [tenantId] the Azure tenant Id */ export interface EventData { + /** + * The sender authorization information. + */ readonly authorization?: SenderAuthorization; + /** + * key value pairs to identify ARM permissions. + */ readonly claims?: { [propertyName: string]: string }; + /** + * the email address of the user who has performed the operation, the UPN claim or SPN claim + * based on availability. + */ readonly caller?: string; + /** + * the description of the event. + */ readonly description?: string; + /** + * the Id of this event as required by ARM for RBAC. It contains the EventDataID and a timestamp + * information. + */ readonly id?: string; + /** + * the event data Id. This is a unique identifier for an event. + */ readonly eventDataId?: string; + /** + * the correlation Id, usually a GUID in the string format. The correlation Id is shared among + * the events that belong to the same uber operation. + */ readonly correlationId?: string; + /** + * the event name. This value should not be confused with OperationName. For practical purposes, + * OperationName might be more appealing to end users. + */ readonly eventName?: LocalizableString; + /** + * the event category. + */ readonly category?: LocalizableString; + /** + * the HTTP request info. Usually includes the 'clientRequestId', 'clientIpAddress' (IP address + * of the user who initiated the event) and 'method' (HTTP method e.g. PUT). + */ readonly httpRequest?: HttpRequestInfo; + /** + * the event level. Possible values include: 'Critical', 'Error', 'Warning', 'Informational', + * 'Verbose' + */ readonly level?: string; + /** + * the resource group name of the impacted resource. + */ readonly resourceGroupName?: string; + /** + * the resource provider name of the impacted resource. + */ readonly resourceProviderName?: LocalizableString; + /** + * the resource uri that uniquely identifies the resource that caused this event. + */ readonly resourceId?: string; + /** + * the resource type + */ readonly resourceType?: LocalizableString; + /** + * It is usually a GUID shared among the events corresponding to single operation. This value + * should not be confused with EventName. + */ readonly operationId?: string; + /** + * the operation name. + */ readonly operationName?: LocalizableString; + /** + * the set of pairs (usually a Dictionary) that includes details + * about the event. + */ readonly properties?: { [propertyName: string]: string }; + /** + * a string describing the status of the operation. Some typical values are: Started, In + * progress, Succeeded, Failed, Resolved. + */ readonly status?: LocalizableString; + /** + * the event sub status. Most of the time, when included, this captures the HTTP status code of + * the REST call. Common values are: OK (HTTP Status Code: 200), Created (HTTP Status Code: 201), + * Accepted (HTTP Status Code: 202), No Content (HTTP Status Code: 204), Bad Request(HTTP Status + * Code: 400), Not Found (HTTP Status Code: 404), Conflict (HTTP Status Code: 409), Internal + * Server Error (HTTP Status Code: 500), Service Unavailable (HTTP Status Code:503), Gateway + * Timeout (HTTP Status Code: 504) + */ readonly subStatus?: LocalizableString; + /** + * the timestamp of when the event was generated by the Azure service processing the request + * corresponding the event. It in ISO 8601 format. + */ readonly eventTimestamp?: Date; + /** + * the timestamp of when the event became available for querying via this API. It is in ISO 8601 + * format. This value should not be confused eventTimestamp. As there might be a delay between + * the occurrence time of the event, and the time that the event is submitted to the Azure + * logging infrastructure. + */ readonly submissionTimestamp?: Date; + /** + * the Azure subscription Id usually a GUID. + */ readonly subscriptionId?: string; + /** + * the Azure tenant Id + */ readonly tenantId?: string; } /** - * @class - * Initializes a new instance of the MetricAvailability class. - * @constructor - * Metric availability specifies the time grain (aggregation interval or - * frequency) and the retention period for that time grain. - * - * @member {moment.duration} [timeGrain] the time grain specifies the - * aggregation interval for the metric. Expressed as a duration 'PT1M', 'P1D', - * etc. - * @member {moment.duration} [retention] the retention period for the metric at - * the specified timegrain. Expressed as a duration 'PT1M', 'P1D', etc. + * Metric availability specifies the time grain (aggregation interval or frequency) and the + * retention period for that time grain. */ export interface MetricAvailability { + /** + * the time grain specifies the aggregation interval for the metric. Expressed as a duration + * 'PT1M', 'P1D', etc. + */ timeGrain?: moment.Duration; + /** + * the retention period for the metric at the specified timegrain. Expressed as a duration + * 'PT1M', 'P1D', etc. + */ retention?: moment.Duration; } /** - * @class - * Initializes a new instance of the MetricDefinition class. - * @constructor * Metric definition class specifies the metadata for a metric. - * - * @member {boolean} [isDimensionRequired] Flag to indicate whether the - * dimension is required. - * @member {string} [resourceId] the resource identifier of the resource that - * emitted the metric. - * @member {string} [namespace] the namespace the metric blongs to. - * @member {object} [name] the name and the display name of the metric, i.e. it - * is a localizable string. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [unit] the unit of the metric. Possible values include: - * 'Count', 'Bytes', 'Seconds', 'CountPerSecond', 'BytesPerSecond', 'Percent', - * 'MilliSeconds', 'ByteSeconds', 'Unspecified' - * @member {string} [primaryAggregationType] the primary aggregation type value - * defining how to use the values for display. Possible values include: 'None', - * 'Average', 'Count', 'Minimum', 'Maximum', 'Total' - * @member {array} [supportedAggregationTypes] the collection of what - * aggregation types are supported. - * @member {array} [metricAvailabilities] the collection of what aggregation - * intervals are available to be queried. - * @member {string} [id] the resource identifier of the metric definition. - * @member {array} [dimensions] the name and the display name of the dimension, - * i.e. it is a localizable string. */ export interface MetricDefinition { + /** + * Flag to indicate whether the dimension is required. + */ isDimensionRequired?: boolean; + /** + * the resource identifier of the resource that emitted the metric. + */ resourceId?: string; + /** + * the namespace the metric belongs to. + */ namespace?: string; + /** + * the name and the display name of the metric, i.e. it is a localizable string. + */ name?: LocalizableString; + /** + * the unit of the metric. Possible values include: 'Count', 'Bytes', 'Seconds', + * 'CountPerSecond', 'BytesPerSecond', 'Percent', 'MilliSeconds', 'ByteSeconds', 'Unspecified' + */ unit?: string; + /** + * the primary aggregation type value defining how to use the values for display. Possible values + * include: 'None', 'Average', 'Count', 'Minimum', 'Maximum', 'Total' + */ primaryAggregationType?: string; + /** + * the collection of what aggregation types are supported. + */ supportedAggregationTypes?: string[]; + /** + * the collection of what aggregation intervals are available to be queried. + */ metricAvailabilities?: MetricAvailability[]; + /** + * the resource identifier of the metric definition. + */ id?: string; + /** + * the name and the display name of the dimension, i.e. it is a localizable string. + */ dimensions?: LocalizableString[]; } /** - * @class - * Initializes a new instance of the MetricValue class. - * @constructor * Represents a metric value. - * - * @member {date} timeStamp the timestamp for the metric value in ISO 8601 - * format. - * @member {number} [average] the average value in the time range. - * @member {number} [minimum] the least value in the time range. - * @member {number} [maximum] the greatest value in the time range. - * @member {number} [total] the sum of all of the values in the time range. - * @member {number} [count] the number of samples in the time range. Can be - * used to determine the number of values that contributed to the average - * value. */ export interface MetricValue { + /** + * the timestamp for the metric value in ISO 8601 format. + */ timeStamp: Date; + /** + * the average value in the time range. + */ average?: number; + /** + * the least value in the time range. + */ minimum?: number; + /** + * the greatest value in the time range. + */ maximum?: number; + /** + * the sum of all of the values in the time range. + */ total?: number; + /** + * the number of samples in the time range. Can be used to determine the number of values that + * contributed to the average value. + */ count?: number; } /** - * @class - * Initializes a new instance of the MetadataValue class. - * @constructor * Represents a metric metadata value. - * - * @member {object} [name] the name of the metadata. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [value] the value of the metadata. */ export interface MetadataValue { + /** + * the name of the metadata. + */ name?: LocalizableString; + /** + * the value of the metadata. + */ value?: string; } /** - * @class - * Initializes a new instance of the TimeSeriesElement class. - * @constructor - * A time series result type. The discriminator value is always TimeSeries in - * this case. - * - * @member {array} [metadatavalues] the metadata values returned if $filter was - * specified in the call. - * @member {array} [data] An array of data points representing the metric - * values. This is only returned if a result type of data is specified. + * A time series result type. The discriminator value is always TimeSeries in this case. */ export interface TimeSeriesElement { + /** + * the metadata values returned if $filter was specified in the call. + */ metadatavalues?: MetadataValue[]; + /** + * An array of data points representing the metric values. This is only returned if a result + * type of data is specified. + */ data?: MetricValue[]; } /** - * @class - * Initializes a new instance of the Metric class. - * @constructor * The result data of a query. - * - * @member {string} id the metric Id. - * @member {string} type the resource type of the metric resource. - * @member {object} name the name and the display name of the metric, i.e. it - * is localizable string. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} unit the unit of the metric. Possible values include: - * 'Count', 'Bytes', 'Seconds', 'CountPerSecond', 'BytesPerSecond', 'Percent', - * 'MilliSeconds', 'ByteSeconds', 'Unspecified' - * @member {array} timeseries the time series returned when a data query is - * performed. */ export interface Metric { + /** + * the metric Id. + */ id: string; + /** + * the resource type of the metric resource. + */ type: string; + /** + * the name and the display name of the metric, i.e. it is localizable string. + */ name: LocalizableString; + /** + * the unit of the metric. Possible values include: 'Count', 'Bytes', 'Seconds', + * 'CountPerSecond', 'BytesPerSecond', 'Percent', 'MilliSeconds', 'ByteSeconds', 'Unspecified' + */ unit: string; + /** + * the time series returned when a data query is performed. + */ timeseries: TimeSeriesElement[]; } /** - * @class - * Initializes a new instance of the Response class. - * @constructor * The response to a metrics query. - * - * @member {number} [cost] The integer value representing the cost of the - * query, for data case. - * @member {string} timespan The timespan for which the data was retrieved. Its - * value consists of two datatimes concatenated, separated by '/'. This may be - * adjusted in the future and returned back from what was originally requested. - * @member {moment.duration} [interval] The interval (window size) for which - * the metric data was returned in. This may be adjusted in the future and - * returned back from what was originally requested. This is not present if a - * metadata request was made. - * @member {string} [namespace] The namespace of the metrics been queried - * @member {string} [resourceregion] The region of the resource been queried - * for metrics. - * @member {array} value the value of the collection. */ export interface Response { + /** + * The integer value representing the cost of the query, for data case. + */ cost?: number; + /** + * The timespan for which the data was retrieved. Its value consists of two datetimes + * concatenated, separated by '/'. This may be adjusted in the future and returned back from + * what was originally requested. + */ timespan: string; + /** + * The interval (window size) for which the metric data was returned in. This may be adjusted in + * the future and returned back from what was originally requested. This is not present if a + * metadata request was made. + */ interval?: moment.Duration; + /** + * The namespace of the metrics been queried + */ namespace?: string; + /** + * The region of the resource been queried for metrics. + */ resourceregion?: string; + /** + * the value of the collection. + */ value: Metric[]; } /** - * @class - * Initializes a new instance of the BaselineMetadataValue class. - * @constructor * Represents a baseline metadata value. - * - * @member {object} [name] the name of the metadata. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [value] the value of the metadata. */ export interface BaselineMetadataValue { + /** + * the name of the metadata. + */ name?: LocalizableString; + /** + * the value of the metadata. + */ value?: string; } /** - * @class - * Initializes a new instance of the Baseline class. - * @constructor * The baseline values for a single sensitivity value. - * - * @member {string} sensitivity the sensitivity of the baseline. Possible - * values include: 'Low', 'Medium', 'High' - * @member {array} lowThresholds The low thresholds of the baseline. - * @member {array} highThresholds The high thresholds of the baseline. */ export interface Baseline { + /** + * the sensitivity of the baseline. Possible values include: 'Low', 'Medium', 'High' + */ sensitivity: string; + /** + * The low thresholds of the baseline. + */ lowThresholds: number[]; + /** + * The high thresholds of the baseline. + */ highThresholds: number[]; } /** - * @class - * Initializes a new instance of the BaselineResponse class. - * @constructor * The response to a baseline query. - * - * @member {string} [id] the metric baseline Id. - * @member {string} [type] the resource type of the baseline resource. - * @member {object} [name] the name and the display name of the metric, i.e. it - * is localizable string. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [timespan] The timespan for which the data was retrieved. - * Its value consists of two datatimes concatenated, separated by '/'. This - * may be adjusted in the future and returned back from what was originally - * requested. - * @member {moment.duration} [interval] The interval (window size) for which - * the metric data was returned in. This may be adjusted in the future and - * returned back from what was originally requested. This is not present if a - * metadata request was made. - * @member {string} [aggregation] The aggregation type of the metric. - * @member {array} [timestamps] the array of timestamps of the baselines. - * @member {array} [baseline] the baseline values for each sensitivity. - * @member {array} [metadata] the baseline metadata values. */ export interface BaselineResponse { + /** + * the metric baseline Id. + */ readonly id?: string; + /** + * the resource type of the baseline resource. + */ readonly type?: string; + /** + * the name and the display name of the metric, i.e. it is localizable string. + */ readonly name?: LocalizableString; + /** + * The timespan for which the data was retrieved. Its value consists of two datetimes + * concatenated, separated by '/'. This may be adjusted in the future and returned back from + * what was originally requested. + */ timespan?: string; + /** + * The interval (window size) for which the metric data was returned in. This may be adjusted in + * the future and returned back from what was originally requested. This is not present if a + * metadata request was made. + */ interval?: moment.Duration; + /** + * The aggregation type of the metric. + */ aggregation?: string; + /** + * the array of timestamps of the baselines. + */ timestamps?: Date[]; + /** + * the baseline values for each sensitivity. + */ baseline?: Baseline[]; + /** + * the baseline metadata values. + */ metadata?: BaselineMetadataValue[]; } /** - * @class - * Initializes a new instance of the TimeSeriesInformation class. - * @constructor * The time series info needed for calculating the baseline. - * - * @member {array} sensitivities the list of sensitivities for calculating the - * baseline. - * @member {array} values The metric values to calculate the baseline. - * @member {array} [timestamps] the array of timestamps of the baselines. */ export interface TimeSeriesInformation { + /** + * the list of sensitivities for calculating the baseline. + */ sensitivities: string[]; + /** + * The metric values to calculate the baseline. + */ values: number[]; + /** + * the array of timestamps of the baselines. + */ timestamps?: Date[]; } /** - * @class - * Initializes a new instance of the CalculateBaselineResponse class. - * @constructor - * The response to a calcualte baseline call. - * - * @member {string} type the resource type of the baseline resource. - * @member {array} [timestamps] the array of timestamps of the baselines. - * @member {array} baseline the baseline values for each sensitivity. + * The response to a calculate baseline call. */ export interface CalculateBaselineResponse { + /** + * the resource type of the baseline resource. + */ type: string; + /** + * the array of timestamps of the baselines. + */ timestamps?: Date[]; + /** + * the baseline values for each sensitivity. + */ baseline: Baseline[]; } /** - * @class - * Initializes a new instance of the MetricAlertAction class. - * @constructor * An alert action. - * - * @member {string} [actionGroupId] the id of the action group to use. - * @member {object} [webhookProperties] The properties of a webhook object. */ export interface MetricAlertAction { + /** + * the id of the action group to use. + */ actionGroupId?: string; + /** + * The properties of a webhook object. + */ webhookProperties?: { [propertyName: string]: string }; } /** - * @class - * Initializes a new instance of the MetricAlertCriteria class. - * @constructor * The rule criteria that defines the conditions of the alert rule. - * - * @member {string} odatatype Polymorphic Discriminator */ export interface MetricAlertCriteria { + /** + * Polymorphic Discriminator + */ odatatype: string; /** - * @property Describes unknown properties. The value of an unknown property - * can be of "any" type. + * Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; + [additionalPropertyName: string]: any; } /** - * @class - * Initializes a new instance of the MetricAlertResource class. - * @constructor * The metric alert resource. - * - * @member {string} description the description of the metric alert that will - * be included in the alert email. - * @member {number} severity Alert severity {0, 1, 2, 3, 4} - * @member {boolean} enabled the flag that indicates whether the metric alert - * is enabled. - * @member {array} [scopes] the list of resource id's that this metric alert is - * scoped to. - * @member {moment.duration} evaluationFrequency how often the metric alert is - * evaluated represented in ISO 8601 duration format. - * @member {moment.duration} windowSize the period of time (in ISO 8601 - * duration format) that is used to monitor alert activity based on the - * threshold. - * @member {string} [targetResourceType] the resource type of the target - * resource(s) on which the alert is created/updated. Mandatory for - * MultipleResourceMultipleMetricCriteria. - * @member {string} [targetResourceRegion] the region of the target resource(s) - * on which the alert is created/updated. Mandatory for - * MultipleResourceMultipleMetricCriteria. - * @member {object} criteria defines the specific alert criteria information. - * @member {string} [criteria.odatatype] Polymorphic Discriminator - * @member {boolean} [autoMitigate] the flag that indicates whether the alert - * should be auto resolved or not. - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. */ export interface MetricAlertResource extends Resource { + /** + * the description of the metric alert that will be included in the alert email. + */ description: string; + /** + * Alert severity {0, 1, 2, 3, 4} + */ severity: number; + /** + * the flag that indicates whether the metric alert is enabled. + */ enabled: boolean; + /** + * the list of resource id's that this metric alert is scoped to. + */ scopes?: string[]; + /** + * how often the metric alert is evaluated represented in ISO 8601 duration format. + */ evaluationFrequency: moment.Duration; + /** + * the period of time (in ISO 8601 duration format) that is used to monitor alert activity based + * on the threshold. + */ windowSize: moment.Duration; + /** + * the resource type of the target resource(s) on which the alert is created/updated. Mandatory + * for MultipleResourceMultipleMetricCriteria. + */ targetResourceType?: string; + /** + * the region of the target resource(s) on which the alert is created/updated. Mandatory for + * MultipleResourceMultipleMetricCriteria. + */ targetResourceRegion?: string; + /** + * defines the specific alert criteria information. + */ criteria: MetricAlertCriteria; + /** + * the flag that indicates whether the alert should be auto resolved or not. + */ autoMitigate?: boolean; + /** + * the array of actions that are performed when the alert rule becomes active, and when an alert + * condition is resolved. + */ actions?: MetricAlertAction[]; + /** + * Last time the rule was updated in ISO8601 format. + */ readonly lastUpdatedTime?: Date; } /** - * @class - * Initializes a new instance of the MetricAlertResourcePatch class. - * @constructor * The metric alert resource for patch operations. - * - * @member {object} [tags] Resource tags - * @member {string} description the description of the metric alert that will - * be included in the alert email. - * @member {number} severity Alert severity {0, 1, 2, 3, 4} - * @member {boolean} enabled the flag that indicates whether the metric alert - * is enabled. - * @member {array} [scopes] the list of resource id's that this metric alert is - * scoped to. - * @member {moment.duration} evaluationFrequency how often the metric alert is - * evaluated represented in ISO 8601 duration format. - * @member {moment.duration} windowSize the period of time (in ISO 8601 - * duration format) that is used to monitor alert activity based on the - * threshold. - * @member {string} [targetResourceType] the resource type of the target - * resource(s) on which the alert is created/updated. Mandatory for - * MultipleResourceMultipleMetricCriteria. - * @member {string} [targetResourceRegion] the region of the target resource(s) - * on which the alert is created/updated. Mandatory for - * MultipleResourceMultipleMetricCriteria. - * @member {object} criteria defines the specific alert criteria information. - * @member {string} [criteria.odatatype] Polymorphic Discriminator - * @member {boolean} [autoMitigate] the flag that indicates whether the alert - * should be auto resolved or not. - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. */ export interface MetricAlertResourcePatch { + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; + /** + * the description of the metric alert that will be included in the alert email. + */ description: string; + /** + * Alert severity {0, 1, 2, 3, 4} + */ severity: number; + /** + * the flag that indicates whether the metric alert is enabled. + */ enabled: boolean; + /** + * the list of resource id's that this metric alert is scoped to. + */ scopes?: string[]; + /** + * how often the metric alert is evaluated represented in ISO 8601 duration format. + */ evaluationFrequency: moment.Duration; + /** + * the period of time (in ISO 8601 duration format) that is used to monitor alert activity based + * on the threshold. + */ windowSize: moment.Duration; + /** + * the resource type of the target resource(s) on which the alert is created/updated. Mandatory + * for MultipleResourceMultipleMetricCriteria. + */ targetResourceType?: string; + /** + * the region of the target resource(s) on which the alert is created/updated. Mandatory for + * MultipleResourceMultipleMetricCriteria. + */ targetResourceRegion?: string; + /** + * defines the specific alert criteria information. + */ criteria: MetricAlertCriteria; + /** + * the flag that indicates whether the alert should be auto resolved or not. + */ autoMitigate?: boolean; + /** + * the array of actions that are performed when the alert rule becomes active, and when an alert + * condition is resolved. + */ actions?: MetricAlertAction[]; + /** + * Last time the rule was updated in ISO8601 format. + */ readonly lastUpdatedTime?: Date; } /** - * @class - * Initializes a new instance of the MetricAlertStatusProperties class. - * @constructor * An alert status properties. - * - * @member {object} [dimensions] An object describing the type of the - * dimensions. - * @member {string} [status] status value - * @member {date} [timestamp] UTC time when the status was checked. */ export interface MetricAlertStatusProperties { + /** + * An object describing the type of the dimensions. + */ dimensions?: { [propertyName: string]: string }; + /** + * status value + */ status?: string; + /** + * UTC time when the status was checked. + */ timestamp?: Date; } /** - * @class - * Initializes a new instance of the MetricAlertStatus class. - * @constructor * An alert status. - * - * @member {string} [name] The status name. - * @member {string} [id] The alert rule arm id. - * @member {string} [type] The extended resource type name. - * @member {object} [properties] The alert status properties of the metric - * alert status. - * @member {object} [properties.dimensions] An object describing the type of - * the dimensions. - * @member {string} [properties.status] status value - * @member {date} [properties.timestamp] UTC time when the status was checked. */ export interface MetricAlertStatus { + /** + * The status name. + */ name?: string; + /** + * The alert rule arm id. + */ id?: string; + /** + * The extended resource type name. + */ type?: string; + /** + * The alert status properties of the metric alert status. + */ properties?: MetricAlertStatusProperties; } /** - * @class - * Initializes a new instance of the MetricAlertStatusCollection class. - * @constructor * Represents a collection of alert rule resources. - * - * @member {array} [value] the values for the alert rule resources. */ export interface MetricAlertStatusCollection { + /** + * the values for the alert rule resources. + */ value?: MetricAlertStatus[]; } /** - * @class - * Initializes a new instance of the MetricDimension class. - * @constructor * Specifies a metric dimension. - * - * @member {string} name Name of the dimension. - * @member {string} operator the dimension operator. Only 'Include' and - * 'Exclude' are supported - * @member {array} values list of dimension values. */ export interface MetricDimension { + /** + * Name of the dimension. + */ name: string; + /** + * the dimension operator. Only 'Include' and 'Exclude' are supported + */ operator: string; + /** + * list of dimension values. + */ values: string[]; } /** - * @class - * Initializes a new instance of the MultiMetricCriteria class. - * @constructor * The types of conditions for a multi resource alert - * - * @member {string} criterionType Polymorphic Discriminator */ export interface MultiMetricCriteria { + /** + * Polymorphic Discriminator + */ criterionType: string; /** - * @property Describes unknown properties. The value of an unknown property - * can be of "any" type. + * Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; + [additionalPropertyName: string]: any; } /** - * @class - * Initializes a new instance of the MetricCriteria class. - * @constructor * Criterion to filter metrics. - * - * @member {string} name Name of the criteria. - * @member {string} metricName Name of the metric. - * @member {string} [metricNamespace] Namespace of the metric. - * @member {object} operator the criteria operator. - * @member {object} timeAggregation the criteria time aggregation types. - * @member {number} threshold the criteria threshold value that activates the - * alert. - * @member {array} [dimensions] List of dimension conditions. */ export interface MetricCriteria extends MultiMetricCriteria { + /** + * Name of the criteria. + */ name: string; + /** + * Name of the metric. + */ metricName: string; + /** + * Namespace of the metric. + */ metricNamespace?: string; + /** + * the criteria operator. + */ operator: any; + /** + * the criteria time aggregation types. + */ timeAggregation: any; + /** + * the criteria threshold value that activates the alert. + */ threshold: number; + /** + * List of dimension conditions. + */ dimensions?: MetricDimension[]; } /** - * @class - * Initializes a new instance of the MetricAlertSingleResourceMultipleMetricCriteria class. - * @constructor - * Specifies the metric alert criteria for a single resource that has multiple - * metric criteria. - * - * @member {array} [allOf] The list of metric criteria for this 'all of' - * operation. + * Specifies the metric alert criteria for a single resource that has multiple metric criteria. */ export interface MetricAlertSingleResourceMultipleMetricCriteria extends MetricAlertCriteria { + /** + * The list of metric criteria for this 'all of' operation. + */ allOf?: MetricCriteria[]; } /** - * @class - * Initializes a new instance of the MetricAlertMultipleResourceMultipleMetricCriteria class. - * @constructor - * Speficies the metric alert criteria for multiple resource that has multiple - * metric criteria. - * - * @member {array} [allOf] the list of multiple metric criteria for this 'all - * of' operation. + * Specifies the metric alert criteria for multiple resource that has multiple metric criteria. */ export interface MetricAlertMultipleResourceMultipleMetricCriteria extends MetricAlertCriteria { + /** + * the list of multiple metric criteria for this 'all of' operation. + */ allOf?: MultiMetricCriteria[]; } /** - * @class - * Initializes a new instance of the Source class. - * @constructor * Specifies the log search query. - * - * @member {string} [query] Log search query. Required for action type - - * AlertingAction - * @member {array} [authorizedResources] List of Resource referred into query - * @member {string} dataSourceId The resource uri over which log search query - * is to be run. - * @member {string} [queryType] Set value to 'ResultCount'. Possible values - * include: 'ResultCount' */ export interface Source { + /** + * Log search query. Required for action type - AlertingAction + */ query?: string; + /** + * List of Resource referred into query + */ authorizedResources?: string[]; + /** + * The resource uri over which log search query is to be run. + */ dataSourceId: string; + /** + * Set value to 'ResultCount'. Possible values include: 'ResultCount' + */ queryType?: string; } /** - * @class - * Initializes a new instance of the Schedule class. - * @constructor * Defines how often to run the search and the time interval. - * - * @member {number} frequencyInMinutes frequency (in minutes) at which rule - * condition should be evaluated. - * @member {number} timeWindowInMinutes Time window for which data needs to be - * fetched for query (should be greater than or equal to frequencyInMinutes). */ export interface Schedule { + /** + * frequency (in minutes) at which rule condition should be evaluated. + */ frequencyInMinutes: number; + /** + * Time window for which data needs to be fetched for query (should be greater than or equal to + * frequencyInMinutes). + */ timeWindowInMinutes: number; } /** - * @class - * Initializes a new instance of the Action class. - * @constructor * Action descriptor. - * - * @member {string} odatatype Polymorphic Discriminator */ export interface Action { + /** + * Polymorphic Discriminator + */ odatatype: string; } /** - * @class - * Initializes a new instance of the LogSearchRuleResource class. - * @constructor * The Log Search Rule resource. - * - * @member {string} [description] The description of the Log Search rule. - * @member {string} [enabled] The flag which indicates whether the Log Search - * rule is enabled. Value should be true or false. Possible values include: - * 'true', 'false' - * @member {date} [lastUpdatedTime] Last time the rule was updated in IS08601 - * format. - * @member {string} [provisioningState] Provisioning state of the - * scheduledquery rule. Possible values include: 'Succeeded', 'Deploying', - * 'Canceled', 'Failed' - * @member {object} source Data Source against which rule will Query Data - * @member {string} [source.query] Log search query. Required for action type - - * AlertingAction - * @member {array} [source.authorizedResources] List of Resource referred into - * query - * @member {string} [source.dataSourceId] The resource uri over which log - * search query is to be run. - * @member {string} [source.queryType] Set value to 'ResultCount'. Possible - * values include: 'ResultCount' - * @member {object} [schedule] Schedule (Frequnecy, Time Window) for rule. - * Required for action type - AlertingAction - * @member {number} [schedule.frequencyInMinutes] frequency (in minutes) at - * which rule condition should be evaluated. - * @member {number} [schedule.timeWindowInMinutes] Time window for which data - * needs to be fetched for query (should be greater than or equal to - * frequencyInMinutes). - * @member {object} action Action needs to be taken on rule execution. - * @member {string} [action.odatatype] Polymorphic Discriminator */ export interface LogSearchRuleResource extends Resource { + /** + * The description of the Log Search rule. + */ description?: string; + /** + * The flag which indicates whether the Log Search rule is enabled. Value should be true or + * false. Possible values include: 'true', 'false' + */ enabled?: string; + /** + * Last time the rule was updated in IS08601 format. + */ readonly lastUpdatedTime?: Date; + /** + * Provisioning state of the scheduled query rule. Possible values include: 'Succeeded', + * 'Deploying', 'Canceled', 'Failed' + */ readonly provisioningState?: string; + /** + * Data Source against which rule will Query Data + */ source: Source; + /** + * Schedule (Frequency, Time Window) for rule. Required for action type - AlertingAction + */ schedule?: Schedule; + /** + * Action needs to be taken on rule execution. + */ action: Action; } /** - * @class - * Initializes a new instance of the LogSearchRuleResourcePatch class. - * @constructor * The log search rule resource for patch operations. - * - * @member {object} [tags] Resource tags - * @member {string} [enabled] The flag which indicates whether the Log Search - * rule is enabled. Value should be true or false. Possible values include: - * 'true', 'false' */ export interface LogSearchRuleResourcePatch { + /** + * Resource tags + */ tags?: { [propertyName: string]: string }; + /** + * The flag which indicates whether the Log Search rule is enabled. Value should be true or + * false. Possible values include: 'true', 'false' + */ enabled?: string; } /** - * @class - * Initializes a new instance of the LogMetricTrigger class. - * @constructor * A log metrics trigger descriptor. - * - * @member {string} [thresholdOperator] Evaluation operation for Metric - * -'GreaterThan' or 'LessThan' or 'Equal'. Possible values include: - * 'GreaterThan', 'LessThan', 'Equal' - * @member {number} [threshold] The threshold of the metric trigger. - * @member {string} [metricTriggerType] Metric Trigger Type - 'Consecutive' or - * 'Total'. Possible values include: 'Consecutive', 'Total' - * @member {string} [metricColumn] Evaluation of metric on a particular column */ export interface LogMetricTrigger { + /** + * Evaluation operation for Metric -'GreaterThan' or 'LessThan' or 'Equal'. Possible values + * include: 'GreaterThan', 'LessThan', 'Equal' + */ thresholdOperator?: string; + /** + * The threshold of the metric trigger. + */ threshold?: number; + /** + * Metric Trigger Type - 'Consecutive' or 'Total'. Possible values include: 'Consecutive', + * 'Total' + */ metricTriggerType?: string; + /** + * Evaluation of metric on a particular column + */ metricColumn?: string; } /** - * @class - * Initializes a new instance of the TriggerCondition class. - * @constructor * The condition that results in the Log Search rule. - * - * @member {string} thresholdOperator Evaluation operation for rule - - * 'GreaterThan' or 'LessThan. Possible values include: 'GreaterThan', - * 'LessThan', 'Equal' - * @member {number} threshold Result or count threshold based on which rule - * should be triggered. - * @member {object} [metricTrigger] Trigger condition for metric query rule - * @member {string} [metricTrigger.thresholdOperator] Evaluation operation for - * Metric -'GreaterThan' or 'LessThan' or 'Equal'. Possible values include: - * 'GreaterThan', 'LessThan', 'Equal' - * @member {number} [metricTrigger.threshold] The threshold of the metric - * trigger. - * @member {string} [metricTrigger.metricTriggerType] Metric Trigger Type - - * 'Consecutive' or 'Total'. Possible values include: 'Consecutive', 'Total' - * @member {string} [metricTrigger.metricColumn] Evaluation of metric on a - * particular column */ export interface TriggerCondition { + /** + * Evaluation operation for rule - 'GreaterThan' or 'LessThan. Possible values include: + * 'GreaterThan', 'LessThan', 'Equal' + */ thresholdOperator: string; + /** + * Result or count threshold based on which rule should be triggered. + */ threshold: number; + /** + * Trigger condition for metric query rule + */ metricTrigger?: LogMetricTrigger; } /** - * @class - * Initializes a new instance of the AzNsActionGroup class. - * @constructor * Azure action group - * - * @member {array} [actionGroup] Azure Action Group reference. - * @member {string} [emailSubject] Custom subject override for all email ids in - * Azure action group - * @member {string} [customWebhookPayload] Custom payload to be sent for all - * webook URI in Azure action group */ export interface AzNsActionGroup { + /** + * Azure Action Group reference. + */ actionGroup?: string[]; + /** + * Custom subject override for all email ids in Azure action group + */ emailSubject?: string; + /** + * Custom payload to be sent for all webhook URI in Azure action group + */ customWebhookPayload?: string; } /** - * @class - * Initializes a new instance of the AlertingAction class. - * @constructor - * Specifiy action need to be taken when rule type is Alert - * - * @member {string} severity Severity of the alert. Possible values include: - * '0', '1', '2', '3', '4' - * @member {object} aznsAction Azure action group reference. - * @member {array} [aznsAction.actionGroup] Azure Action Group reference. - * @member {string} [aznsAction.emailSubject] Custom subject override for all - * email ids in Azure action group - * @member {string} [aznsAction.customWebhookPayload] Custom payload to be sent - * for all webook URI in Azure action group - * @member {number} [throttlingInMin] time (in minutes) for which Alerts should - * be throttled or suppressed. - * @member {object} trigger The trigger condition that results in the alert - * rule being. - * @member {string} [trigger.thresholdOperator] Evaluation operation for rule - - * 'GreaterThan' or 'LessThan. Possible values include: 'GreaterThan', - * 'LessThan', 'Equal' - * @member {number} [trigger.threshold] Result or count threshold based on - * which rule should be triggered. - * @member {object} [trigger.metricTrigger] Trigger condition for metric query - * rule - * @member {string} [trigger.metricTrigger.thresholdOperator] Evaluation - * operation for Metric -'GreaterThan' or 'LessThan' or 'Equal'. Possible - * values include: 'GreaterThan', 'LessThan', 'Equal' - * @member {number} [trigger.metricTrigger.threshold] The threshold of the - * metric trigger. - * @member {string} [trigger.metricTrigger.metricTriggerType] Metric Trigger - * Type - 'Consecutive' or 'Total'. Possible values include: 'Consecutive', - * 'Total' - * @member {string} [trigger.metricTrigger.metricColumn] Evaluation of metric - * on a particular column + * Specify action need to be taken when rule type is Alert */ export interface AlertingAction extends Action { + /** + * Severity of the alert. Possible values include: '0', '1', '2', '3', '4' + */ severity: string; - aznsAction: AzNsActionGroup; + /** + * Azure action group reference. + */ + aznsAction?: AzNsActionGroup; + /** + * time (in minutes) for which Alerts should be throttled or suppressed. + */ throttlingInMin?: number; + /** + * The trigger condition that results in the alert rule being. + */ trigger: TriggerCondition; } /** - * @class - * Initializes a new instance of the Dimension class. - * @constructor * Specifies the criteria for converting log to metric. - * - * @member {string} name Name of the dimension - * @member {array} values List of dimension values */ export interface Dimension { + /** + * Name of the dimension + */ name: string; + /** + * List of dimension values + */ values: string[]; } /** - * @class - * Initializes a new instance of the Criteria class. - * @constructor * Specifies the criteria for converting log to metric. - * - * @member {string} metricName Name of the metric - * @member {array} [dimensions] List of Dimensions for creating metric */ export interface Criteria { + /** + * Name of the metric + */ metricName: string; + /** + * List of Dimensions for creating metric + */ dimensions?: Dimension[]; } /** - * @class - * Initializes a new instance of the LogToMetricAction class. - * @constructor - * Specifiy action need to be taken when rule type is converting log to metric - * - * @member {object} criteria Severity of the alert - * @member {string} [criteria.metricName] Name of the metric - * @member {array} [criteria.dimensions] List of Dimensions for creating metric + * Specify action need to be taken when rule type is converting log to metric */ export interface LogToMetricAction extends Action { + /** + * Severity of the alert + */ criteria: Criteria; } /** - * @class - * Initializes a new instance of the MetricNamespaceName class. - * @constructor * The fully qualified metric namespace name. - * - * @member {string} [metricNamespaceName] The metric namespace name. */ export interface MetricNamespaceName { + /** + * The metric namespace name. + */ metricNamespaceName?: string; } /** - * @class - * Initializes a new instance of the MetricNamespace class. - * @constructor * Metric namespace class specifies the metadata for a metric namespace. - * - * @member {string} [id] The ID of the metricNamespace. - * @member {string} [type] The type of the namespace. - * @member {string} [name] The name of the namespace. - * @member {object} [properties] Properties which include the fully qualified - * namespace name. - * @member {string} [properties.metricNamespaceName] The metric namespace name. */ export interface MetricNamespace { + /** + * The ID of the metricNamespace. + */ id?: string; + /** + * The type of the namespace. + */ type?: string; + /** + * The name of the namespace. + */ name?: string; + /** + * Properties which include the fully qualified namespace name. + */ properties?: MetricNamespaceName; } +/** + * An azure resource object + */ +export interface ProxyResource extends BaseResource { + /** + * Azure resource Id + */ + readonly id?: string; + /** + * Azure resource name + */ + readonly name?: string; + /** + * Azure resource type + */ + readonly type?: string; +} + +/** + * Error details. + */ +export interface ErrorModel { + /** + * Error code identifying the specific error. + */ + code: string; + /** + * Error message in the caller's locale. + */ + message?: string; +} + +/** + * An error response from the API. + */ +export interface ResponseWithError { + /** + * Error information. + */ + error: ErrorModel; +} + +/** + * Information about a Log Analytics Workspace. + */ +export interface WorkspaceInfo { + /** + * Azure Resource Manager identifier of the Log Analytics Workspace. + */ + id: string; + /** + * Location of the Log Analytics workspace. + */ + location: string; + /** + * Log Analytics workspace identifier. + */ + customerId: string; +} + +/** + * Information about a container with data for a given resource. + */ +export interface DataContainer { + /** + * Log Analytics workspace information. + */ + workspace: WorkspaceInfo; +} + +/** + * VM Insights onboarding status for a resource. + */ +export interface VMInsightsOnboardingStatus extends ProxyResource { + /** + * Azure Resource Manager identifier of the resource whose onboarding status is being + * represented. + */ + resourceId: string; + /** + * The onboarding status for the resource. Note that, a higher level scope, e.g., resource group + * or subscription, is considered onboarded if at least one resource under it is onboarded. + * Possible values include: 'onboarded', 'notOnboarded', 'unknown' + */ + onboardingStatus: string; + /** + * The status of VM Insights data from the resource. When reported as `present` the data array + * will contain information about the data containers to which data for the specified resource is + * being routed. Possible values include: 'present', 'notPresent' + */ + dataStatus: string; + /** + * Containers that currently store VM Insights data for the specified resource. + */ + data?: DataContainer[]; +} /** - * @class - * Initializes a new instance of the AutoscaleSettingResourceCollection class. - * @constructor * Represents a collection of autoscale setting resources. - * - * @member {string} [nextLink] URL to get the next set of results. */ export interface AutoscaleSettingResourceCollection extends Array { + /** + * URL to get the next set of results. + */ nextLink?: string; } /** - * @class - * Initializes a new instance of the IncidentListResult class. - * @constructor * The List incidents operation response. - * */ export interface IncidentListResult extends Array { } /** - * @class - * Initializes a new instance of the AlertRuleResourceCollection class. - * @constructor * Represents a collection of alert rule resources. - * */ export interface AlertRuleResourceCollection extends Array { } /** - * @class - * Initializes a new instance of the LogProfileCollection class. - * @constructor * Represents a collection of log profiles. - * */ export interface LogProfileCollection extends Array { } /** - * @class - * Initializes a new instance of the ActionGroupList class. - * @constructor * A list of action groups. - * - * @member {string} [nextLink] Provides the link to retrieve the next set of - * elements. */ export interface ActionGroupList extends Array { + /** + * Provides the link to retrieve the next set of elements. + */ nextLink?: string; } /** - * @class - * Initializes a new instance of the ActivityLogAlertList class. - * @constructor * A list of activity log alerts. - * - * @member {string} [nextLink] Provides the link to retrieve the next set of - * elements. */ export interface ActivityLogAlertList extends Array { + /** + * Provides the link to retrieve the next set of elements. + */ nextLink?: string; } /** - * @class - * Initializes a new instance of the EventDataCollection class. - * @constructor * Represents collection of events. - * - * @member {string} [nextLink] Provides the link to retrieve the next set of - * events. */ export interface EventDataCollection extends Array { + /** + * Provides the link to retrieve the next set of events. + */ nextLink?: string; } /** - * @class - * Initializes a new instance of the EventCategoryCollection class. - * @constructor - * A collection of event categories. Currently possible values are: - * Administrative, Security, ServiceHealth, Alert, Recommendation, Policy. - * + * A collection of event categories. Currently possible values are: Administrative, Security, + * ServiceHealth, Alert, Recommendation, Policy. */ export interface EventCategoryCollection extends Array { } /** - * @class - * Initializes a new instance of the MetricDefinitionCollection class. - * @constructor * Represents collection of metric definitions. - * */ export interface MetricDefinitionCollection extends Array { } /** - * @class - * Initializes a new instance of the MetricAlertResourceCollection class. - * @constructor * Represents a collection of alert rule resources. - * */ export interface MetricAlertResourceCollection extends Array { } /** - * @class - * Initializes a new instance of the LogSearchRuleResourceCollection class. - * @constructor * Represents a collection of Log Search rule resources. - * */ export interface LogSearchRuleResourceCollection extends Array { } /** - * @class - * Initializes a new instance of the MetricNamespaceCollection class. - * @constructor * Represents collection of metric namespaces. - * */ export interface MetricNamespaceCollection extends Array { } diff --git a/lib/services/monitorManagement/lib/models/index.js b/lib/services/monitorManagement/lib/models/index.js index 07638586be..876f34534b 100644 --- a/lib/services/monitorManagement/lib/models/index.js +++ b/lib/services/monitorManagement/lib/models/index.js @@ -122,6 +122,12 @@ exports.Criteria = require('./criteria'); exports.LogToMetricAction = require('./logToMetricAction'); exports.MetricNamespaceName = require('./metricNamespaceName'); exports.MetricNamespace = require('./metricNamespace'); +exports.ProxyResource = require('./proxyResource'); +exports.ErrorModel = require('./errorModel'); +exports.ResponseWithError = require('./responseWithError'); +exports.WorkspaceInfo = require('./workspaceInfo'); +exports.DataContainer = require('./dataContainer'); +exports.VMInsightsOnboardingStatus = require('./vMInsightsOnboardingStatus'); exports.AutoscaleSettingResourceCollection = require('./autoscaleSettingResourceCollection'); exports.IncidentListResult = require('./incidentListResult'); exports.AlertRuleResourceCollection = require('./alertRuleResourceCollection'); diff --git a/lib/services/monitorManagement/lib/models/itsmReceiver.js b/lib/services/monitorManagement/lib/models/itsmReceiver.js index a46c94b4d3..d99c4f77de 100644 --- a/lib/services/monitorManagement/lib/models/itsmReceiver.js +++ b/lib/services/monitorManagement/lib/models/itsmReceiver.js @@ -17,15 +17,15 @@ class ItsmReceiver { /** * Create a ItsmReceiver. - * @member {string} name The name of the Itsm receiver. Names must be unique - * across all receivers within an action group. - * @member {string} workspaceId OMS LA instance identifier. - * @member {string} connectionId Unique identification of ITSM connection + * @property {string} name The name of the Itsm receiver. Names must be + * unique across all receivers within an action group. + * @property {string} workspaceId OMS LA instance identifier. + * @property {string} connectionId Unique identification of ITSM connection * among multiple defined in above workspace. - * @member {string} ticketConfiguration JSON blob for the configurations of + * @property {string} ticketConfiguration JSON blob for the configurations of * the ITSM action. CreateMultipleWorkItems option will be part of this blob * as well. - * @member {string} region Region in which workspace resides. Supported + * @property {string} region Region in which workspace resides. Supported * values:'centralindia','japaneast','southeastasia','australiasoutheast','uksouth','westcentralus','canadacentral','eastus','westeurope' */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/localizableString.js b/lib/services/monitorManagement/lib/models/localizableString.js index 357dc90351..25e1274dcc 100644 --- a/lib/services/monitorManagement/lib/models/localizableString.js +++ b/lib/services/monitorManagement/lib/models/localizableString.js @@ -17,8 +17,8 @@ class LocalizableString { /** * Create a LocalizableString. - * @member {string} value the invariant value. - * @member {string} [localizedValue] the locale specific value. + * @property {string} value the invariant value. + * @property {string} [localizedValue] the locale specific value. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/locationThresholdRuleCondition.js b/lib/services/monitorManagement/lib/models/locationThresholdRuleCondition.js index c432f200c8..a4edc8dd86 100644 --- a/lib/services/monitorManagement/lib/models/locationThresholdRuleCondition.js +++ b/lib/services/monitorManagement/lib/models/locationThresholdRuleCondition.js @@ -20,10 +20,10 @@ const models = require('./index'); class LocationThresholdRuleCondition extends models['RuleCondition'] { /** * Create a LocationThresholdRuleCondition. - * @member {moment.duration} [windowSize] the period of time (in ISO 8601 + * @property {moment.duration} [windowSize] the period of time (in ISO 8601 * duration format) that is used to monitor alert activity based on the * threshold. If specified then it must be between 5 minutes and 1 day. - * @member {number} failedLocationCount the number of locations that must + * @property {number} failedLocationCount the number of locations that must * fail to activate the alert. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/logMetricTrigger.js b/lib/services/monitorManagement/lib/models/logMetricTrigger.js index 9f50a4aaf4..8eb8f05ff5 100644 --- a/lib/services/monitorManagement/lib/models/logMetricTrigger.js +++ b/lib/services/monitorManagement/lib/models/logMetricTrigger.js @@ -17,13 +17,13 @@ class LogMetricTrigger { /** * Create a LogMetricTrigger. - * @member {string} [thresholdOperator] Evaluation operation for Metric + * @property {string} [thresholdOperator] Evaluation operation for Metric * -'GreaterThan' or 'LessThan' or 'Equal'. Possible values include: * 'GreaterThan', 'LessThan', 'Equal' - * @member {number} [threshold] The threshold of the metric trigger. - * @member {string} [metricTriggerType] Metric Trigger Type - 'Consecutive' + * @property {number} [threshold] The threshold of the metric trigger. + * @property {string} [metricTriggerType] Metric Trigger Type - 'Consecutive' * or 'Total'. Possible values include: 'Consecutive', 'Total' - * @member {string} [metricColumn] Evaluation of metric on a particular + * @property {string} [metricColumn] Evaluation of metric on a particular * column */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/logProfileResource.js b/lib/services/monitorManagement/lib/models/logProfileResource.js index 69a8f54034..fe0a75ce8e 100644 --- a/lib/services/monitorManagement/lib/models/logProfileResource.js +++ b/lib/services/monitorManagement/lib/models/logProfileResource.js @@ -20,23 +20,23 @@ const models = require('./index'); class LogProfileResource extends models['Resource'] { /** * Create a LogProfileResource. - * @member {string} [storageAccountId] the resource id of the storage account - * to which you would like to send the Activity Log. - * @member {string} [serviceBusRuleId] The service bus rule ID of the service - * bus namespace in which you would like to have Event Hubs created for - * streaming the Activity Log. The rule ID is of the format: '{service bus - * resource ID}/authorizationrules/{key name}'. - * @member {array} locations List of regions for which Activity Log events + * @property {string} [storageAccountId] the resource id of the storage + * account to which you would like to send the Activity Log. + * @property {string} [serviceBusRuleId] The service bus rule ID of the + * service bus namespace in which you would like to have Event Hubs created + * for streaming the Activity Log. The rule ID is of the format: '{service + * bus resource ID}/authorizationrules/{key name}'. + * @property {array} locations List of regions for which Activity Log events * should be stored or streamed. It is a comma separated list of valid ARM * locations including the 'global' location. - * @member {array} categories the categories of the logs. These categories + * @property {array} categories the categories of the logs. These categories * are created as is convenient to the user. Some values are: 'Write', * 'Delete', and/or 'Action.' - * @member {object} retentionPolicy the retention policy for the events in + * @property {object} retentionPolicy the retention policy for the events in * the log. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the + * @property {boolean} [retentionPolicy.enabled] a value indicating whether + * the retention policy is enabled. + * @property {number} [retentionPolicy.days] the number of days for the * retention in days. A value of 0 will retain the events indefinitely. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/logProfileResourcePatch.js b/lib/services/monitorManagement/lib/models/logProfileResourcePatch.js index 442c7cf801..ea49e340b9 100644 --- a/lib/services/monitorManagement/lib/models/logProfileResourcePatch.js +++ b/lib/services/monitorManagement/lib/models/logProfileResourcePatch.js @@ -17,24 +17,24 @@ class LogProfileResourcePatch { /** * Create a LogProfileResourcePatch. - * @member {object} [tags] Resource tags - * @member {string} [storageAccountId] the resource id of the storage account - * to which you would like to send the Activity Log. - * @member {string} [serviceBusRuleId] The service bus rule ID of the service - * bus namespace in which you would like to have Event Hubs created for - * streaming the Activity Log. The rule ID is of the format: '{service bus - * resource ID}/authorizationrules/{key name}'. - * @member {array} locations List of regions for which Activity Log events + * @property {object} [tags] Resource tags + * @property {string} [storageAccountId] the resource id of the storage + * account to which you would like to send the Activity Log. + * @property {string} [serviceBusRuleId] The service bus rule ID of the + * service bus namespace in which you would like to have Event Hubs created + * for streaming the Activity Log. The rule ID is of the format: '{service + * bus resource ID}/authorizationrules/{key name}'. + * @property {array} locations List of regions for which Activity Log events * should be stored or streamed. It is a comma separated list of valid ARM * locations including the 'global' location. - * @member {array} categories the categories of the logs. These categories + * @property {array} categories the categories of the logs. These categories * are created as is convenient to the user. Some values are: 'Write', * 'Delete', and/or 'Action.' - * @member {object} retentionPolicy the retention policy for the events in + * @property {object} retentionPolicy the retention policy for the events in * the log. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the + * @property {boolean} [retentionPolicy.enabled] a value indicating whether + * the retention policy is enabled. + * @property {number} [retentionPolicy.days] the number of days for the * retention in days. A value of 0 will retain the events indefinitely. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/logSearchRuleResource.js b/lib/services/monitorManagement/lib/models/logSearchRuleResource.js index 10804b4040..180896a972 100644 --- a/lib/services/monitorManagement/lib/models/logSearchRuleResource.js +++ b/lib/services/monitorManagement/lib/models/logSearchRuleResource.js @@ -20,33 +20,33 @@ const models = require('./index'); class LogSearchRuleResource extends models['Resource'] { /** * Create a LogSearchRuleResource. - * @member {string} [description] The description of the Log Search rule. - * @member {string} [enabled] The flag which indicates whether the Log Search - * rule is enabled. Value should be true or false. Possible values include: - * 'true', 'false' - * @member {date} [lastUpdatedTime] Last time the rule was updated in IS08601 - * format. - * @member {string} [provisioningState] Provisioning state of the - * scheduledquery rule. Possible values include: 'Succeeded', 'Deploying', - * 'Canceled', 'Failed' - * @member {object} source Data Source against which rule will Query Data - * @member {string} [source.query] Log search query. Required for action type - * - AlertingAction - * @member {array} [source.authorizedResources] List of Resource referred + * @property {string} [description] The description of the Log Search rule. + * @property {string} [enabled] The flag which indicates whether the Log + * Search rule is enabled. Value should be true or false. Possible values + * include: 'true', 'false' + * @property {date} [lastUpdatedTime] Last time the rule was updated in + * IS08601 format. + * @property {string} [provisioningState] Provisioning state of the scheduled + * query rule. Possible values include: 'Succeeded', 'Deploying', 'Canceled', + * 'Failed' + * @property {object} source Data Source against which rule will Query Data + * @property {string} [source.query] Log search query. Required for action + * type - AlertingAction + * @property {array} [source.authorizedResources] List of Resource referred * into query - * @member {string} [source.dataSourceId] The resource uri over which log + * @property {string} [source.dataSourceId] The resource uri over which log * search query is to be run. - * @member {string} [source.queryType] Set value to 'ResultCount'. Possible + * @property {string} [source.queryType] Set value to 'ResultCount'. Possible * values include: 'ResultCount' - * @member {object} [schedule] Schedule (Frequnecy, Time Window) for rule. + * @property {object} [schedule] Schedule (Frequency, Time Window) for rule. * Required for action type - AlertingAction - * @member {number} [schedule.frequencyInMinutes] frequency (in minutes) at + * @property {number} [schedule.frequencyInMinutes] frequency (in minutes) at * which rule condition should be evaluated. - * @member {number} [schedule.timeWindowInMinutes] Time window for which data - * needs to be fetched for query (should be greater than or equal to + * @property {number} [schedule.timeWindowInMinutes] Time window for which + * data needs to be fetched for query (should be greater than or equal to * frequencyInMinutes). - * @member {object} action Action needs to be taken on rule execution. - * @member {string} [action.odatatype] Polymorphic Discriminator + * @property {object} action Action needs to be taken on rule execution. + * @property {string} [action.odatatype] Polymorphic Discriminator */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/logSearchRuleResourcePatch.js b/lib/services/monitorManagement/lib/models/logSearchRuleResourcePatch.js index f06f7b4f95..1481b329b0 100644 --- a/lib/services/monitorManagement/lib/models/logSearchRuleResourcePatch.js +++ b/lib/services/monitorManagement/lib/models/logSearchRuleResourcePatch.js @@ -17,10 +17,10 @@ class LogSearchRuleResourcePatch { /** * Create a LogSearchRuleResourcePatch. - * @member {object} [tags] Resource tags - * @member {string} [enabled] The flag which indicates whether the Log Search - * rule is enabled. Value should be true or false. Possible values include: - * 'true', 'false' + * @property {object} [tags] Resource tags + * @property {string} [enabled] The flag which indicates whether the Log + * Search rule is enabled. Value should be true or false. Possible values + * include: 'true', 'false' */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/logSettings.js b/lib/services/monitorManagement/lib/models/logSettings.js index dc1240e08c..82aff6617b 100644 --- a/lib/services/monitorManagement/lib/models/logSettings.js +++ b/lib/services/monitorManagement/lib/models/logSettings.js @@ -18,15 +18,16 @@ class LogSettings { /** * Create a LogSettings. - * @member {string} [category] Name of a Diagnostic Log category for a + * @property {string} [category] Name of a Diagnostic Log category for a * resource type this setting is applied to. To obtain the list of Diagnostic * Log categories for a resource, first perform a GET diagnostic settings * operation. - * @member {boolean} enabled a value indicating whether this log is enabled. - * @member {object} [retentionPolicy] the retention policy for this log. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the + * @property {boolean} enabled a value indicating whether this log is + * enabled. + * @property {object} [retentionPolicy] the retention policy for this log. + * @property {boolean} [retentionPolicy.enabled] a value indicating whether + * the retention policy is enabled. + * @property {number} [retentionPolicy.days] the number of days for the * retention in days. A value of 0 will retain the events indefinitely. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/logToMetricAction.js b/lib/services/monitorManagement/lib/models/logToMetricAction.js index 78a9d15d4d..d49d198836 100644 --- a/lib/services/monitorManagement/lib/models/logToMetricAction.js +++ b/lib/services/monitorManagement/lib/models/logToMetricAction.js @@ -13,16 +13,16 @@ const models = require('./index'); /** - * Specifiy action need to be taken when rule type is converting log to metric + * Specify action need to be taken when rule type is converting log to metric * * @extends models['Action'] */ class LogToMetricAction extends models['Action'] { /** * Create a LogToMetricAction. - * @member {object} criteria Severity of the alert - * @member {string} [criteria.metricName] Name of the metric - * @member {array} [criteria.dimensions] List of Dimensions for creating + * @property {object} criteria Severity of the alert + * @property {string} [criteria.metricName] Name of the metric + * @property {array} [criteria.dimensions] List of Dimensions for creating * metric */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/logicAppReceiver.js b/lib/services/monitorManagement/lib/models/logicAppReceiver.js index 9e7a9f1a52..7cfe116aac 100644 --- a/lib/services/monitorManagement/lib/models/logicAppReceiver.js +++ b/lib/services/monitorManagement/lib/models/logicAppReceiver.js @@ -17,11 +17,12 @@ class LogicAppReceiver { /** * Create a LogicAppReceiver. - * @member {string} name The name of the logic app receiver. Names must be + * @property {string} name The name of the logic app receiver. Names must be * unique across all receivers within an action group. - * @member {string} resourceId The azure resource id of the logic app + * @property {string} resourceId The azure resource id of the logic app * receiver. - * @member {string} callbackUrl The callback url where http request sent to. + * @property {string} callbackUrl The callback url where http request sent + * to. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/managementEventAggregationCondition.js b/lib/services/monitorManagement/lib/models/managementEventAggregationCondition.js index 29aa3f55f9..dc224b04c7 100644 --- a/lib/services/monitorManagement/lib/models/managementEventAggregationCondition.js +++ b/lib/services/monitorManagement/lib/models/managementEventAggregationCondition.js @@ -17,11 +17,12 @@ class ManagementEventAggregationCondition { /** * Create a ManagementEventAggregationCondition. - * @member {string} [operator] the condition operator. Possible values + * @property {string} [operator] the condition operator. Possible values * include: 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', * 'LessThanOrEqual' - * @member {number} [threshold] The threshold value that activates the alert. - * @member {moment.duration} [windowSize] the period of time (in ISO 8601 + * @property {number} [threshold] The threshold value that activates the + * alert. + * @property {moment.duration} [windowSize] the period of time (in ISO 8601 * duration format) that is used to monitor alert activity based on the * threshold. If specified then it must be between 5 minutes and 1 day. */ diff --git a/lib/services/monitorManagement/lib/models/managementEventRuleCondition.js b/lib/services/monitorManagement/lib/models/managementEventRuleCondition.js index d06bfc5742..4192ae65c4 100644 --- a/lib/services/monitorManagement/lib/models/managementEventRuleCondition.js +++ b/lib/services/monitorManagement/lib/models/managementEventRuleCondition.js @@ -20,18 +20,19 @@ const models = require('./index'); class ManagementEventRuleCondition extends models['RuleCondition'] { /** * Create a ManagementEventRuleCondition. - * @member {object} [aggregation] How the data that is collected should be + * @property {object} [aggregation] How the data that is collected should be * combined over time and when the alert is activated. Note that for * management event alerts aggregation is optional – if it is not provided * then any event will cause the alert to activate. - * @member {string} [aggregation.operator] the condition operator. Possible + * @property {string} [aggregation.operator] the condition operator. Possible * values include: 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', * 'LessThanOrEqual' - * @member {number} [aggregation.threshold] The threshold value that + * @property {number} [aggregation.threshold] The threshold value that * activates the alert. - * @member {moment.duration} [aggregation.windowSize] the period of time (in - * ISO 8601 duration format) that is used to monitor alert activity based on - * the threshold. If specified then it must be between 5 minutes and 1 day. + * @property {moment.duration} [aggregation.windowSize] the period of time + * (in ISO 8601 duration format) that is used to monitor alert activity based + * on the threshold. If specified then it must be between 5 minutes and 1 + * day. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/metadataValue.js b/lib/services/monitorManagement/lib/models/metadataValue.js index 4d25ff04c0..6635330e5e 100644 --- a/lib/services/monitorManagement/lib/models/metadataValue.js +++ b/lib/services/monitorManagement/lib/models/metadataValue.js @@ -17,10 +17,10 @@ class MetadataValue { /** * Create a MetadataValue. - * @member {object} [name] the name of the metadata. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [value] the value of the metadata. + * @property {object} [name] the name of the metadata. + * @property {string} [name.value] the invariant value. + * @property {string} [name.localizedValue] the locale specific value. + * @property {string} [value] the value of the metadata. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metric.js b/lib/services/monitorManagement/lib/models/metric.js index 95b5947525..f3094d4edd 100644 --- a/lib/services/monitorManagement/lib/models/metric.js +++ b/lib/services/monitorManagement/lib/models/metric.js @@ -17,16 +17,16 @@ class Metric { /** * Create a Metric. - * @member {string} id the metric Id. - * @member {string} type the resource type of the metric resource. - * @member {object} name the name and the display name of the metric, i.e. it - * is localizable string. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} unit the unit of the metric. Possible values include: + * @property {string} id the metric Id. + * @property {string} type the resource type of the metric resource. + * @property {object} name the name and the display name of the metric, i.e. + * it is localizable string. + * @property {string} [name.value] the invariant value. + * @property {string} [name.localizedValue] the locale specific value. + * @property {string} unit the unit of the metric. Possible values include: * 'Count', 'Bytes', 'Seconds', 'CountPerSecond', 'BytesPerSecond', * 'Percent', 'MilliSeconds', 'ByteSeconds', 'Unspecified' - * @member {array} timeseries the time series returned when a data query is + * @property {array} timeseries the time series returned when a data query is * performed. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/metricAlertAction.js b/lib/services/monitorManagement/lib/models/metricAlertAction.js index 2b70ef2515..d7aaf46377 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertAction.js +++ b/lib/services/monitorManagement/lib/models/metricAlertAction.js @@ -17,8 +17,8 @@ class MetricAlertAction { /** * Create a MetricAlertAction. - * @member {string} [actionGroupId] the id of the action group to use. - * @member {object} [webhookProperties] The properties of a webhook object. + * @property {string} [actionGroupId] the id of the action group to use. + * @property {object} [webhookProperties] The properties of a webhook object. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricAlertCriteria.js b/lib/services/monitorManagement/lib/models/metricAlertCriteria.js index 1a423dbb2d..c2af4a1702 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertCriteria.js +++ b/lib/services/monitorManagement/lib/models/metricAlertCriteria.js @@ -17,7 +17,7 @@ class MetricAlertCriteria { /** * Create a MetricAlertCriteria. - * @member {string} odatatype Polymorphic Discriminator + * @property {string} odatatype Polymorphic Discriminator */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricAlertMultipleResourceMultipleMetricCriteria.js b/lib/services/monitorManagement/lib/models/metricAlertMultipleResourceMultipleMetricCriteria.js index 39bd70583a..4f5a9da4a3 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertMultipleResourceMultipleMetricCriteria.js +++ b/lib/services/monitorManagement/lib/models/metricAlertMultipleResourceMultipleMetricCriteria.js @@ -13,7 +13,7 @@ const models = require('./index'); /** - * Speficies the metric alert criteria for multiple resource that has multiple + * Specifies the metric alert criteria for multiple resource that has multiple * metric criteria. * * @extends models['MetricAlertCriteria'] @@ -21,8 +21,8 @@ const models = require('./index'); class MetricAlertMultipleResourceMultipleMetricCriteria extends models['MetricAlertCriteria'] { /** * Create a MetricAlertMultipleResourceMultipleMetricCriteria. - * @member {array} [allOf] the list of multiple metric criteria for this 'all - * of' operation. + * @property {array} [allOf] the list of multiple metric criteria for this + * 'all of' operation. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/metricAlertResource.js b/lib/services/monitorManagement/lib/models/metricAlertResource.js index 60515bae62..874484ab5f 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertResource.js +++ b/lib/services/monitorManagement/lib/models/metricAlertResource.js @@ -20,32 +20,33 @@ const models = require('./index'); class MetricAlertResource extends models['Resource'] { /** * Create a MetricAlertResource. - * @member {string} description the description of the metric alert that will - * be included in the alert email. - * @member {number} severity Alert severity {0, 1, 2, 3, 4} - * @member {boolean} enabled the flag that indicates whether the metric alert - * is enabled. - * @member {array} [scopes] the list of resource id's that this metric alert - * is scoped to. - * @member {moment.duration} evaluationFrequency how often the metric alert + * @property {string} description the description of the metric alert that + * will be included in the alert email. + * @property {number} severity Alert severity {0, 1, 2, 3, 4} + * @property {boolean} enabled the flag that indicates whether the metric + * alert is enabled. + * @property {array} [scopes] the list of resource id's that this metric + * alert is scoped to. + * @property {moment.duration} evaluationFrequency how often the metric alert * is evaluated represented in ISO 8601 duration format. - * @member {moment.duration} windowSize the period of time (in ISO 8601 + * @property {moment.duration} windowSize the period of time (in ISO 8601 * duration format) that is used to monitor alert activity based on the * threshold. - * @member {string} [targetResourceType] the resource type of the target + * @property {string} [targetResourceType] the resource type of the target * resource(s) on which the alert is created/updated. Mandatory for * MultipleResourceMultipleMetricCriteria. - * @member {string} [targetResourceRegion] the region of the target + * @property {string} [targetResourceRegion] the region of the target * resource(s) on which the alert is created/updated. Mandatory for * MultipleResourceMultipleMetricCriteria. - * @member {object} criteria defines the specific alert criteria information. - * @member {string} [criteria.odatatype] Polymorphic Discriminator - * @member {boolean} [autoMitigate] the flag that indicates whether the alert - * should be auto resolved or not. - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. + * @property {object} criteria defines the specific alert criteria + * information. + * @property {string} [criteria.odatatype] Polymorphic Discriminator + * @property {boolean} [autoMitigate] the flag that indicates whether the + * alert should be auto resolved or not. + * @property {array} [actions] the array of actions that are performed when + * the alert rule becomes active, and when an alert condition is resolved. + * @property {date} [lastUpdatedTime] Last time the rule was updated in + * ISO8601 format. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/metricAlertResourcePatch.js b/lib/services/monitorManagement/lib/models/metricAlertResourcePatch.js index d8742ae18d..936dcc3d06 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertResourcePatch.js +++ b/lib/services/monitorManagement/lib/models/metricAlertResourcePatch.js @@ -17,33 +17,34 @@ class MetricAlertResourcePatch { /** * Create a MetricAlertResourcePatch. - * @member {object} [tags] Resource tags - * @member {string} description the description of the metric alert that will - * be included in the alert email. - * @member {number} severity Alert severity {0, 1, 2, 3, 4} - * @member {boolean} enabled the flag that indicates whether the metric alert - * is enabled. - * @member {array} [scopes] the list of resource id's that this metric alert - * is scoped to. - * @member {moment.duration} evaluationFrequency how often the metric alert + * @property {object} [tags] Resource tags + * @property {string} description the description of the metric alert that + * will be included in the alert email. + * @property {number} severity Alert severity {0, 1, 2, 3, 4} + * @property {boolean} enabled the flag that indicates whether the metric + * alert is enabled. + * @property {array} [scopes] the list of resource id's that this metric + * alert is scoped to. + * @property {moment.duration} evaluationFrequency how often the metric alert * is evaluated represented in ISO 8601 duration format. - * @member {moment.duration} windowSize the period of time (in ISO 8601 + * @property {moment.duration} windowSize the period of time (in ISO 8601 * duration format) that is used to monitor alert activity based on the * threshold. - * @member {string} [targetResourceType] the resource type of the target + * @property {string} [targetResourceType] the resource type of the target * resource(s) on which the alert is created/updated. Mandatory for * MultipleResourceMultipleMetricCriteria. - * @member {string} [targetResourceRegion] the region of the target + * @property {string} [targetResourceRegion] the region of the target * resource(s) on which the alert is created/updated. Mandatory for * MultipleResourceMultipleMetricCriteria. - * @member {object} criteria defines the specific alert criteria information. - * @member {string} [criteria.odatatype] Polymorphic Discriminator - * @member {boolean} [autoMitigate] the flag that indicates whether the alert - * should be auto resolved or not. - * @member {array} [actions] the array of actions that are performed when the - * alert rule becomes active, and when an alert condition is resolved. - * @member {date} [lastUpdatedTime] Last time the rule was updated in ISO8601 - * format. + * @property {object} criteria defines the specific alert criteria + * information. + * @property {string} [criteria.odatatype] Polymorphic Discriminator + * @property {boolean} [autoMitigate] the flag that indicates whether the + * alert should be auto resolved or not. + * @property {array} [actions] the array of actions that are performed when + * the alert rule becomes active, and when an alert condition is resolved. + * @property {date} [lastUpdatedTime] Last time the rule was updated in + * ISO8601 format. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricAlertSingleResourceMultipleMetricCriteria.js b/lib/services/monitorManagement/lib/models/metricAlertSingleResourceMultipleMetricCriteria.js index df17b56e25..c428d1b0c0 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertSingleResourceMultipleMetricCriteria.js +++ b/lib/services/monitorManagement/lib/models/metricAlertSingleResourceMultipleMetricCriteria.js @@ -21,7 +21,7 @@ const models = require('./index'); class MetricAlertSingleResourceMultipleMetricCriteria extends models['MetricAlertCriteria'] { /** * Create a MetricAlertSingleResourceMultipleMetricCriteria. - * @member {array} [allOf] The list of metric criteria for this 'all of' + * @property {array} [allOf] The list of metric criteria for this 'all of' * operation. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/metricAlertStatus.js b/lib/services/monitorManagement/lib/models/metricAlertStatus.js index fbf72c3a94..aec5efd0c3 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertStatus.js +++ b/lib/services/monitorManagement/lib/models/metricAlertStatus.js @@ -17,15 +17,15 @@ class MetricAlertStatus { /** * Create a MetricAlertStatus. - * @member {string} [name] The status name. - * @member {string} [id] The alert rule arm id. - * @member {string} [type] The extended resource type name. - * @member {object} [properties] The alert status properties of the metric + * @property {string} [name] The status name. + * @property {string} [id] The alert rule arm id. + * @property {string} [type] The extended resource type name. + * @property {object} [properties] The alert status properties of the metric * alert status. - * @member {object} [properties.dimensions] An object describing the type of - * the dimensions. - * @member {string} [properties.status] status value - * @member {date} [properties.timestamp] UTC time when the status was + * @property {object} [properties.dimensions] An object describing the type + * of the dimensions. + * @property {string} [properties.status] status value + * @property {date} [properties.timestamp] UTC time when the status was * checked. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/metricAlertStatusCollection.js b/lib/services/monitorManagement/lib/models/metricAlertStatusCollection.js index deb2869449..d9d4eb50d2 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertStatusCollection.js +++ b/lib/services/monitorManagement/lib/models/metricAlertStatusCollection.js @@ -17,7 +17,7 @@ class MetricAlertStatusCollection { /** * Create a MetricAlertStatusCollection. - * @member {array} [value] the values for the alert rule resources. + * @property {array} [value] the values for the alert rule resources. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricAlertStatusProperties.js b/lib/services/monitorManagement/lib/models/metricAlertStatusProperties.js index 73ef0ae1bd..bd9037d36e 100644 --- a/lib/services/monitorManagement/lib/models/metricAlertStatusProperties.js +++ b/lib/services/monitorManagement/lib/models/metricAlertStatusProperties.js @@ -17,10 +17,10 @@ class MetricAlertStatusProperties { /** * Create a MetricAlertStatusProperties. - * @member {object} [dimensions] An object describing the type of the + * @property {object} [dimensions] An object describing the type of the * dimensions. - * @member {string} [status] status value - * @member {date} [timestamp] UTC time when the status was checked. + * @property {string} [status] status value + * @property {date} [timestamp] UTC time when the status was checked. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricAvailability.js b/lib/services/monitorManagement/lib/models/metricAvailability.js index b8374a22c0..1ac0432105 100644 --- a/lib/services/monitorManagement/lib/models/metricAvailability.js +++ b/lib/services/monitorManagement/lib/models/metricAvailability.js @@ -18,11 +18,12 @@ class MetricAvailability { /** * Create a MetricAvailability. - * @member {moment.duration} [timeGrain] the time grain specifies the + * @property {moment.duration} [timeGrain] the time grain specifies the * aggregation interval for the metric. Expressed as a duration 'PT1M', * 'P1D', etc. - * @member {moment.duration} [retention] the retention period for the metric - * at the specified timegrain. Expressed as a duration 'PT1M', 'P1D', etc. + * @property {moment.duration} [retention] the retention period for the + * metric at the specified timegrain. Expressed as a duration 'PT1M', 'P1D', + * etc. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricCriteria.js b/lib/services/monitorManagement/lib/models/metricCriteria.js index 603220b2fe..a47f465ee7 100644 --- a/lib/services/monitorManagement/lib/models/metricCriteria.js +++ b/lib/services/monitorManagement/lib/models/metricCriteria.js @@ -20,14 +20,14 @@ const models = require('./index'); class MetricCriteria extends models['MultiMetricCriteria'] { /** * Create a MetricCriteria. - * @member {string} name Name of the criteria. - * @member {string} metricName Name of the metric. - * @member {string} [metricNamespace] Namespace of the metric. - * @member {object} operator the criteria operator. - * @member {object} timeAggregation the criteria time aggregation types. - * @member {number} threshold the criteria threshold value that activates the - * alert. - * @member {array} [dimensions] List of dimension conditions. + * @property {string} name Name of the criteria. + * @property {string} metricName Name of the metric. + * @property {string} [metricNamespace] Namespace of the metric. + * @property {object} operator the criteria operator. + * @property {object} timeAggregation the criteria time aggregation types. + * @property {number} threshold the criteria threshold value that activates + * the alert. + * @property {array} [dimensions] List of dimension conditions. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/metricDefinition.js b/lib/services/monitorManagement/lib/models/metricDefinition.js index 4f214262f4..4dc8afe3fb 100644 --- a/lib/services/monitorManagement/lib/models/metricDefinition.js +++ b/lib/services/monitorManagement/lib/models/metricDefinition.js @@ -17,27 +17,27 @@ class MetricDefinition { /** * Create a MetricDefinition. - * @member {boolean} [isDimensionRequired] Flag to indicate whether the + * @property {boolean} [isDimensionRequired] Flag to indicate whether the * dimension is required. - * @member {string} [resourceId] the resource identifier of the resource that - * emitted the metric. - * @member {string} [namespace] the namespace the metric blongs to. - * @member {object} [name] the name and the display name of the metric, i.e. - * it is a localizable string. - * @member {string} [name.value] the invariant value. - * @member {string} [name.localizedValue] the locale specific value. - * @member {string} [unit] the unit of the metric. Possible values include: + * @property {string} [resourceId] the resource identifier of the resource + * that emitted the metric. + * @property {string} [namespace] the namespace the metric belongs to. + * @property {object} [name] the name and the display name of the metric, + * i.e. it is a localizable string. + * @property {string} [name.value] the invariant value. + * @property {string} [name.localizedValue] the locale specific value. + * @property {string} [unit] the unit of the metric. Possible values include: * 'Count', 'Bytes', 'Seconds', 'CountPerSecond', 'BytesPerSecond', * 'Percent', 'MilliSeconds', 'ByteSeconds', 'Unspecified' - * @member {string} [primaryAggregationType] the primary aggregation type + * @property {string} [primaryAggregationType] the primary aggregation type * value defining how to use the values for display. Possible values include: * 'None', 'Average', 'Count', 'Minimum', 'Maximum', 'Total' - * @member {array} [supportedAggregationTypes] the collection of what + * @property {array} [supportedAggregationTypes] the collection of what * aggregation types are supported. - * @member {array} [metricAvailabilities] the collection of what aggregation - * intervals are available to be queried. - * @member {string} [id] the resource identifier of the metric definition. - * @member {array} [dimensions] the name and the display name of the + * @property {array} [metricAvailabilities] the collection of what + * aggregation intervals are available to be queried. + * @property {string} [id] the resource identifier of the metric definition. + * @property {array} [dimensions] the name and the display name of the * dimension, i.e. it is a localizable string. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/metricDimension.js b/lib/services/monitorManagement/lib/models/metricDimension.js index baff5d604d..40b0276b2f 100644 --- a/lib/services/monitorManagement/lib/models/metricDimension.js +++ b/lib/services/monitorManagement/lib/models/metricDimension.js @@ -17,10 +17,10 @@ class MetricDimension { /** * Create a MetricDimension. - * @member {string} name Name of the dimension. - * @member {string} operator the dimension operator. Only 'Include' and + * @property {string} name Name of the dimension. + * @property {string} operator the dimension operator. Only 'Include' and * 'Exclude' are supported - * @member {array} values list of dimension values. + * @property {array} values list of dimension values. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricNamespace.js b/lib/services/monitorManagement/lib/models/metricNamespace.js index 0f3005649b..11fba0d2a5 100644 --- a/lib/services/monitorManagement/lib/models/metricNamespace.js +++ b/lib/services/monitorManagement/lib/models/metricNamespace.js @@ -17,12 +17,12 @@ class MetricNamespace { /** * Create a MetricNamespace. - * @member {string} [id] The ID of the metricNamespace. - * @member {string} [type] The type of the namespace. - * @member {string} [name] The name of the namespace. - * @member {object} [properties] Properties which include the fully qualified - * namespace name. - * @member {string} [properties.metricNamespaceName] The metric namespace + * @property {string} [id] The ID of the metricNamespace. + * @property {string} [type] The type of the namespace. + * @property {string} [name] The name of the namespace. + * @property {object} [properties] Properties which include the fully + * qualified namespace name. + * @property {string} [properties.metricNamespaceName] The metric namespace * name. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/metricNamespaceName.js b/lib/services/monitorManagement/lib/models/metricNamespaceName.js index 12cbd9c56b..c698250c2a 100644 --- a/lib/services/monitorManagement/lib/models/metricNamespaceName.js +++ b/lib/services/monitorManagement/lib/models/metricNamespaceName.js @@ -17,7 +17,7 @@ class MetricNamespaceName { /** * Create a MetricNamespaceName. - * @member {string} [metricNamespaceName] The metric namespace name. + * @property {string} [metricNamespaceName] The metric namespace name. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/metricSettings.js b/lib/services/monitorManagement/lib/models/metricSettings.js index 24fc9968a9..9e32e28ad5 100644 --- a/lib/services/monitorManagement/lib/models/metricSettings.js +++ b/lib/services/monitorManagement/lib/models/metricSettings.js @@ -18,18 +18,19 @@ class MetricSettings { /** * Create a MetricSettings. - * @member {moment.duration} [timeGrain] the timegrain of the metric in + * @property {moment.duration} [timeGrain] the timegrain of the metric in * ISO8601 format. - * @member {string} [category] Name of a Diagnostic Metric category for a + * @property {string} [category] Name of a Diagnostic Metric category for a * resource type this setting is applied to. To obtain the list of Diagnostic * metric categories for a resource, first perform a GET diagnostic settings * operation. - * @member {boolean} enabled a value indicating whether this category is + * @property {boolean} enabled a value indicating whether this category is * enabled. - * @member {object} [retentionPolicy] the retention policy for this category. - * @member {boolean} [retentionPolicy.enabled] a value indicating whether the - * retention policy is enabled. - * @member {number} [retentionPolicy.days] the number of days for the + * @property {object} [retentionPolicy] the retention policy for this + * category. + * @property {boolean} [retentionPolicy.enabled] a value indicating whether + * the retention policy is enabled. + * @property {number} [retentionPolicy.days] the number of days for the * retention in days. A value of 0 will retain the events indefinitely. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/metricTrigger.js b/lib/services/monitorManagement/lib/models/metricTrigger.js index 2da56fd24d..7a1e674bcf 100644 --- a/lib/services/monitorManagement/lib/models/metricTrigger.js +++ b/lib/services/monitorManagement/lib/models/metricTrigger.js @@ -17,28 +17,29 @@ class MetricTrigger { /** * Create a MetricTrigger. - * @member {string} metricName the name of the metric that defines what the + * @property {string} metricName the name of the metric that defines what the * rule monitors. - * @member {string} metricResourceUri the resource identifier of the resource - * the rule monitors. - * @member {moment.duration} timeGrain the granularity of metrics the rule + * @property {string} metricResourceUri the resource identifier of the + * resource the rule monitors. + * @property {moment.duration} timeGrain the granularity of metrics the rule * monitors. Must be one of the predefined values returned from metric * definitions for the metric. Must be between 12 hours and 1 minute. - * @member {string} statistic the metric statistic type. How the metrics from - * multiple instances are combined. Possible values include: 'Average', + * @property {string} statistic the metric statistic type. How the metrics + * from multiple instances are combined. Possible values include: 'Average', * 'Min', 'Max', 'Sum' - * @member {moment.duration} timeWindow the range of time in which instance + * @property {moment.duration} timeWindow the range of time in which instance * data is collected. This value must be greater than the delay in metric * collection, which can vary from resource-to-resource. Must be between 12 * hours and 5 minutes. - * @member {string} timeAggregation time aggregation type. How the data that - * is collected should be combined over time. The default value is Average. - * Possible values include: 'Average', 'Minimum', 'Maximum', 'Total', - * 'Count', 'Last' - * @member {string} operator the operator that is used to compare the metric - * data and the threshold. Possible values include: 'Equals', 'NotEquals', - * 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', 'LessThanOrEqual' - * @member {number} threshold the threshold of the metric that triggers the + * @property {string} timeAggregation time aggregation type. How the data + * that is collected should be combined over time. The default value is + * Average. Possible values include: 'Average', 'Minimum', 'Maximum', + * 'Total', 'Count', 'Last' + * @property {string} operator the operator that is used to compare the + * metric data and the threshold. Possible values include: 'Equals', + * 'NotEquals', 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', + * 'LessThanOrEqual' + * @property {number} threshold the threshold of the metric that triggers the * scale action. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/metricValue.js b/lib/services/monitorManagement/lib/models/metricValue.js index 289f6ad9b0..b95001d43f 100644 --- a/lib/services/monitorManagement/lib/models/metricValue.js +++ b/lib/services/monitorManagement/lib/models/metricValue.js @@ -17,13 +17,13 @@ class MetricValue { /** * Create a MetricValue. - * @member {date} timeStamp the timestamp for the metric value in ISO 8601 + * @property {date} timeStamp the timestamp for the metric value in ISO 8601 * format. - * @member {number} [average] the average value in the time range. - * @member {number} [minimum] the least value in the time range. - * @member {number} [maximum] the greatest value in the time range. - * @member {number} [total] the sum of all of the values in the time range. - * @member {number} [count] the number of samples in the time range. Can be + * @property {number} [average] the average value in the time range. + * @property {number} [minimum] the least value in the time range. + * @property {number} [maximum] the greatest value in the time range. + * @property {number} [total] the sum of all of the values in the time range. + * @property {number} [count] the number of samples in the time range. Can be * used to determine the number of values that contributed to the average * value. */ diff --git a/lib/services/monitorManagement/lib/models/multiMetricCriteria.js b/lib/services/monitorManagement/lib/models/multiMetricCriteria.js index f07c53684e..86db61dfbf 100644 --- a/lib/services/monitorManagement/lib/models/multiMetricCriteria.js +++ b/lib/services/monitorManagement/lib/models/multiMetricCriteria.js @@ -17,7 +17,7 @@ class MultiMetricCriteria { /** * Create a MultiMetricCriteria. - * @member {string} criterionType Polymorphic Discriminator + * @property {string} criterionType Polymorphic Discriminator */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/operation.js b/lib/services/monitorManagement/lib/models/operation.js index 8f276ea7b4..bbd7d6e5a9 100644 --- a/lib/services/monitorManagement/lib/models/operation.js +++ b/lib/services/monitorManagement/lib/models/operation.js @@ -17,13 +17,15 @@ class Operation { /** * Create a Operation. - * @member {string} [name] Operation name: {provider}/{resource}/{operation} - * @member {object} [display] Display metadata associated with the operation. - * @member {string} [display.provider] Service provider: Microsoft.Insights - * @member {string} [display.resource] Resource on which the operation is + * @property {string} [name] Operation name: + * {provider}/{resource}/{operation} + * @property {object} [display] Display metadata associated with the + * operation. + * @property {string} [display.provider] Service provider: Microsoft.Insights + * @property {string} [display.resource] Resource on which the operation is * performed: AlertRules, Autoscale, etc. - * @member {string} [display.operation] Operation type: Read, write, delete, - * etc. + * @property {string} [display.operation] Operation type: Read, write, + * delete, etc. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/operationDisplay.js b/lib/services/monitorManagement/lib/models/operationDisplay.js index 8e414a0a13..bf3b760137 100644 --- a/lib/services/monitorManagement/lib/models/operationDisplay.js +++ b/lib/services/monitorManagement/lib/models/operationDisplay.js @@ -17,10 +17,10 @@ class OperationDisplay { /** * Create a OperationDisplay. - * @member {string} [provider] Service provider: Microsoft.Insights - * @member {string} [resource] Resource on which the operation is performed: - * AlertRules, Autoscale, etc. - * @member {string} [operation] Operation type: Read, write, delete, etc. + * @property {string} [provider] Service provider: Microsoft.Insights + * @property {string} [resource] Resource on which the operation is + * performed: AlertRules, Autoscale, etc. + * @property {string} [operation] Operation type: Read, write, delete, etc. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/operationListResult.js b/lib/services/monitorManagement/lib/models/operationListResult.js index 7ceaf0ffa1..0dfcce2e13 100644 --- a/lib/services/monitorManagement/lib/models/operationListResult.js +++ b/lib/services/monitorManagement/lib/models/operationListResult.js @@ -18,9 +18,9 @@ class OperationListResult { /** * Create a OperationListResult. - * @member {array} [value] List of operations supported by the + * @property {array} [value] List of operations supported by the * Microsoft.Insights provider. - * @member {string} [nextLink] URL to get the next set of operation list + * @property {string} [nextLink] URL to get the next set of operation list * results if there are any. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/proxyOnlyResource.js b/lib/services/monitorManagement/lib/models/proxyOnlyResource.js index 768abba9af..368bfe5309 100644 --- a/lib/services/monitorManagement/lib/models/proxyOnlyResource.js +++ b/lib/services/monitorManagement/lib/models/proxyOnlyResource.js @@ -20,9 +20,9 @@ const models = require('./index'); class ProxyOnlyResource extends models['BaseResource'] { /** * Create a ProxyOnlyResource. - * @member {string} [id] Azure resource Id - * @member {string} [name] Azure resource name - * @member {string} [type] Azure resource type + * @property {string} [id] Azure resource Id + * @property {string} [name] Azure resource name + * @property {string} [type] Azure resource type */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/proxyResource.js b/lib/services/monitorManagement/lib/models/proxyResource.js new file mode 100644 index 0000000000..3b7038949d --- /dev/null +++ b/lib/services/monitorManagement/lib/models/proxyResource.js @@ -0,0 +1,75 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +'use strict'; + +const models = require('./index'); + +/** + * An azure resource object + * + * @extends models['BaseResource'] + */ +class ProxyResource extends models['BaseResource'] { + /** + * Create a ProxyResource. + * @property {string} [id] Azure resource Id + * @property {string} [name] Azure resource name + * @property {string} [type] Azure resource type + */ + constructor() { + super(); + } + + /** + * Defines the metadata of ProxyResource + * + * @returns {object} metadata of ProxyResource + * + */ + mapper() { + return { + required: false, + serializedName: 'ProxyResource', + type: { + name: 'Composite', + className: 'ProxyResource', + modelProperties: { + id: { + required: false, + readOnly: true, + serializedName: 'id', + type: { + name: 'String' + } + }, + name: { + required: false, + readOnly: true, + serializedName: 'name', + type: { + name: 'String' + } + }, + type: { + required: false, + readOnly: true, + serializedName: 'type', + type: { + name: 'String' + } + } + } + } + }; + } +} + +module.exports = ProxyResource; diff --git a/lib/services/monitorManagement/lib/models/recurrence.js b/lib/services/monitorManagement/lib/models/recurrence.js index 090c6fc5e2..43dd623ba5 100644 --- a/lib/services/monitorManagement/lib/models/recurrence.js +++ b/lib/services/monitorManagement/lib/models/recurrence.js @@ -18,17 +18,17 @@ class Recurrence { /** * Create a Recurrence. - * @member {string} frequency the recurrence frequency. How often the + * @property {string} frequency the recurrence frequency. How often the * schedule profile should take effect. This value must be Week, meaning each * week will have the same set of profiles. For example, to set a daily * schedule, set **schedule** to every day of the week. The frequency * property specifies that the schedule is repeated weekly. Possible values * include: 'None', 'Second', 'Minute', 'Hour', 'Day', 'Week', 'Month', * 'Year' - * @member {object} schedule the scheduling constraints for when the profile - * begins. - * @member {string} [schedule.timeZone] the timezone for the hours of the - * profile. Some examples of valid timezones are: Dateline Standard Time, + * @property {object} schedule the scheduling constraints for when the + * profile begins. + * @property {string} [schedule.timeZone] the timezone for the hours of the + * profile. Some examples of valid time zones are: Dateline Standard Time, * UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific Standard * Time (Mexico), Pacific Standard Time, US Mountain Standard Time, Mountain * Standard Time (Mexico), Mountain Standard Time, Central America Standard @@ -65,12 +65,12 @@ class Recurrence { * Central Pacific Standard Time, Russia Time Zone 11, New Zealand Standard * Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga Standard * Time, Samoa Standard Time, Line Islands Standard Time - * @member {array} [schedule.days] the collection of days that the profile + * @property {array} [schedule.days] the collection of days that the profile * takes effect on. Possible values are Sunday through Saturday. - * @member {array} [schedule.hours] A collection of hours that the profile + * @property {array} [schedule.hours] A collection of hours that the profile * takes effect on. Values supported are 0 to 23 on the 24-hour clock (AM/PM * times are not supported). - * @member {array} [schedule.minutes] A collection of minutes at which the + * @property {array} [schedule.minutes] A collection of minutes at which the * profile takes effect at. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/recurrentSchedule.js b/lib/services/monitorManagement/lib/models/recurrentSchedule.js index dec886f658..313d19d128 100644 --- a/lib/services/monitorManagement/lib/models/recurrentSchedule.js +++ b/lib/services/monitorManagement/lib/models/recurrentSchedule.js @@ -17,25 +17,25 @@ class RecurrentSchedule { /** * Create a RecurrentSchedule. - * @member {string} timeZone the timezone for the hours of the profile. Some - * examples of valid timezones are: Dateline Standard Time, UTC-11, Hawaiian - * Standard Time, Alaskan Standard Time, Pacific Standard Time (Mexico), - * Pacific Standard Time, US Mountain Standard Time, Mountain Standard Time - * (Mexico), Mountain Standard Time, Central America Standard Time, Central - * Standard Time, Central Standard Time (Mexico), Canada Central Standard - * Time, SA Pacific Standard Time, Eastern Standard Time, US Eastern Standard - * Time, Venezuela Standard Time, Paraguay Standard Time, Atlantic Standard - * Time, Central Brazilian Standard Time, SA Western Standard Time, Pacific - * SA Standard Time, Newfoundland Standard Time, E. South America Standard - * Time, Argentina Standard Time, SA Eastern Standard Time, Greenland - * Standard Time, Montevideo Standard Time, Bahia Standard Time, UTC-02, - * Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde Standard - * Time, Morocco Standard Time, UTC, GMT Standard Time, Greenwich Standard - * Time, W. Europe Standard Time, Central Europe Standard Time, Romance - * Standard Time, Central European Standard Time, W. Central Africa Standard - * Time, Namibia Standard Time, Jordan Standard Time, GTB Standard Time, - * Middle East Standard Time, Egypt Standard Time, Syria Standard Time, E. - * Europe Standard Time, South Africa Standard Time, FLE Standard Time, + * @property {string} timeZone the timezone for the hours of the profile. + * Some examples of valid time zones are: Dateline Standard Time, UTC-11, + * Hawaiian Standard Time, Alaskan Standard Time, Pacific Standard Time + * (Mexico), Pacific Standard Time, US Mountain Standard Time, Mountain + * Standard Time (Mexico), Mountain Standard Time, Central America Standard + * Time, Central Standard Time, Central Standard Time (Mexico), Canada + * Central Standard Time, SA Pacific Standard Time, Eastern Standard Time, US + * Eastern Standard Time, Venezuela Standard Time, Paraguay Standard Time, + * Atlantic Standard Time, Central Brazilian Standard Time, SA Western + * Standard Time, Pacific SA Standard Time, Newfoundland Standard Time, E. + * South America Standard Time, Argentina Standard Time, SA Eastern Standard + * Time, Greenland Standard Time, Montevideo Standard Time, Bahia Standard + * Time, UTC-02, Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde + * Standard Time, Morocco Standard Time, UTC, GMT Standard Time, Greenwich + * Standard Time, W. Europe Standard Time, Central Europe Standard Time, + * Romance Standard Time, Central European Standard Time, W. Central Africa + * Standard Time, Namibia Standard Time, Jordan Standard Time, GTB Standard + * Time, Middle East Standard Time, Egypt Standard Time, Syria Standard Time, + * E. Europe Standard Time, South Africa Standard Time, FLE Standard Time, * Turkey Standard Time, Israel Standard Time, Kaliningrad Standard Time, * Libya Standard Time, Arabic Standard Time, Arab Standard Time, Belarus * Standard Time, Russian Standard Time, E. Africa Standard Time, Iran @@ -55,13 +55,13 @@ class RecurrentSchedule { * Central Pacific Standard Time, Russia Time Zone 11, New Zealand Standard * Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga Standard * Time, Samoa Standard Time, Line Islands Standard Time - * @member {array} days the collection of days that the profile takes effect - * on. Possible values are Sunday through Saturday. - * @member {array} hours A collection of hours that the profile takes effect - * on. Values supported are 0 to 23 on the 24-hour clock (AM/PM times are not - * supported). - * @member {array} minutes A collection of minutes at which the profile takes - * effect at. + * @property {array} days the collection of days that the profile takes + * effect on. Possible values are Sunday through Saturday. + * @property {array} hours A collection of hours that the profile takes + * effect on. Values supported are 0 to 23 on the 24-hour clock (AM/PM times + * are not supported). + * @property {array} minutes A collection of minutes at which the profile + * takes effect at. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/resource.js b/lib/services/monitorManagement/lib/models/resource.js index 429ae3a958..d98ffa4f9b 100644 --- a/lib/services/monitorManagement/lib/models/resource.js +++ b/lib/services/monitorManagement/lib/models/resource.js @@ -20,11 +20,11 @@ const models = require('./index'); class Resource extends models['BaseResource'] { /** * Create a Resource. - * @member {string} [id] Azure resource Id - * @member {string} [name] Azure resource name - * @member {string} [type] Azure resource type - * @member {string} location Resource location - * @member {object} [tags] Resource tags + * @property {string} [id] Azure resource Id + * @property {string} [name] Azure resource name + * @property {string} [type] Azure resource type + * @property {string} location Resource location + * @property {object} [tags] Resource tags */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/response.js b/lib/services/monitorManagement/lib/models/response.js index 6e2b85c300..b7be44172a 100644 --- a/lib/services/monitorManagement/lib/models/response.js +++ b/lib/services/monitorManagement/lib/models/response.js @@ -17,20 +17,20 @@ class Response { /** * Create a Response. - * @member {number} [cost] The integer value representing the cost of the + * @property {number} [cost] The integer value representing the cost of the * query, for data case. - * @member {string} timespan The timespan for which the data was retrieved. - * Its value consists of two datatimes concatenated, separated by '/'. This + * @property {string} timespan The timespan for which the data was retrieved. + * Its value consists of two datetimes concatenated, separated by '/'. This * may be adjusted in the future and returned back from what was originally * requested. - * @member {moment.duration} [interval] The interval (window size) for which - * the metric data was returned in. This may be adjusted in the future and - * returned back from what was originally requested. This is not present if - * a metadata request was made. - * @member {string} [namespace] The namespace of the metrics been queried - * @member {string} [resourceregion] The region of the resource been queried - * for metrics. - * @member {array} value the value of the collection. + * @property {moment.duration} [interval] The interval (window size) for + * which the metric data was returned in. This may be adjusted in the future + * and returned back from what was originally requested. This is not present + * if a metadata request was made. + * @property {string} [namespace] The namespace of the metrics been queried + * @property {string} [resourceregion] The region of the resource been + * queried for metrics. + * @property {array} value the value of the collection. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/responseWithError.js b/lib/services/monitorManagement/lib/models/responseWithError.js new file mode 100644 index 0000000000..4188517729 --- /dev/null +++ b/lib/services/monitorManagement/lib/models/responseWithError.js @@ -0,0 +1,55 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +'use strict'; + +/** + * An error response from the API. + * + */ +class ResponseWithError { + /** + * Create a ResponseWithError. + * @property {object} error Error information. + * @property {string} [error.code] Error code identifying the specific error. + * @property {string} [error.message] Error message in the caller's locale. + */ + constructor() { + } + + /** + * Defines the metadata of ResponseWithError + * + * @returns {object} metadata of ResponseWithError + * + */ + mapper() { + return { + required: false, + serializedName: 'ResponseWithError', + type: { + name: 'Composite', + className: 'ResponseWithError', + modelProperties: { + error: { + required: true, + serializedName: 'error', + type: { + name: 'Composite', + className: 'ErrorModel' + } + } + } + } + }; + } +} + +module.exports = ResponseWithError; diff --git a/lib/services/monitorManagement/lib/models/retentionPolicy.js b/lib/services/monitorManagement/lib/models/retentionPolicy.js index 1ae39bed86..79df3b0aaf 100644 --- a/lib/services/monitorManagement/lib/models/retentionPolicy.js +++ b/lib/services/monitorManagement/lib/models/retentionPolicy.js @@ -17,9 +17,9 @@ class RetentionPolicy { /** * Create a RetentionPolicy. - * @member {boolean} enabled a value indicating whether the retention policy - * is enabled. - * @member {number} days the number of days for the retention in days. A + * @property {boolean} enabled a value indicating whether the retention + * policy is enabled. + * @property {number} days the number of days for the retention in days. A * value of 0 will retain the events indefinitely. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/ruleAction.js b/lib/services/monitorManagement/lib/models/ruleAction.js index 8cc7f75b03..7726a18ab2 100644 --- a/lib/services/monitorManagement/lib/models/ruleAction.js +++ b/lib/services/monitorManagement/lib/models/ruleAction.js @@ -18,7 +18,7 @@ class RuleAction { /** * Create a RuleAction. - * @member {string} odatatype Polymorphic Discriminator + * @property {string} odatatype Polymorphic Discriminator */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/ruleCondition.js b/lib/services/monitorManagement/lib/models/ruleCondition.js index 7d106a306e..48ab1be524 100644 --- a/lib/services/monitorManagement/lib/models/ruleCondition.js +++ b/lib/services/monitorManagement/lib/models/ruleCondition.js @@ -17,14 +17,14 @@ class RuleCondition { /** * Create a RuleCondition. - * @member {object} [dataSource] the resource from which the rule collects + * @property {object} [dataSource] the resource from which the rule collects * its data. For this type dataSource will always be of type * RuleMetricDataSource. - * @member {string} [dataSource.resourceUri] the resource identifier of the + * @property {string} [dataSource.resourceUri] the resource identifier of the * resource the rule monitors. **NOTE**: this property cannot be updated for * an existing rule. - * @member {string} [dataSource.odatatype] Polymorphic Discriminator - * @member {string} odatatype Polymorphic Discriminator + * @property {string} [dataSource.odatatype] Polymorphic Discriminator + * @property {string} odatatype Polymorphic Discriminator */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/ruleDataSource.js b/lib/services/monitorManagement/lib/models/ruleDataSource.js index f106206ee3..d53d0d4b66 100644 --- a/lib/services/monitorManagement/lib/models/ruleDataSource.js +++ b/lib/services/monitorManagement/lib/models/ruleDataSource.js @@ -17,10 +17,10 @@ class RuleDataSource { /** * Create a RuleDataSource. - * @member {string} [resourceUri] the resource identifier of the resource the - * rule monitors. **NOTE**: this property cannot be updated for an existing - * rule. - * @member {string} odatatype Polymorphic Discriminator + * @property {string} [resourceUri] the resource identifier of the resource + * the rule monitors. **NOTE**: this property cannot be updated for an + * existing rule. + * @property {string} odatatype Polymorphic Discriminator */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/ruleEmailAction.js b/lib/services/monitorManagement/lib/models/ruleEmailAction.js index 7a5a3b4e66..39fc08d4f1 100644 --- a/lib/services/monitorManagement/lib/models/ruleEmailAction.js +++ b/lib/services/monitorManagement/lib/models/ruleEmailAction.js @@ -21,10 +21,10 @@ const models = require('./index'); class RuleEmailAction extends models['RuleAction'] { /** * Create a RuleEmailAction. - * @member {boolean} [sendToServiceOwners] Whether the administrators + * @property {boolean} [sendToServiceOwners] Whether the administrators * (service and co-administrators) of the service should be notified when the * alert is activated. - * @member {array} [customEmails] the list of administrator's custom email + * @property {array} [customEmails] the list of administrator's custom email * addresses to notify of the activation of the alert. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/ruleManagementEventClaimsDataSource.js b/lib/services/monitorManagement/lib/models/ruleManagementEventClaimsDataSource.js index a8a5de752c..b3a475510e 100644 --- a/lib/services/monitorManagement/lib/models/ruleManagementEventClaimsDataSource.js +++ b/lib/services/monitorManagement/lib/models/ruleManagementEventClaimsDataSource.js @@ -17,7 +17,7 @@ class RuleManagementEventClaimsDataSource { /** * Create a RuleManagementEventClaimsDataSource. - * @member {string} [emailAddress] the email address. + * @property {string} [emailAddress] the email address. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/ruleManagementEventDataSource.js b/lib/services/monitorManagement/lib/models/ruleManagementEventDataSource.js index b981085f6d..60b909d1db 100644 --- a/lib/services/monitorManagement/lib/models/ruleManagementEventDataSource.js +++ b/lib/services/monitorManagement/lib/models/ruleManagementEventDataSource.js @@ -21,18 +21,18 @@ const models = require('./index'); class RuleManagementEventDataSource extends models['RuleDataSource'] { /** * Create a RuleManagementEventDataSource. - * @member {string} [eventName] the event name. - * @member {string} [eventSource] the event source. - * @member {string} [level] the level. - * @member {string} [operationName] The name of the operation that should be - * checked for. If no name is provided, any operation will match. - * @member {string} [resourceGroupName] the resource group name. - * @member {string} [resourceProviderName] the resource provider name. - * @member {string} [status] The status of the operation that should be + * @property {string} [eventName] the event name. + * @property {string} [eventSource] the event source. + * @property {string} [level] the level. + * @property {string} [operationName] The name of the operation that should + * be checked for. If no name is provided, any operation will match. + * @property {string} [resourceGroupName] the resource group name. + * @property {string} [resourceProviderName] the resource provider name. + * @property {string} [status] The status of the operation that should be * checked for. If no status is provided, any status will match. - * @member {string} [subStatus] the substatus. - * @member {object} [claims] the claims. - * @member {string} [claims.emailAddress] the email address. + * @property {string} [subStatus] the substatus. + * @property {object} [claims] the claims. + * @property {string} [claims.emailAddress] the email address. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/ruleMetricDataSource.js b/lib/services/monitorManagement/lib/models/ruleMetricDataSource.js index abf2f6aae1..20e1924079 100644 --- a/lib/services/monitorManagement/lib/models/ruleMetricDataSource.js +++ b/lib/services/monitorManagement/lib/models/ruleMetricDataSource.js @@ -21,8 +21,8 @@ const models = require('./index'); class RuleMetricDataSource extends models['RuleDataSource'] { /** * Create a RuleMetricDataSource. - * @member {string} [metricName] the name of the metric that defines what the - * rule monitors. + * @property {string} [metricName] the name of the metric that defines what + * the rule monitors. */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/ruleWebhookAction.js b/lib/services/monitorManagement/lib/models/ruleWebhookAction.js index 58cf335564..b1bdde9f74 100644 --- a/lib/services/monitorManagement/lib/models/ruleWebhookAction.js +++ b/lib/services/monitorManagement/lib/models/ruleWebhookAction.js @@ -21,9 +21,9 @@ const models = require('./index'); class RuleWebhookAction extends models['RuleAction'] { /** * Create a RuleWebhookAction. - * @member {string} [serviceUri] the service uri to Post the notification + * @property {string} [serviceUri] the service uri to Post the notification * when the alert activates or resolves. - * @member {object} [properties] the dictionary of custom properties to + * @property {object} [properties] the dictionary of custom properties to * include with the post operation. These data are appended to the webhook * payload. */ diff --git a/lib/services/monitorManagement/lib/models/scaleAction.js b/lib/services/monitorManagement/lib/models/scaleAction.js index e07a8a5d27..c7f45050e6 100644 --- a/lib/services/monitorManagement/lib/models/scaleAction.js +++ b/lib/services/monitorManagement/lib/models/scaleAction.js @@ -17,16 +17,16 @@ class ScaleAction { /** * Create a ScaleAction. - * @member {string} direction the scale direction. Whether the scaling action - * increases or decreases the number of instances. Possible values include: - * 'None', 'Increase', 'Decrease' - * @member {string} type the type of action that should occur when the scale - * rule fires. Possible values include: 'ChangeCount', 'PercentChangeCount', - * 'ExactCount' - * @member {string} [value] the number of instances that are involved in the - * scaling action. This value must be 1 or greater. The default value is 1. - * Default value: '1' . - * @member {moment.duration} cooldown the amount of time to wait since the + * @property {string} direction the scale direction. Whether the scaling + * action increases or decreases the number of instances. Possible values + * include: 'None', 'Increase', 'Decrease' + * @property {string} type the type of action that should occur when the + * scale rule fires. Possible values include: 'ChangeCount', + * 'PercentChangeCount', 'ExactCount' + * @property {string} [value] the number of instances that are involved in + * the scaling action. This value must be 1 or greater. The default value is + * 1. Default value: '1' . + * @property {moment.duration} cooldown the amount of time to wait since the * last scaling action before this action occurs. It must be between 1 week * and 1 minute in ISO 8601 format. */ diff --git a/lib/services/monitorManagement/lib/models/scaleCapacity.js b/lib/services/monitorManagement/lib/models/scaleCapacity.js index 841ec3393c..f161ac2bf1 100644 --- a/lib/services/monitorManagement/lib/models/scaleCapacity.js +++ b/lib/services/monitorManagement/lib/models/scaleCapacity.js @@ -17,11 +17,12 @@ class ScaleCapacity { /** * Create a ScaleCapacity. - * @member {string} minimum the minimum number of instances for the resource. - * @member {string} maximum the maximum number of instances for the resource. - * The actual maximum number of instances is limited by the cores that are - * available in the subscription. - * @member {string} default the number of instances that will be set if + * @property {string} minimum the minimum number of instances for the + * resource. + * @property {string} maximum the maximum number of instances for the + * resource. The actual maximum number of instances is limited by the cores + * that are available in the subscription. + * @property {string} default the number of instances that will be set if * metrics are not available for evaluation. The default is only used if the * current instance count is lower than the default. */ diff --git a/lib/services/monitorManagement/lib/models/scaleRule.js b/lib/services/monitorManagement/lib/models/scaleRule.js index 5260a6d2db..4f9bfb53aa 100644 --- a/lib/services/monitorManagement/lib/models/scaleRule.js +++ b/lib/services/monitorManagement/lib/models/scaleRule.js @@ -17,44 +17,44 @@ class ScaleRule { /** * Create a ScaleRule. - * @member {object} metricTrigger the trigger that results in a scaling + * @property {object} metricTrigger the trigger that results in a scaling * action. - * @member {string} [metricTrigger.metricName] the name of the metric that + * @property {string} [metricTrigger.metricName] the name of the metric that * defines what the rule monitors. - * @member {string} [metricTrigger.metricResourceUri] the resource identifier - * of the resource the rule monitors. - * @member {moment.duration} [metricTrigger.timeGrain] the granularity of + * @property {string} [metricTrigger.metricResourceUri] the resource + * identifier of the resource the rule monitors. + * @property {moment.duration} [metricTrigger.timeGrain] the granularity of * metrics the rule monitors. Must be one of the predefined values returned * from metric definitions for the metric. Must be between 12 hours and 1 * minute. - * @member {string} [metricTrigger.statistic] the metric statistic type. How - * the metrics from multiple instances are combined. Possible values include: - * 'Average', 'Min', 'Max', 'Sum' - * @member {moment.duration} [metricTrigger.timeWindow] the range of time in - * which instance data is collected. This value must be greater than the + * @property {string} [metricTrigger.statistic] the metric statistic type. + * How the metrics from multiple instances are combined. Possible values + * include: 'Average', 'Min', 'Max', 'Sum' + * @property {moment.duration} [metricTrigger.timeWindow] the range of time + * in which instance data is collected. This value must be greater than the * delay in metric collection, which can vary from resource-to-resource. Must * be between 12 hours and 5 minutes. - * @member {string} [metricTrigger.timeAggregation] time aggregation type. + * @property {string} [metricTrigger.timeAggregation] time aggregation type. * How the data that is collected should be combined over time. The default * value is Average. Possible values include: 'Average', 'Minimum', * 'Maximum', 'Total', 'Count', 'Last' - * @member {string} [metricTrigger.operator] the operator that is used to + * @property {string} [metricTrigger.operator] the operator that is used to * compare the metric data and the threshold. Possible values include: * 'Equals', 'NotEquals', 'GreaterThan', 'GreaterThanOrEqual', 'LessThan', * 'LessThanOrEqual' - * @member {number} [metricTrigger.threshold] the threshold of the metric + * @property {number} [metricTrigger.threshold] the threshold of the metric * that triggers the scale action. - * @member {object} scaleAction the parameters for the scaling action. - * @member {string} [scaleAction.direction] the scale direction. Whether the - * scaling action increases or decreases the number of instances. Possible - * values include: 'None', 'Increase', 'Decrease' - * @member {string} [scaleAction.type] the type of action that should occur + * @property {object} scaleAction the parameters for the scaling action. + * @property {string} [scaleAction.direction] the scale direction. Whether + * the scaling action increases or decreases the number of instances. + * Possible values include: 'None', 'Increase', 'Decrease' + * @property {string} [scaleAction.type] the type of action that should occur * when the scale rule fires. Possible values include: 'ChangeCount', * 'PercentChangeCount', 'ExactCount' - * @member {string} [scaleAction.value] the number of instances that are + * @property {string} [scaleAction.value] the number of instances that are * involved in the scaling action. This value must be 1 or greater. The * default value is 1. - * @member {moment.duration} [scaleAction.cooldown] the amount of time to + * @property {moment.duration} [scaleAction.cooldown] the amount of time to * wait since the last scaling action before this action occurs. It must be * between 1 week and 1 minute in ISO 8601 format. */ diff --git a/lib/services/monitorManagement/lib/models/schedule.js b/lib/services/monitorManagement/lib/models/schedule.js index bc53afa278..4fe6309310 100644 --- a/lib/services/monitorManagement/lib/models/schedule.js +++ b/lib/services/monitorManagement/lib/models/schedule.js @@ -17,9 +17,9 @@ class Schedule { /** * Create a Schedule. - * @member {number} frequencyInMinutes frequency (in minutes) at which rule + * @property {number} frequencyInMinutes frequency (in minutes) at which rule * condition should be evaluated. - * @member {number} timeWindowInMinutes Time window for which data needs to + * @property {number} timeWindowInMinutes Time window for which data needs to * be fetched for query (should be greater than or equal to * frequencyInMinutes). */ diff --git a/lib/services/monitorManagement/lib/models/senderAuthorization.js b/lib/services/monitorManagement/lib/models/senderAuthorization.js index db357336e2..629afc3f0a 100644 --- a/lib/services/monitorManagement/lib/models/senderAuthorization.js +++ b/lib/services/monitorManagement/lib/models/senderAuthorization.js @@ -19,11 +19,11 @@ class SenderAuthorization { /** * Create a SenderAuthorization. - * @member {string} [action] the permissible actions. For instance: + * @property {string} [action] the permissible actions. For instance: * microsoft.support/supporttickets/write - * @member {string} [role] the role of the user. For instance: Subscription + * @property {string} [role] the role of the user. For instance: Subscription * Admin - * @member {string} [scope] the scope. + * @property {string} [scope] the scope. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/smsReceiver.js b/lib/services/monitorManagement/lib/models/smsReceiver.js index 9579690c9e..70cc6f12e7 100644 --- a/lib/services/monitorManagement/lib/models/smsReceiver.js +++ b/lib/services/monitorManagement/lib/models/smsReceiver.js @@ -17,11 +17,11 @@ class SmsReceiver { /** * Create a SmsReceiver. - * @member {string} name The name of the SMS receiver. Names must be unique + * @property {string} name The name of the SMS receiver. Names must be unique * across all receivers within an action group. - * @member {string} countryCode The country code of the SMS receiver. - * @member {string} phoneNumber The phone number of the SMS receiver. - * @member {string} [status] The status of the receiver. Possible values + * @property {string} countryCode The country code of the SMS receiver. + * @property {string} phoneNumber The phone number of the SMS receiver. + * @property {string} [status] The status of the receiver. Possible values * include: 'NotSpecified', 'Enabled', 'Disabled' */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/source.js b/lib/services/monitorManagement/lib/models/source.js index 016c655ca5..acc00fcfd1 100644 --- a/lib/services/monitorManagement/lib/models/source.js +++ b/lib/services/monitorManagement/lib/models/source.js @@ -17,13 +17,13 @@ class Source { /** * Create a Source. - * @member {string} [query] Log search query. Required for action type - + * @property {string} [query] Log search query. Required for action type - * AlertingAction - * @member {array} [authorizedResources] List of Resource referred into + * @property {array} [authorizedResources] List of Resource referred into * query - * @member {string} dataSourceId The resource uri over which log search query - * is to be run. - * @member {string} [queryType] Set value to 'ResultCount'. Possible values + * @property {string} dataSourceId The resource uri over which log search + * query is to be run. + * @property {string} [queryType] Set value to 'ResultCount'. Possible values * include: 'ResultCount' */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/thresholdRuleCondition.js b/lib/services/monitorManagement/lib/models/thresholdRuleCondition.js index 899822bb45..7069822ce7 100644 --- a/lib/services/monitorManagement/lib/models/thresholdRuleCondition.js +++ b/lib/services/monitorManagement/lib/models/thresholdRuleCondition.js @@ -20,17 +20,17 @@ const models = require('./index'); class ThresholdRuleCondition extends models['RuleCondition'] { /** * Create a ThresholdRuleCondition. - * @member {string} operator the operator used to compare the data and the + * @property {string} operator the operator used to compare the data and the * threshold. Possible values include: 'GreaterThan', 'GreaterThanOrEqual', * 'LessThan', 'LessThanOrEqual' - * @member {number} threshold the threshold value that activates the alert. - * @member {moment.duration} [windowSize] the period of time (in ISO 8601 + * @property {number} threshold the threshold value that activates the alert. + * @property {moment.duration} [windowSize] the period of time (in ISO 8601 * duration format) that is used to monitor alert activity based on the * threshold. If specified then it must be between 5 minutes and 1 day. - * @member {string} [timeAggregation] the time aggregation operator. How the - * data that are collected should be combined over time. The default value is - * the PrimaryAggregationType of the Metric. Possible values include: - * 'Average', 'Minimum', 'Maximum', 'Total', 'Last' + * @property {string} [timeAggregation] the time aggregation operator. How + * the data that are collected should be combined over time. The default + * value is the PrimaryAggregationType of the Metric. Possible values + * include: 'Average', 'Minimum', 'Maximum', 'Total', 'Last' */ constructor() { super(); diff --git a/lib/services/monitorManagement/lib/models/timeSeriesElement.js b/lib/services/monitorManagement/lib/models/timeSeriesElement.js index 1290bd7598..a0a922eafc 100644 --- a/lib/services/monitorManagement/lib/models/timeSeriesElement.js +++ b/lib/services/monitorManagement/lib/models/timeSeriesElement.js @@ -18,9 +18,9 @@ class TimeSeriesElement { /** * Create a TimeSeriesElement. - * @member {array} [metadatavalues] the metadata values returned if $filter + * @property {array} [metadatavalues] the metadata values returned if $filter * was specified in the call. - * @member {array} [data] An array of data points representing the metric + * @property {array} [data] An array of data points representing the metric * values. This is only returned if a result type of data is specified. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/timeSeriesInformation.js b/lib/services/monitorManagement/lib/models/timeSeriesInformation.js index f4d8ac5464..c5d32ed1e6 100644 --- a/lib/services/monitorManagement/lib/models/timeSeriesInformation.js +++ b/lib/services/monitorManagement/lib/models/timeSeriesInformation.js @@ -17,10 +17,10 @@ class TimeSeriesInformation { /** * Create a TimeSeriesInformation. - * @member {array} sensitivities the list of sensitivities for calculating + * @property {array} sensitivities the list of sensitivities for calculating * the baseline. - * @member {array} values The metric values to calculate the baseline. - * @member {array} [timestamps] the array of timestamps of the baselines. + * @property {array} values The metric values to calculate the baseline. + * @property {array} [timestamps] the array of timestamps of the baselines. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/timeWindow.js b/lib/services/monitorManagement/lib/models/timeWindow.js index c072fd288a..4faab5761a 100644 --- a/lib/services/monitorManagement/lib/models/timeWindow.js +++ b/lib/services/monitorManagement/lib/models/timeWindow.js @@ -17,15 +17,15 @@ class TimeWindow { /** * Create a TimeWindow. - * @member {string} [timeZone] the timezone of the start and end times for - * the profile. Some examples of valid timezones are: Dateline Standard Time, - * UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific Standard - * Time (Mexico), Pacific Standard Time, US Mountain Standard Time, Mountain - * Standard Time (Mexico), Mountain Standard Time, Central America Standard - * Time, Central Standard Time, Central Standard Time (Mexico), Canada - * Central Standard Time, SA Pacific Standard Time, Eastern Standard Time, US - * Eastern Standard Time, Venezuela Standard Time, Paraguay Standard Time, - * Atlantic Standard Time, Central Brazilian Standard Time, SA Western + * @property {string} [timeZone] the timezone of the start and end times for + * the profile. Some examples of valid time zones are: Dateline Standard + * Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific + * Standard Time (Mexico), Pacific Standard Time, US Mountain Standard Time, + * Mountain Standard Time (Mexico), Mountain Standard Time, Central America + * Standard Time, Central Standard Time, Central Standard Time (Mexico), + * Canada Central Standard Time, SA Pacific Standard Time, Eastern Standard + * Time, US Eastern Standard Time, Venezuela Standard Time, Paraguay Standard + * Time, Atlantic Standard Time, Central Brazilian Standard Time, SA Western * Standard Time, Pacific SA Standard Time, Newfoundland Standard Time, E. * South America Standard Time, Argentina Standard Time, SA Eastern Standard * Time, Greenland Standard Time, Montevideo Standard Time, Bahia Standard @@ -55,8 +55,8 @@ class TimeWindow { * Central Pacific Standard Time, Russia Time Zone 11, New Zealand Standard * Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga Standard * Time, Samoa Standard Time, Line Islands Standard Time - * @member {date} start the start time for the profile in ISO 8601 format. - * @member {date} end the end time for the profile in ISO 8601 format. + * @property {date} start the start time for the profile in ISO 8601 format. + * @property {date} end the end time for the profile in ISO 8601 format. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/triggerCondition.js b/lib/services/monitorManagement/lib/models/triggerCondition.js index b39bdee93d..8eb8ad4fe4 100644 --- a/lib/services/monitorManagement/lib/models/triggerCondition.js +++ b/lib/services/monitorManagement/lib/models/triggerCondition.js @@ -17,20 +17,20 @@ class TriggerCondition { /** * Create a TriggerCondition. - * @member {string} thresholdOperator Evaluation operation for rule - + * @property {string} thresholdOperator Evaluation operation for rule - * 'GreaterThan' or 'LessThan. Possible values include: 'GreaterThan', * 'LessThan', 'Equal' - * @member {number} threshold Result or count threshold based on which rule + * @property {number} threshold Result or count threshold based on which rule * should be triggered. - * @member {object} [metricTrigger] Trigger condition for metric query rule - * @member {string} [metricTrigger.thresholdOperator] Evaluation operation + * @property {object} [metricTrigger] Trigger condition for metric query rule + * @property {string} [metricTrigger.thresholdOperator] Evaluation operation * for Metric -'GreaterThan' or 'LessThan' or 'Equal'. Possible values * include: 'GreaterThan', 'LessThan', 'Equal' - * @member {number} [metricTrigger.threshold] The threshold of the metric + * @property {number} [metricTrigger.threshold] The threshold of the metric * trigger. - * @member {string} [metricTrigger.metricTriggerType] Metric Trigger Type - + * @property {string} [metricTrigger.metricTriggerType] Metric Trigger Type - * 'Consecutive' or 'Total'. Possible values include: 'Consecutive', 'Total' - * @member {string} [metricTrigger.metricColumn] Evaluation of metric on a + * @property {string} [metricTrigger.metricColumn] Evaluation of metric on a * particular column */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/vMInsightsOnboardingStatus.js b/lib/services/monitorManagement/lib/models/vMInsightsOnboardingStatus.js new file mode 100644 index 0000000000..8821e033f5 --- /dev/null +++ b/lib/services/monitorManagement/lib/models/vMInsightsOnboardingStatus.js @@ -0,0 +1,120 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +'use strict'; + +const models = require('./index'); + +/** + * VM Insights onboarding status for a resource. + * + * @extends models['ProxyResource'] + */ +class VMInsightsOnboardingStatus extends models['ProxyResource'] { + /** + * Create a VMInsightsOnboardingStatus. + * @property {string} resourceId Azure Resource Manager identifier of the + * resource whose onboarding status is being represented. + * @property {string} onboardingStatus The onboarding status for the + * resource. Note that, a higher level scope, e.g., resource group or + * subscription, is considered onboarded if at least one resource under it is + * onboarded. Possible values include: 'onboarded', 'notOnboarded', 'unknown' + * @property {string} dataStatus The status of VM Insights data from the + * resource. When reported as `present` the data array will contain + * information about the data containers to which data for the specified + * resource is being routed. Possible values include: 'present', 'notPresent' + * @property {array} [data] Containers that currently store VM Insights data + * for the specified resource. + */ + constructor() { + super(); + } + + /** + * Defines the metadata of VMInsightsOnboardingStatus + * + * @returns {object} metadata of VMInsightsOnboardingStatus + * + */ + mapper() { + return { + required: false, + serializedName: 'VMInsightsOnboardingStatus', + type: { + name: 'Composite', + className: 'VMInsightsOnboardingStatus', + modelProperties: { + id: { + required: false, + readOnly: true, + serializedName: 'id', + type: { + name: 'String' + } + }, + name: { + required: false, + readOnly: true, + serializedName: 'name', + type: { + name: 'String' + } + }, + type: { + required: false, + readOnly: true, + serializedName: 'type', + type: { + name: 'String' + } + }, + resourceId: { + required: true, + serializedName: 'properties.resourceId', + type: { + name: 'String' + } + }, + onboardingStatus: { + required: true, + serializedName: 'properties.onboardingStatus', + type: { + name: 'String' + } + }, + dataStatus: { + required: true, + serializedName: 'properties.dataStatus', + type: { + name: 'String' + } + }, + data: { + required: false, + serializedName: 'properties.data', + type: { + name: 'Sequence', + element: { + required: false, + serializedName: 'DataContainerElementType', + type: { + name: 'Composite', + className: 'DataContainer' + } + } + } + } + } + } + }; + } +} + +module.exports = VMInsightsOnboardingStatus; diff --git a/lib/services/monitorManagement/lib/models/voiceReceiver.js b/lib/services/monitorManagement/lib/models/voiceReceiver.js index ac1ac1025d..4244364e7f 100644 --- a/lib/services/monitorManagement/lib/models/voiceReceiver.js +++ b/lib/services/monitorManagement/lib/models/voiceReceiver.js @@ -17,10 +17,10 @@ class VoiceReceiver { /** * Create a VoiceReceiver. - * @member {string} name The name of the voice receiver. Names must be unique - * across all receivers within an action group. - * @member {string} countryCode The country code of the voice receiver. - * @member {string} phoneNumber The phone number of the voice receiver. + * @property {string} name The name of the voice receiver. Names must be + * unique across all receivers within an action group. + * @property {string} countryCode The country code of the voice receiver. + * @property {string} phoneNumber The phone number of the voice receiver. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/webhookNotification.js b/lib/services/monitorManagement/lib/models/webhookNotification.js index bc05f4b1a1..f5a230d4d5 100644 --- a/lib/services/monitorManagement/lib/models/webhookNotification.js +++ b/lib/services/monitorManagement/lib/models/webhookNotification.js @@ -17,9 +17,9 @@ class WebhookNotification { /** * Create a WebhookNotification. - * @member {string} [serviceUri] the service address to receive the + * @property {string} [serviceUri] the service address to receive the * notification. - * @member {object} [properties] a property bag of settings. This value can + * @property {object} [properties] a property bag of settings. This value can * be empty. */ constructor() { diff --git a/lib/services/monitorManagement/lib/models/webhookReceiver.js b/lib/services/monitorManagement/lib/models/webhookReceiver.js index bfaf7cd202..5cb93a12b1 100644 --- a/lib/services/monitorManagement/lib/models/webhookReceiver.js +++ b/lib/services/monitorManagement/lib/models/webhookReceiver.js @@ -17,9 +17,9 @@ class WebhookReceiver { /** * Create a WebhookReceiver. - * @member {string} name The name of the webhook receiver. Names must be + * @property {string} name The name of the webhook receiver. Names must be * unique across all receivers within an action group. - * @member {string} serviceUri The URI where webhooks should be sent. + * @property {string} serviceUri The URI where webhooks should be sent. */ constructor() { } diff --git a/lib/services/monitorManagement/lib/models/workspaceInfo.js b/lib/services/monitorManagement/lib/models/workspaceInfo.js new file mode 100644 index 0000000000..8de6b142f1 --- /dev/null +++ b/lib/services/monitorManagement/lib/models/workspaceInfo.js @@ -0,0 +1,69 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +'use strict'; + +/** + * Information about a Log Analytics Workspace. + * + */ +class WorkspaceInfo { + /** + * Create a WorkspaceInfo. + * @property {string} id Azure Resource Manager identifier of the Log + * Analytics Workspace. + * @property {string} location Location of the Log Analytics workspace. + * @property {string} customerId Log Analytics workspace identifier. + */ + constructor() { + } + + /** + * Defines the metadata of WorkspaceInfo + * + * @returns {object} metadata of WorkspaceInfo + * + */ + mapper() { + return { + required: false, + serializedName: 'WorkspaceInfo', + type: { + name: 'Composite', + className: 'WorkspaceInfo', + modelProperties: { + id: { + required: true, + serializedName: 'id', + type: { + name: 'String' + } + }, + location: { + required: true, + serializedName: 'location', + type: { + name: 'String' + } + }, + customerId: { + required: true, + serializedName: 'properties.customerId', + type: { + name: 'String' + } + } + } + } + }; + } +} + +module.exports = WorkspaceInfo; diff --git a/lib/services/monitorManagement/lib/monitorManagementClient.d.ts b/lib/services/monitorManagement/lib/monitorManagementClient.d.ts index d086aa113b..e270b2757f 100644 --- a/lib/services/monitorManagement/lib/monitorManagementClient.d.ts +++ b/lib/services/monitorManagement/lib/monitorManagementClient.d.ts @@ -73,6 +73,7 @@ export default class MonitorManagementClient extends AzureServiceClient { metricAlertsStatus: operations.MetricAlertsStatus; scheduledQueryRules: operations.ScheduledQueryRules; metricNamespaces: operations.MetricNamespaces; + vMInsights: operations.VMInsights; } export { MonitorManagementClient, models as MonitorManagementModels }; diff --git a/lib/services/monitorManagement/lib/monitorManagementClient.js b/lib/services/monitorManagement/lib/monitorManagementClient.js index 8ba6797787..7f69bb35d1 100644 --- a/lib/services/monitorManagement/lib/monitorManagementClient.js +++ b/lib/services/monitorManagement/lib/monitorManagementClient.js @@ -90,6 +90,7 @@ class MonitorManagementClient extends ServiceClient { this.metricAlertsStatus = new operations.MetricAlertsStatus(this); this.scheduledQueryRules = new operations.ScheduledQueryRules(this); this.metricNamespaces = new operations.MetricNamespaces(this); + this.vMInsights = new operations.VMInsights(this); this.models = models; msRest.addSerializationMixin(this); } diff --git a/lib/services/monitorManagement/lib/operations/index.d.ts b/lib/services/monitorManagement/lib/operations/index.d.ts index 4dd7ac2991..0f84966abf 100644 --- a/lib/services/monitorManagement/lib/operations/index.d.ts +++ b/lib/services/monitorManagement/lib/operations/index.d.ts @@ -3914,7 +3914,7 @@ export interface MetricAlerts { /** - * Retrieve alert rule defintions in a resource group. + * Retrieve alert rule definitions in a resource group. * * @param {string} resourceGroupName The name of the resource group. * @@ -3932,7 +3932,7 @@ export interface MetricAlerts { listByResourceGroupWithHttpOperationResponse(resourceGroupName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>; /** - * Retrieve alert rule defintions in a resource group. + * Retrieve alert rule definitions in a resource group. * * @param {string} resourceGroupName The name of the resource group. * @@ -3970,7 +3970,7 @@ export interface MetricAlerts { /** - * Retrieve an alert rule definiton. + * Retrieve an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -3990,7 +3990,7 @@ export interface MetricAlerts { getWithHttpOperationResponse(resourceGroupName: string, ruleName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>; /** - * Retrieve an alert rule definiton. + * Retrieve an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -4315,7 +4315,7 @@ export interface MetricAlerts { /** - * Delete an alert rule defitiniton. + * Delete an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -4335,7 +4335,7 @@ export interface MetricAlerts { deleteMethodWithHttpOperationResponse(resourceGroupName: string, ruleName: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>; /** - * Delete an alert rule defitiniton. + * Delete an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -4545,7 +4545,7 @@ export interface ScheduledQueryRules { * @param {string} [parameters.source.queryType] Set value to 'ResultCount'. * Possible values include: 'ResultCount' * - * @param {object} [parameters.schedule] Schedule (Frequnecy, Time Window) for + * @param {object} [parameters.schedule] Schedule (Frequency, Time Window) for * rule. Required for action type - AlertingAction * * @param {number} parameters.schedule.frequencyInMinutes frequency (in @@ -4608,7 +4608,7 @@ export interface ScheduledQueryRules { * @param {string} [parameters.source.queryType] Set value to 'ResultCount'. * Possible values include: 'ResultCount' * - * @param {object} [parameters.schedule] Schedule (Frequnecy, Time Window) for + * @param {object} [parameters.schedule] Schedule (Frequency, Time Window) for * rule. Required for action type - AlertingAction * * @param {number} parameters.schedule.frequencyInMinutes frequency (in @@ -5045,3 +5045,72 @@ export interface MetricNamespaces { list(resourceUri: string, callback: ServiceCallback): void; list(resourceUri: string, options: { startTime? : string, customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void; } + +/** + * @class + * VMInsights + * __NOTE__: An instance of this class is automatically created for an + * instance of the MonitorManagementClient. + */ +export interface VMInsights { + + + /** + * Retrieves the VM Insights onboarding status for the specified resource or + * resource scope. + * + * @param {string} resourceUri The fully qualified Azure Resource manager + * identifier of the resource, or scope, whose status to retrieve. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @returns {Promise} A promise is returned + * + * @resolve {HttpOperationResponse} - The deserialized result object. + * + * @reject {Error|ServiceError} - The error object. + */ + getOnboardingStatusWithHttpOperationResponse(resourceUri: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>; + + /** + * Retrieves the VM Insights onboarding status for the specified resource or + * resource scope. + * + * @param {string} resourceUri The fully qualified Azure Resource manager + * identifier of the resource, or scope, whose status to retrieve. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {ServiceCallback} [optionalCallback] - The optional callback. + * + * @returns {ServiceCallback|Promise} If a callback was passed as the last + * parameter then it returns the callback else returns a Promise. + * + * {Promise} A promise is returned. + * + * @resolve {VMInsightsOnboardingStatus} - The deserialized result object. + * + * @reject {Error|ServiceError} - The error object. + * + * {ServiceCallback} optionalCallback(err, result, request, response) + * + * {Error|ServiceError} err - The Error object if an error occurred, null otherwise. + * + * {VMInsightsOnboardingStatus} [result] - The deserialized result object if an error did not occur. + * See {@link VMInsightsOnboardingStatus} for more + * information. + * + * {WebResource} [request] - The HTTP Request object if an error did not occur. + * + * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur. + */ + getOnboardingStatus(resourceUri: string, options?: { customHeaders? : { [headerName: string]: string; } }): Promise; + getOnboardingStatus(resourceUri: string, callback: ServiceCallback): void; + getOnboardingStatus(resourceUri: string, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void; +} diff --git a/lib/services/monitorManagement/lib/operations/index.js b/lib/services/monitorManagement/lib/operations/index.js index a1056fd10a..4e51b12df8 100644 --- a/lib/services/monitorManagement/lib/operations/index.js +++ b/lib/services/monitorManagement/lib/operations/index.js @@ -33,3 +33,4 @@ exports.MetricAlerts = require('./metricAlerts'); exports.MetricAlertsStatus = require('./metricAlertsStatus'); exports.ScheduledQueryRules = require('./scheduledQueryRules'); exports.MetricNamespaces = require('./metricNamespaces'); +exports.VMInsights = require('./vMInsights'); diff --git a/lib/services/monitorManagement/lib/operations/metricAlerts.js b/lib/services/monitorManagement/lib/operations/metricAlerts.js index db26b97be7..4975d783b4 100644 --- a/lib/services/monitorManagement/lib/operations/metricAlerts.js +++ b/lib/services/monitorManagement/lib/operations/metricAlerts.js @@ -149,7 +149,7 @@ function _listBySubscription(options, callback) { } /** - * Retrieve alert rule defintions in a resource group. + * Retrieve alert rule definitions in a resource group. * * @param {string} resourceGroupName The name of the resource group. * @@ -288,7 +288,7 @@ function _listByResourceGroup(resourceGroupName, options, callback) { } /** - * Retrieve an alert rule definiton. + * Retrieve an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -838,7 +838,7 @@ function _update(resourceGroupName, ruleName, parameters, options, callback) { } /** - * Delete an alert rule defitiniton. + * Delete an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -1058,7 +1058,7 @@ class MetricAlerts { } /** - * Retrieve alert rule defintions in a resource group. + * Retrieve alert rule definitions in a resource group. * * @param {string} resourceGroupName The name of the resource group. * @@ -1088,7 +1088,7 @@ class MetricAlerts { } /** - * Retrieve alert rule defintions in a resource group. + * Retrieve alert rule definitions in a resource group. * * @param {string} resourceGroupName The name of the resource group. * @@ -1141,7 +1141,7 @@ class MetricAlerts { } /** - * Retrieve an alert rule definiton. + * Retrieve an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -1173,7 +1173,7 @@ class MetricAlerts { } /** - * Retrieve an alert rule definiton. + * Retrieve an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -1567,7 +1567,7 @@ class MetricAlerts { } /** - * Delete an alert rule defitiniton. + * Delete an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * @@ -1599,7 +1599,7 @@ class MetricAlerts { } /** - * Delete an alert rule defitiniton. + * Delete an alert rule definition. * * @param {string} resourceGroupName The name of the resource group. * diff --git a/lib/services/monitorManagement/lib/operations/scheduledQueryRules.js b/lib/services/monitorManagement/lib/operations/scheduledQueryRules.js index 316fa33aa8..6ce1b07e54 100644 --- a/lib/services/monitorManagement/lib/operations/scheduledQueryRules.js +++ b/lib/services/monitorManagement/lib/operations/scheduledQueryRules.js @@ -45,7 +45,7 @@ const WebResource = msRest.WebResource; * @param {string} [parameters.source.queryType] Set value to 'ResultCount'. * Possible values include: 'ResultCount' * - * @param {object} [parameters.schedule] Schedule (Frequnecy, Time Window) for + * @param {object} [parameters.schedule] Schedule (Frequency, Time Window) for * rule. Required for action type - AlertingAction * * @param {number} parameters.schedule.frequencyInMinutes frequency (in @@ -1015,7 +1015,7 @@ class ScheduledQueryRules { * @param {string} [parameters.source.queryType] Set value to 'ResultCount'. * Possible values include: 'ResultCount' * - * @param {object} [parameters.schedule] Schedule (Frequnecy, Time Window) for + * @param {object} [parameters.schedule] Schedule (Frequency, Time Window) for * rule. Required for action type - AlertingAction * * @param {number} parameters.schedule.frequencyInMinutes frequency (in @@ -1090,7 +1090,7 @@ class ScheduledQueryRules { * @param {string} [parameters.source.queryType] Set value to 'ResultCount'. * Possible values include: 'ResultCount' * - * @param {object} [parameters.schedule] Schedule (Frequnecy, Time Window) for + * @param {object} [parameters.schedule] Schedule (Frequency, Time Window) for * rule. Required for action type - AlertingAction * * @param {number} parameters.schedule.frequencyInMinutes frequency (in diff --git a/lib/services/monitorManagement/lib/operations/vMInsights.js b/lib/services/monitorManagement/lib/operations/vMInsights.js new file mode 100644 index 0000000000..d07aed5261 --- /dev/null +++ b/lib/services/monitorManagement/lib/operations/vMInsights.js @@ -0,0 +1,254 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +'use strict'; + +const msRest = require('ms-rest'); +const msRestAzure = require('ms-rest-azure'); +const WebResource = msRest.WebResource; + +/** + * Retrieves the VM Insights onboarding status for the specified resource or + * resource scope. + * + * @param {string} resourceUri The fully qualified Azure Resource manager + * identifier of the resource, or scope, whose status to retrieve. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {function} callback - The callback. + * + * @returns {function} callback(err, result, request, response) + * + * {Error} err - The Error object if an error occurred, null otherwise. + * + * {object} [result] - The deserialized result object if an error did not occur. + * See {@link VMInsightsOnboardingStatus} for more + * information. + * + * {object} [request] - The HTTP Request object if an error did not occur. + * + * {stream} [response] - The HTTP Response stream if an error did not occur. + */ +function _getOnboardingStatus(resourceUri, options, callback) { + /* jshint validthis: true */ + let client = this.client; + if(!callback && typeof options === 'function') { + callback = options; + options = null; + } + if (!callback) { + throw new Error('callback cannot be null.'); + } + let apiVersion = '2018-11-27-preview'; + // Validate + try { + if (resourceUri === null || resourceUri === undefined || typeof resourceUri.valueOf() !== 'string') { + throw new Error('resourceUri cannot be null or undefined and it must be of type string.'); + } + if (this.client.acceptLanguage !== null && this.client.acceptLanguage !== undefined && typeof this.client.acceptLanguage.valueOf() !== 'string') { + throw new Error('this.client.acceptLanguage must be of type string.'); + } + } catch (error) { + return callback(error); + } + + // Construct URL + let baseUrl = this.client.baseUri; + let requestUrl = baseUrl + (baseUrl.endsWith('/') ? '' : '/') + '{resourceUri}/providers/Microsoft.Insights/vmInsightsOnboardingStatuses/default'; + requestUrl = requestUrl.replace('{resourceUri}', resourceUri); + let queryParameters = []; + queryParameters.push('api-version=' + encodeURIComponent(apiVersion)); + if (queryParameters.length > 0) { + requestUrl += '?' + queryParameters.join('&'); + } + + // Create HTTP transport objects + let httpRequest = new WebResource(); + httpRequest.method = 'GET'; + httpRequest.url = requestUrl; + httpRequest.headers = {}; + // Set Headers + httpRequest.headers['Content-Type'] = 'application/json; charset=utf-8'; + if (this.client.generateClientRequestId) { + httpRequest.headers['x-ms-client-request-id'] = msRestAzure.generateUuid(); + } + if (this.client.acceptLanguage !== undefined && this.client.acceptLanguage !== null) { + httpRequest.headers['accept-language'] = this.client.acceptLanguage; + } + if(options) { + for(let headerName in options['customHeaders']) { + if (options['customHeaders'].hasOwnProperty(headerName)) { + httpRequest.headers[headerName] = options['customHeaders'][headerName]; + } + } + } + httpRequest.body = null; + // Send Request + return client.pipeline(httpRequest, (err, response, responseBody) => { + if (err) { + return callback(err); + } + let statusCode = response.statusCode; + if (statusCode !== 200) { + let error = new Error(responseBody); + error.statusCode = response.statusCode; + error.request = msRest.stripRequest(httpRequest); + error.response = msRest.stripResponse(response); + if (responseBody === '') responseBody = null; + let parsedErrorResponse; + try { + parsedErrorResponse = JSON.parse(responseBody); + if (parsedErrorResponse) { + let internalError = null; + if (parsedErrorResponse.error) internalError = parsedErrorResponse.error; + error.code = internalError ? internalError.code : parsedErrorResponse.code; + error.message = internalError ? internalError.message : parsedErrorResponse.message; + } + if (parsedErrorResponse !== null && parsedErrorResponse !== undefined) { + let resultMapper = new client.models['ResponseWithError']().mapper(); + error.body = client.deserialize(resultMapper, parsedErrorResponse, 'error.body'); + } + } catch (defaultError) { + error.message = `Error "${defaultError.message}" occurred in deserializing the responseBody ` + + `- "${responseBody}" for the default response.`; + return callback(error); + } + return callback(error); + } + // Create Result + let result = null; + if (responseBody === '') responseBody = null; + // Deserialize Response + if (statusCode === 200) { + let parsedResponse = null; + try { + parsedResponse = JSON.parse(responseBody); + result = JSON.parse(responseBody); + if (parsedResponse !== null && parsedResponse !== undefined) { + let resultMapper = new client.models['VMInsightsOnboardingStatus']().mapper(); + result = client.deserialize(resultMapper, parsedResponse, 'result'); + } + } catch (error) { + let deserializationError = new Error(`Error ${error} occurred in deserializing the responseBody - ${responseBody}`); + deserializationError.request = msRest.stripRequest(httpRequest); + deserializationError.response = msRest.stripResponse(response); + return callback(deserializationError); + } + } + + return callback(null, result, httpRequest, response); + }); +} + +/** Class representing a VMInsights. */ +class VMInsights { + /** + * Create a VMInsights. + * @param {MonitorManagementClient} client Reference to the service client. + */ + constructor(client) { + this.client = client; + this._getOnboardingStatus = _getOnboardingStatus; + } + + /** + * Retrieves the VM Insights onboarding status for the specified resource or + * resource scope. + * + * @param {string} resourceUri The fully qualified Azure Resource manager + * identifier of the resource, or scope, whose status to retrieve. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @returns {Promise} A promise is returned + * + * @resolve {HttpOperationResponse} - The deserialized result object. + * + * @reject {Error} - The error object. + */ + getOnboardingStatusWithHttpOperationResponse(resourceUri, options) { + let client = this.client; + let self = this; + return new Promise((resolve, reject) => { + self._getOnboardingStatus(resourceUri, options, (err, result, request, response) => { + let httpOperationResponse = new msRest.HttpOperationResponse(request, response); + httpOperationResponse.body = result; + if (err) { reject(err); } + else { resolve(httpOperationResponse); } + return; + }); + }); + } + + /** + * Retrieves the VM Insights onboarding status for the specified resource or + * resource scope. + * + * @param {string} resourceUri The fully qualified Azure Resource manager + * identifier of the resource, or scope, whose status to retrieve. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {function} [optionalCallback] - The optional callback. + * + * @returns {function|Promise} If a callback was passed as the last parameter + * then it returns the callback else returns a Promise. + * + * {Promise} A promise is returned + * + * @resolve {VMInsightsOnboardingStatus} - The deserialized result object. + * + * @reject {Error} - The error object. + * + * {function} optionalCallback(err, result, request, response) + * + * {Error} err - The Error object if an error occurred, null otherwise. + * + * {object} [result] - The deserialized result object if an error did not occur. + * See {@link VMInsightsOnboardingStatus} for more + * information. + * + * {object} [request] - The HTTP Request object if an error did not occur. + * + * {stream} [response] - The HTTP Response stream if an error did not occur. + */ + getOnboardingStatus(resourceUri, options, optionalCallback) { + let client = this.client; + let self = this; + if (!optionalCallback && typeof options === 'function') { + optionalCallback = options; + options = null; + } + if (!optionalCallback) { + return new Promise((resolve, reject) => { + self._getOnboardingStatus(resourceUri, options, (err, result, request, response) => { + if (err) { reject(err); } + else { resolve(result); } + return; + }); + }); + } else { + return self._getOnboardingStatus(resourceUri, options, optionalCallback); + } + } + +} + +module.exports = VMInsights; diff --git a/lib/services/monitorManagement/package.json b/lib/services/monitorManagement/package.json index cd600e8450..754f7ac8ad 100644 --- a/lib/services/monitorManagement/package.json +++ b/lib/services/monitorManagement/package.json @@ -22,4 +22,4 @@ "bugs": { "url": "https://github.com/azure/azure-sdk-for-node/issues" } -} \ No newline at end of file +}