The ALIYUN::Config::ReportTemplate type creates a compliance report template.
Syntax
{
"Type": "ALIYUN::Config::ReportTemplate",
"Properties": {
"ReportTemplateName": String,
"ReportGranularity": String,
"ReportScope": List,
"ReportFileFormats": String,
"ReportLanguage": String,
"ReportTemplateDescription": String,
"SubscriptionFrequency": String
}
}Properties
Parameter | Type | Required | Editable | Description | Constraints |
ReportTemplateName | String | Yes | Yes | The name of the report template. | None |
ReportFileFormats | String | No | Yes | The file format of the report. | Valid value:
|
ReportGranularity | String | No | Yes | The report aggregation granularity. | None |
ReportLanguage | String | No | Yes | The language of the report. | Valid values:
|
ReportScope | List | No | No | The scope of the report. | An |
ReportTemplateDescription | String | No | Yes | The description of the report template. | None |
SubscriptionFrequency | String | No | Yes | The subscription frequency of the report. | If this field is specified, it must be a cron expression in Quartz format. Format: Second, Minute, Hour, Day of month, Month, Day of week. The following are examples of common cron expressions: - Runs at 00:00 every day: - Runs at 15:30 every Monday: - Runs at 02:00 on the first day of each month: Where: - - Use the - Note: The trigger time is in the UTC+8 time zone. You can convert the cron expression based on your time zone. Note: The system triggers notifications on a best-effort basis according to the cron schedule. A template is limited to a maximum of one notification per day. |
ReportScope syntax
"ReportScope": [
{
"MatchType": String,
"Value": String,
"Key": String
}
]ReportScope properties
Parameter | Type | Required | Editable | Description | Constraints |
Key | String | No | Yes | The key of the report scope. | Valid values:
|
MatchType | String | No | Yes | The match type. | Valid value:
|
Value | String | No | Yes | The value of the report scope. | Items in the Value property are evaluated by using an |
Return values
Fn::GetAtt
ReportGranularity: The report aggregation granularity.
ReportTemplateId: The report template ID.
ReportScope: The scope of the report. An
ANDlogic is applied between multiple key-value pairs.ReportFileFormats: The file format of the report. The only valid value is
excel.SubscriptionFrequency: The subscription frequency of the report. If this field is specified, it is a cron expression in Quartz format.
ReportTemplateName: The name of the report template.
ReportLanguage: The language of the report. Valid values are
zh-CNanden-US.ReportTemplateDescription: The description of the report template.
Examples
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
ReportFileFormats:
AllowedValues:
- excel
Description:
en: The file format of the report. The only valid value is `excel`.
Required: false
Type: String
ReportGranularity:
Description:
en: The report aggregation granularity.
Required: false
Type: String
ReportLanguage:
Description:
en: The language of the report. Valid values are `zh-CN` and `en-US`.
Required: false
Type: String
ReportScope:
AssociationProperty: List[Parameters]
AssociationPropertyMetadata:
Parameters:
Key:
AllowedValues:
- AggregatorId
- CompliancePackId
- RuleId
Description:
en: 'The key of the report scope. Valid values: `AggregatorId`, `CompliancePackId`,
and `RuleId`.'
Required: false
Type: String
MatchType:
AllowedValues:
- In
Description:
en: The match type. The only valid value is `In`.
Required: false
Type: String
Value:
Description:
en: The value of the report scope. The items in the value are evaluated
with an OR logic. For example, you can specify multiple rule IDs as a
comma-separated string.
Required: false
Type: String
Description:
en: The scope of the report. An AND logic is applied between multiple key-value
pairs.
MaxLength: 2
MinLength: 0
Required: false
Type: Json
ReportTemplateDescription:
Description:
en: The description of the report template.
Required: false
Type: String
ReportTemplateName:
Description:
en: The name of the report template.
Required: true
Type: String
SubscriptionFrequency:
Description:
en: |
The subscription frequency of the report, specified as a cron expression in Quartz format.
Format: Second, Minute, Hour, Day of month, Month, Day of week.
Examples:
- `0 0 0 * * ?`: Run at 00:00 every day.
- `0 30 15 ? * MON`: Run at 15:30 every Monday.
- `0 0 2 1 * ?`: Run at 02:00 on the first day of each month.
Note: The trigger time is in the UTC+8 time zone. A template is limited to a maximum of one notification per day.
Required: false
Type: String
Resources:
ExtensionResource:
Properties:
ReportFileFormats:
Ref: ReportFileFormats
ReportGranularity:
Ref: ReportGranularity
ReportLanguage:
Ref: ReportLanguage
ReportScope:
Ref: ReportScope
ReportTemplateDescription:
Ref: ReportTemplateDescription
ReportTemplateName:
Ref: ReportTemplateName
SubscriptionFrequency:
Ref: SubscriptionFrequency
Type: ALIYUN::Config::ReportTemplate
Outputs:
ReportFileFormats:
Description: The file format of the report. The only valid value is `excel`.
Value:
Fn::GetAtt:
- ExtensionResource
- ReportFileFormats
ReportGranularity:
Description: The report aggregation granularity.
Value:
Fn::GetAtt:
- ExtensionResource
- ReportGranularity
ReportLanguage:
Description: The language of the report. Valid values are `zh-CN` and `en-US`.
Value:
Fn::GetAtt:
- ExtensionResource
- ReportLanguage
ReportScope:
Description: The scope of the report. An AND logic is applied between multiple key-value
pairs.
Value:
Fn::GetAtt:
- ExtensionResource
- ReportScope
ReportTemplateDescription:
Description: The description of the report template.
Value:
Fn::GetAtt:
- ExtensionResource
- ReportTemplateDescription
ReportTemplateId:
Description: The report template ID.
Value:
Fn::GetAtt:
- ExtensionResource
- ReportTemplateId
ReportTemplateName:
Description: The name of the report template.
Value:
Fn::GetAtt:
- ExtensionResource
- ReportTemplateName
SubscriptionFrequency:
Description: The subscription frequency of the report. If this field is specified,
it is a cron expression in Quartz format.
Value:
Fn::GetAtt:
- ExtensionResource
- SubscriptionFrequency
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"ReportGranularity": {
"Type": "String",
"Description": {
"en": "The report aggregation granularity."
},
"Required": false
},
"ReportScope": {
"AssociationPropertyMetadata": {
"Parameters": {
"MatchType": {
"Type": "String",
"Description": {
"en": "The match type. The only valid value is `In`."
},
"AllowedValues": [
"In"
],
"Required": false
},
"Value": {
"Type": "String",
"Description": {
"en": "The value of the report scope. The items in the value are evaluated with an OR logic. For example, you can specify multiple rule IDs as a comma-separated string."
},
"Required": false
},
"Key": {
"Type": "String",
"Description": {
"en": "The key of the report scope. Valid values: `AggregatorId`, `CompliancePackId`, and `RuleId`."
},
"AllowedValues": [
"AggregatorId",
"CompliancePackId",
"RuleId"
],
"Required": false
}
}
},
"Type": "Json",
"AssociationProperty": "List[Parameters]",
"Description": {
"en": "The scope of the report. An AND logic is applied between multiple key-value pairs."
},
"Required": false,
"MinLength": 0,
"MaxLength": 2
},
"ReportFileFormats": {
"Type": "String",
"Description": {
"en": "The file format of the report. The only valid value is `excel`."
},
"AllowedValues": [
"excel"
],
"Required": false
},
"SubscriptionFrequency": {
"Type": "String",
"Description": {
"en": "The subscription frequency of the report, specified as a cron expression in Quartz format.\n\nFormat: Second, Minute, Hour, Day of month, Month, Day of week.\n\nExamples:\n- `0 0 0 * * ?`: Run at 00:00 every day.\n- `0 30 15 ? * MON`: Run at 15:30 every Monday.\n- `0 0 2 1 * ?`: Run at 02:00 on the first day of each month.\n\nNote: The trigger time is in the UTC+8 time zone. A template is limited to a maximum of one notification per day."
},
"Required": false
},
"ReportTemplateName": {
"Type": "String",
"Description": {
"en": "The name of the report template."
},
"Required": true
},
"ReportLanguage": {
"Type": "String",
"Description": {
"en": "The language of the report. Valid values are `zh-CN` and `en-US`."
},
"Required": false
},
"ReportTemplateDescription": {
"Type": "String",
"Description": {
"en": "The description of the report template."
},
"Required": false
}
},
"Resources": {
"ExtensionResource": {
"Type": "ALIYUN::Config::ReportTemplate",
"Properties": {
"ReportGranularity": {
"Ref": "ReportGranularity"
},
"ReportScope": {
"Ref": "ReportScope"
},
"ReportFileFormats": {
"Ref": "ReportFileFormats"
},
"SubscriptionFrequency": {
"Ref": "SubscriptionFrequency"
},
"ReportTemplateName": {
"Ref": "ReportTemplateName"
},
"ReportLanguage": {
"Ref": "ReportLanguage"
},
"ReportTemplateDescription": {
"Ref": "ReportTemplateDescription"
}
}
}
},
"Outputs": {
"ReportGranularity": {
"Description": "The report aggregation granularity.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ReportGranularity"
]
}
},
"ReportTemplateId": {
"Description": "The report template ID.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ReportTemplateId"
]
}
},
"ReportScope": {
"Description": "The scope of the report. An AND logic is applied between multiple key-value pairs.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ReportScope"
]
}
},
"ReportFileFormats": {
"Description": "The file format of the report. The only valid value is `excel`.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ReportFileFormats"
]
}
},
"SubscriptionFrequency": {
"Description": "The subscription frequency of the report. If this field is specified, it is a cron expression in Quartz format.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"SubscriptionFrequency"
]
}
},
"ReportTemplateName": {
"Description": "The name of the report template.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ReportTemplateName"
]
}
},
"ReportLanguage": {
"Description": "The language of the report. Valid values are `zh-CN` and `en-US`.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ReportLanguage"
]
}
},
"ReportTemplateDescription": {
"Description": "The description of the report template.",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ReportTemplateDescription"
]
}
}
}
}