ALIYUN::ACTIONTRAIL::Trail は、Simple Log Service または Object Storage Service (OSS) にイベントを配信するための証跡を作成するために使用されます。
構文
{
"Type": "ALIYUN::ACTIONTRAIL::Trail",
"Properties": {
"Name": String,
"OssBucketName": String,
"RoleName": String,
"OssKeyPrefix": String,
"EventRW": String,
"SlsProjectArn": String,
"SlsWriteRoleArn": String
}
} プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Name | String | はい | いいえ | 証跡名。 | 名前は 6 ~ 36 文字で、英字、数字、ハイフン (-)、アンダースコア (_) を使用できます。名前は英字で始める必要があります。 説明 名前は Alibaba Cloud アカウント内で一意である必要があります。 |
EventRW | String | いいえ | はい | 配信するイベントの読み取り/書き込みタイプ。 | 有効な値:
|
OssBucketName | String | いいえ | はい | イベントを配信する OSS バケットの名前。 | 名前は 3 ~ 63 文字で、小英字、数字、ハイフン (-) を使用できます。名前は小英字または数字で始める必要があります。 説明
|
OssKeyPrefix | String | いいえ | はい | 配信されたイベントを OSS バケットに格納するオブジェクトの名前のプレフィックス。 | プレフィックスは 6 ~ 32 文字で、英字、数字、ハイフン (-)、スラッシュ (/)、アンダースコア (_) を使用できます。プレフィックスは英字で始める必要があります。 |
RoleName | String | いいえ | はい | ActionTrail によって引き受けられるサービスリンクロール。 | デフォルト値: AliyunServiceRoleForActionTrail。 |
SlsProjectArn | String | いいえ | はい | イベントを配信する Simple Log Service プロジェクトの Alibaba Cloud Resource Name (ARN)。 | Simple Log Service でプロジェクトとログストアが作成されていることを確認してください。ログストアの名前は、 詳細については、「プロジェクトの作成」および「ログストアの作成」をご参照ください。 説明 OssBucketName と SlsProjectArn の少なくとも 1 つを指定する必要があります。 |
SlsWriteRoleArn | String | いいえ | はい | ActionTrail が Simple Log Service プロジェクトにイベントを配信するために引き受けるロールの ARN。 | なし。 |
戻り値
Fn::GetAtt
Name: 証跡名。
例
YAML 形式
ROSTemplateFormatVersion: '2015-09-01'
Parameters: {}
Resources:
Role:
Type: ALIYUN::RAM::Role
Properties:
RoleName: TestRole
Policies:
- PolicyName: # ポリシー名
Fn::Sub: ActionTrailPolicy-${ALIYUN::StackId}
PolicyDocument: # ポリシードキュメント
Version: '1'
Statement:
- Action: # アクション
- oss:GetBucketLocation
- oss:ListObjects
- oss:PutObject
Resource: # リソース
- '*'
Effect: Allow
- Action: # アクション
- log:PostLogStoreLogs
- log:CreateLogstore
- Log:GetLogstore
Resource: # リソース
- '*'
Effect: Allow
- Action: # アクション
- mns:PublishMessage
Resource: # リソース
- '*'
Effect: Allow
AssumeRolePolicyDocument: # 引き受けロールポリシードキュメント
Version: '1'
Statement:
- Action: sts:AssumeRole
Effect: Allow
Principal: # プリンシパル
Service:
- actiontrail.aliyuncs.com
Bucket:
Type: ALIYUN::OSS::Bucket
Properties:
AccessControl: private
BucketName: MyTestBucket
DeletionForce: true
SlsProject:
Type: ALIYUN::SLS::Project
Properties:
Name: DemoSls
SlsLogStore:
Type: ALIYUN::SLS::Logstore
DependsOn: SlsProject
Properties:
LogstoreName: ActiontrailTestTrail
PreserveStorage: true
ProjectName:
Fn::GetAtt:
- SlsProject
- Name
AppendMeta: true
MaxSplitShard: 64
AutoSplit: true
EnableTracking: false
ShardCount: 2
Trail:
DependsOn:
- Role
- Bucket
- SlsLogStore
Type: ALIYUN::ACTIONTRAIL::Trail
Properties:
SlsProjectArn:
Fn::Sub: acs:log:${ALIYUN::Region}::project/DemoSls
RoleName:
Fn::GetAtt:
- Role
- RoleName
EventRW: All
OssKeyPrefix: TestFile
OssBucketName:
Fn::GetAtt:
- Bucket
- Name
SlsWriteRoleArn:
Fn::Sub: acs:ram::${ALIYUN::TenantId}:role/${Role.RoleName}
Name: TestTrail
TrailLogging:
Type: ALIYUN::ACTIONTRAIL::TrailLogging
Properties:
Name:
Fn::GetAtt:
- Trail
- Name
Enable:
Ref: Enable
Outputs:
Name:
Value:
Fn::GetAtt:
- Trail
- NameJSON 形式
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
},
"Resources": {
"Role": {
"Type": "ALIYUN::RAM::Role",
"Properties": {
"RoleName": "TestRole",
"Policies": [
{
"PolicyName": {
"Fn::Sub": "ActionTrailPolicy-${ALIYUN::StackId}"
},
"PolicyDocument": {
"Version": "1",
"Statement": [
{
"Action": [
"oss:GetBucketLocation",
"oss:ListObjects",
"oss:PutObject"
],
"Resource": [
"*"
],
"Effect": "Allow"
},
{
"Action": [
"log:PostLogStoreLogs",
"log:CreateLogstore",
"Log:GetLogstore"
],
"Resource": [
"*"
],
"Effect": "Allow"
},
{
"Action": [
"mns:PublishMessage"
],
"Resource": [
"*"
],
"Effect": "Allow"
}
]
}
}
],
"AssumeRolePolicyDocument": {
"Version": "1",
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"actiontrail.aliyuncs.com"
]
}
}
]
}
}
},
"Bucket": {
"Type": "ALIYUN::OSS::Bucket",
"Properties": {
"AccessControl": "private",
"BucketName": "MyTestBucket",
"DeletionForce": true
}
},
"SlsProject": {
"Type": "ALIYUN::SLS::Project",
"Properties": {
"Name": "DemoSls"
}
},
"SlsLogStore": {
"Type": "ALIYUN::SLS::Logstore",
"DependsOn": "SlsProject",
"Properties": {
"LogstoreName": "ActiontrailTestTrail",
"PreserveStorage": true,
"ProjectName": {
"Fn::GetAtt": [
"SlsProject",
"Name"
]
},
"AppendMeta": true,
"MaxSplitShard": 64,
"AutoSplit": true,
"EnableTracking": false,
"ShardCount": 2
}
},
"Trail": {
"DependsOn": [
"Role",
"Bucket",
"SlsLogStore"
],
"Type": "ALIYUN::ACTIONTRAIL::Trail",
"Properties": {
"SlsProjectArn": {
"Fn::Sub": "acs:log:${ALIYUN::Region}::project/DemoSls"
},
"RoleName": {
"Fn::GetAtt": [
"Role",
"RoleName"
]
},
"EventRW": "All",
"OssKeyPrefix": "TestFile",
"OssBucketName": {
"Fn::GetAtt": [
"Bucket",
"Name"
]
},
"SlsWriteRoleArn": {
"Fn::Sub": "acs:ram::${ALIYUN::TenantId}:role/${Role.RoleName}"
},
"Name": "TestTrail"
}
},
"TrailLogging": {
"Type": "ALIYUN::ACTIONTRAIL::TrailLogging",
"Properties": {
"Name": {
"Fn::GetAtt": [
"Trail",
"Name"
]
},
"Enable": {
"Ref": "Enable"
}
}
}
},
"Outputs": {
"Name": {
"Value": {
"Fn::GetAtt": [
"Trail",
"Name"
]
}
}
}
}