Skip to content
This repository has been archived by the owner on May 5, 2023. It is now read-only.

[AutoPR monitor/resource-manager] Update ScheduledQueryRule resource documentation to include LogToMetricAction #3680

Merged
merged 1 commit into from
Sep 27, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions lib/services/monitorManagement/lib/models/criteria.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
/*
* 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';

/**
* Specifies the criteria for converting log to metric.
*
*/
class Criteria {
/**
* Create a Criteria.
* @member {string} metricName Name of the metric
* @member {array} [dimensions] List of Dimensions for creating metric
*/
constructor() {
}

/**
* Defines the metadata of Criteria
*
* @returns {object} metadata of Criteria
*
*/
mapper() {
return {
required: false,
serializedName: 'Criteria',
type: {
name: 'Composite',
className: 'Criteria',
modelProperties: {
metricName: {
required: true,
serializedName: 'metricName',
type: {
name: 'String'
}
},
dimensions: {
required: false,
serializedName: 'dimensions',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'DimensionElementType',
type: {
name: 'Composite',
className: 'Dimension'
}
}
}
}
}
}
};
}
}

module.exports = Criteria;
76 changes: 76 additions & 0 deletions lib/services/monitorManagement/lib/models/dimension.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
/*
* 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';

/**
* Specifies the criteria for converting log to metric.
*
*/
class Dimension {
/**
* Create a Dimension.
* @member {string} name Name of the dimension
* @member {array} values List of dimension values
*/
constructor() {
}

/**
* Defines the metadata of Dimension
*
* @returns {object} metadata of Dimension
*
*/
mapper() {
return {
required: false,
serializedName: 'Dimension',
type: {
name: 'Composite',
className: 'Dimension',
modelProperties: {
name: {
required: true,
serializedName: 'name',
type: {
name: 'String'
}
},
operator: {
required: true,
isConstant: true,
serializedName: 'operator',
defaultValue: 'Include',
type: {
name: 'String'
}
},
values: {
required: true,
serializedName: 'values',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'StringElementType',
type: {
name: 'String'
}
}
}
}
}
}
};
}
}

module.exports = Dimension;
55 changes: 50 additions & 5 deletions lib/services/monitorManagement/lib/models/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2210,15 +2210,16 @@ export interface MetricAlertSingleResourceMultipleMetricCriteria extends MetricA
* @constructor
* Specifies the log search query.
*
* @member {string} query 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 {
query: string;
query?: string;
authorizedResources?: string[];
dataSourceId: string;
queryType?: string;
Expand Down Expand Up @@ -2268,14 +2269,16 @@ export interface Action {
* 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.
* @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.
* @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
Expand All @@ -2290,7 +2293,7 @@ export interface LogSearchRuleResource extends Resource {
readonly lastUpdatedTime?: Date;
readonly provisioningState?: string;
source: Source;
schedule: Schedule;
schedule?: Schedule;
action: Action;
}

Expand Down Expand Up @@ -2420,6 +2423,48 @@ export interface AlertingAction extends Action {
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: string;
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 {
metricName: string;
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
*/
export interface LogToMetricAction extends Action {
criteria: Criteria;
}

/**
* @class
* Initializes a new instance of the MetricNamespaceName class.
Expand Down
6 changes: 5 additions & 1 deletion lib/services/monitorManagement/lib/models/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,9 @@ exports.LogMetricTrigger = require('./logMetricTrigger');
exports.TriggerCondition = require('./triggerCondition');
exports.AzNsActionGroup = require('./azNsActionGroup');
exports.AlertingAction = require('./alertingAction');
exports.Dimension = require('./dimension');
exports.Criteria = require('./criteria');
exports.LogToMetricAction = require('./logToMetricAction');
exports.MetricNamespaceName = require('./metricNamespaceName');
exports.MetricNamespace = require('./metricNamespace');
exports.AutoscaleSettingResourceCollection = require('./autoscaleSettingResourceCollection');
Expand Down Expand Up @@ -142,5 +145,6 @@ exports.discriminators = {
'MetricAlertCriteria' : exports.MetricAlertCriteria,
'MetricAlertCriteria.Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria' : exports.MetricAlertSingleResourceMultipleMetricCriteria,
'Action' : exports.Action,
'Action.Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.AlertingAction' : exports.AlertingAction
'Action.Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.AlertingAction' : exports.AlertingAction,
'Action.Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.LogToMetricAction' : exports.LogToMetricAction
};
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,16 @@ class LogSearchRuleResource extends models['Resource'] {
* 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.
* @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.
* @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
Expand Down Expand Up @@ -148,7 +150,7 @@ class LogSearchRuleResource extends models['Resource'] {
}
},
schedule: {
required: true,
required: false,
serializedName: 'properties.schedule',
type: {
name: 'Composite',
Expand Down
73 changes: 73 additions & 0 deletions lib/services/monitorManagement/lib/models/logToMetricAction.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
/*
* 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');

/**
* Specifiy 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
* metric
*/
constructor() {
super();
}

/**
* Defines the metadata of LogToMetricAction
*
* @returns {object} metadata of LogToMetricAction
*
*/
mapper() {
return {
required: false,
serializedName: 'Microsoft.WindowsAzure.Management.Monitoring.Alerts.Models.Microsoft.AppInsights.Nexus.DataContracts.Resources.ScheduledQueryRules.LogToMetricAction',
type: {
name: 'Composite',
polymorphicDiscriminator: {
serializedName: 'odata.type',
clientName: 'odatatype'
},
uberParent: 'Action',
className: 'LogToMetricAction',
modelProperties: {
odatatype: {
required: true,
serializedName: 'odata\\.type',
isPolymorphicDiscriminator: true,
type: {
name: 'String'
}
},
criteria: {
required: true,
serializedName: 'criteria',
type: {
name: 'Composite',
className: 'Criteria'
}
}
}
}
};
}
}

module.exports = LogToMetricAction;
5 changes: 3 additions & 2 deletions lib/services/monitorManagement/lib/models/source.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
class Source {
/**
* Create a Source.
* @member {string} query 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
Expand All @@ -43,7 +44,7 @@ class Source {
className: 'Source',
modelProperties: {
query: {
required: true,
required: false,
serializedName: 'query',
type: {
name: 'String'
Expand Down
Loading