scheduled_queries
Creates, updates, deletes or gets a scheduled_query
resource or lists scheduled_queries
in a region
Overview
Name | scheduled_queries |
Type | Resource |
Description | The AWS::Timestream::ScheduledQuery resource creates a Timestream Scheduled Query. |
Id | aws.timestream.scheduled_queries |
Fields
Name | Datatype | Description |
---|---|---|
arn | string | Amazon Resource Name of the scheduled query that is generated upon creation. |
scheduled_query_name | string | The name of the scheduled query. Scheduled query names must be unique within each Region. |
query_string | string | The query string to run. Parameter names can be specified in the query string @ character followed by an identifier. The named Parameter @scheduled_runtime is reserved and can be used in the query to get the time at which the query is scheduled to run. The timestamp calculated according to the ScheduleConfiguration parameter, will be the value of @scheduled_runtime paramater for each query run. For example, consider an instance of a scheduled query executing on 2021-12-01 00:00:00. For this instance, the @scheduled_runtime parameter is initialized to the timestamp 2021-12-01 00:00:00 when invoking the query. |
schedule_configuration | object | Configuration for when the scheduled query is executed. |
notification_configuration | object | Notification configuration for the scheduled query. A notification is sent by Timestream when a query run finishes, when the state is updated or when you delete it. |
client_token | string | Using a ClientToken makes the call to CreateScheduledQuery idempotent, in other words, making the same request repeatedly will produce the same result. Making multiple identical CreateScheduledQuery requests has the same effect as making a single request. If CreateScheduledQuery is called without a ClientToken, the Query SDK generates a ClientToken on your behalf. After 8 hours, any request with the same ClientToken is treated as a new request. |
scheduled_query_execution_role_arn | string | The ARN for the IAM role that Timestream will assume when running the scheduled query. |
target_configuration | object | Configuration of target store where scheduled query results are written to. |
error_report_configuration | object | Configuration for error reporting. Error reports will be generated when a problem is encountered when writing the query results. |
kms_key_id | string | The Amazon KMS key used to encrypt the scheduled query resource, at-rest. If the Amazon KMS key is not specified, the scheduled query resource will be encrypted with a Timestream owned Amazon KMS key. To specify a KMS key, use the key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix the name with alias/. If ErrorReportConfiguration uses SSE_KMS as encryption type, the same KmsKeyId is used to encrypt the error report at rest. |
sq_name | string | The name of the scheduled query. Scheduled query names must be unique within each Region. |
sq_query_string | string | The query string to run. Parameter names can be specified in the query string @ character followed by an identifier. The named Parameter @scheduled_runtime is reserved and can be used in the query to get the time at which the query is scheduled to run. The timestamp calculated according to the ScheduleConfiguration parameter, will be the value of @scheduled_runtime paramater for each query run. For example, consider an instance of a scheduled query executing on 2021-12-01 00:00:00. For this instance, the @scheduled_runtime parameter is initialized to the timestamp 2021-12-01 00:00:00 when invoking the query. |
sq_schedule_configuration | string | Configuration for when the scheduled query is executed. |
sq_notification_configuration | string | Notification configuration for the scheduled query. A notification is sent by Timestream when a query run finishes, when the state is updated or when you delete it. |
sq_scheduled_query_execution_role_arn | string | The ARN for the IAM role that Timestream will assume when running the scheduled query. |
sq_target_configuration | string | Configuration of target store where scheduled query results are written to. |
sq_error_report_configuration | string | Configuration for error reporting. Error reports will be generated when a problem is encountered when writing the query results. |
sq_kms_key_id | string | The Amazon KMS key used to encrypt the scheduled query resource, at-rest. If the Amazon KMS key is not specified, the scheduled query resource will be encrypted with a Timestream owned Amazon KMS key. To specify a KMS key, use the key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix the name with alias/. If ErrorReportConfiguration uses SSE_KMS as encryption type, the same KmsKeyId is used to encrypt the error report at rest. |
tags | array | A list of key-value pairs to label the scheduled query. |
region | string | AWS region. |
Methods
Name | Accessible by | Required Params |
---|---|---|
create_resource | INSERT | QueryString, ScheduleConfiguration, NotificationConfiguration, ScheduledQueryExecutionRoleArn, ErrorReportConfiguration, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT
examples
Gets all scheduled_queries
in a region.
SELECT
region,
arn,
scheduled_query_name,
query_string,
schedule_configuration,
notification_configuration,
client_token,
scheduled_query_execution_role_arn,
target_configuration,
error_report_configuration,
kms_key_id,
sq_name,
sq_query_string,
sq_schedule_configuration,
sq_notification_configuration,
sq_scheduled_query_execution_role_arn,
sq_target_configuration,
sq_error_report_configuration,
sq_kms_key_id,
tags
FROM aws.timestream.scheduled_queries
WHERE region = 'us-east-1';
Gets all properties from an individual scheduled_query
.
SELECT
region,
arn,
scheduled_query_name,
query_string,
schedule_configuration,
notification_configuration,
client_token,
scheduled_query_execution_role_arn,
target_configuration,
error_report_configuration,
kms_key_id,
sq_name,
sq_query_string,
sq_schedule_configuration,
sq_notification_configuration,
sq_scheduled_query_execution_role_arn,
sq_target_configuration,
sq_error_report_configuration,
sq_kms_key_id,
tags
FROM aws.timestream.scheduled_queries
WHERE region = 'us-east-1' AND data__Identifier = '<Arn>';
INSERT
example
Use the following StackQL query and manifest file to create a new scheduled_query
resource, using stack-deploy
.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO aws.timestream.scheduled_queries (
QueryString,
ScheduleConfiguration,
NotificationConfiguration,
ScheduledQueryExecutionRoleArn,
ErrorReportConfiguration,
region
)
SELECT
'{{ QueryString }}',
'{{ ScheduleConfiguration }}',
'{{ NotificationConfiguration }}',
'{{ ScheduledQueryExecutionRoleArn }}',
'{{ ErrorReportConfiguration }}',
'{{ region }}';
/*+ create */
INSERT INTO aws.timestream.scheduled_queries (
ScheduledQueryName,
QueryString,
ScheduleConfiguration,
NotificationConfiguration,
ClientToken,
ScheduledQueryExecutionRoleArn,
TargetConfiguration,
ErrorReportConfiguration,
KmsKeyId,
Tags,
region
)
SELECT
'{{ ScheduledQueryName }}',
'{{ QueryString }}',
'{{ ScheduleConfiguration }}',
'{{ NotificationConfiguration }}',
'{{ ClientToken }}',
'{{ ScheduledQueryExecutionRoleArn }}',
'{{ TargetConfiguration }}',
'{{ ErrorReportConfiguration }}',
'{{ KmsKeyId }}',
'{{ Tags }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: scheduled_query
props:
- name: ScheduledQueryName
value: '{{ ScheduledQueryName }}'
- name: QueryString
value: '{{ QueryString }}'
- name: ScheduleConfiguration
value:
ScheduleExpression: '{{ ScheduleExpression }}'
- name: NotificationConfiguration
value:
SnsConfiguration:
TopicArn: '{{ TopicArn }}'
- name: ClientToken
value: '{{ ClientToken }}'
- name: ScheduledQueryExecutionRoleArn
value: '{{ ScheduledQueryExecutionRoleArn }}'
- name: TargetConfiguration
value:
TimestreamConfiguration:
DatabaseName: '{{ DatabaseName }}'
TableName: '{{ TableName }}'
TimeColumn: '{{ TimeColumn }}'
DimensionMappings:
- Name: '{{ Name }}'
DimensionValueType: '{{ DimensionValueType }}'
MultiMeasureMappings:
TargetMultiMeasureName: '{{ TargetMultiMeasureName }}'
MultiMeasureAttributeMappings:
- SourceColumn: '{{ SourceColumn }}'
MeasureValueType: '{{ MeasureValueType }}'
TargetMultiMeasureAttributeName: '{{ TargetMultiMeasureAttributeName }}'
MixedMeasureMappings:
- MeasureName: '{{ MeasureName }}'
SourceColumn: '{{ SourceColumn }}'
TargetMeasureName: '{{ TargetMeasureName }}'
MeasureValueType: '{{ MeasureValueType }}'
MultiMeasureAttributeMappings: null
MeasureNameColumn: '{{ MeasureNameColumn }}'
- name: ErrorReportConfiguration
value:
S3Configuration:
BucketName: '{{ BucketName }}'
ObjectKeyPrefix: '{{ ObjectKeyPrefix }}'
EncryptionOption: '{{ EncryptionOption }}'
- name: KmsKeyId
value: '{{ KmsKeyId }}'
- name: Tags
value:
- Key: '{{ Key }}'
Value: '{{ Value }}'
DELETE
example
/*+ delete */
DELETE FROM aws.timestream.scheduled_queries
WHERE data__Identifier = '<Arn>'
AND region = 'us-east-1';
Permissions
To operate on the scheduled_queries
resource, the following permissions are required:
Create
timestream:CreateScheduledQuery,
timestream:DescribeEndpoints
Read
timestream:DescribeScheduledQuery,
timestream:ListTagsForResource,
timestream:DescribeEndpoints
Update
timestream:UpdateScheduledQuery,
timestream:TagResource,
timestream:UntagResource,
timestream:DescribeEndpoints
Delete
timestream:DeleteScheduledQuery,
timestream:DescribeEndpoints
List
timestream:ListScheduledQueries,
timestream:DescribeEndpoints