azure-arm-insights
Version:
Microsoft Azure Insights Management Client Library for node
167 lines (161 loc) • 4.61 kB
JavaScript
/*
* 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.
*/
;
const models = require('./index');
/**
* @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.
*
*/
class LogProfileResource extends models['Resource'] {
constructor() {
super();
}
/**
* Defines the metadata of LogProfileResource
*
* @returns {object} metadata of LogProfileResource
*
*/
mapper() {
return {
required: false,
serializedName: 'LogProfileResource',
type: {
name: 'Composite',
className: 'LogProfileResource',
modelProperties: {
id: {
required: false,
readOnly: true,
serializedName: 'id',
type: {
name: 'String'
}
},
name: {
required: false,
serializedName: 'name',
type: {
name: 'String'
}
},
type: {
required: false,
readOnly: true,
serializedName: 'type',
type: {
name: 'String'
}
},
location: {
required: true,
serializedName: 'location',
type: {
name: 'String'
}
},
tags: {
required: false,
serializedName: 'tags',
type: {
name: 'Dictionary',
value: {
required: false,
serializedName: 'StringElementType',
type: {
name: 'String'
}
}
}
},
storageAccountId: {
required: false,
serializedName: 'properties.storageAccountId',
type: {
name: 'String'
}
},
serviceBusRuleId: {
required: false,
serializedName: 'properties.serviceBusRuleId',
type: {
name: 'String'
}
},
locations: {
required: true,
serializedName: 'properties.locations',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'StringElementType',
type: {
name: 'String'
}
}
}
},
categories: {
required: false,
serializedName: 'properties.categories',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'StringElementType',
type: {
name: 'String'
}
}
}
},
retentionPolicy: {
required: false,
serializedName: 'properties.retentionPolicy',
type: {
name: 'Composite',
className: 'RetentionPolicy'
}
}
}
}
};
}
}
module.exports = LogProfileResource;