このタスクについて
Log Service は、Logstore 内のログデータと RDS データベースのクエリ結合をサポートし、クエリ結果をRDS に保存します。
手順
例
# encoding: utf-8
from __future__ import print_function
From aliyun. log import *
from aliyun.log.util import base64_encodestring
from random import randint
import time
Import OS
from datetime import datetime
endpoint = os.environ.get('ALIYUN_LOG_SAMPLE_ENDPOINT', 'cn-chengdu.log.aliyuncs.com')
Accesskeyid = OS. internon. Get ('aliyun _ Porter ','')
accessKey = os.environ.get('ALIYUN_LOG_SAMPLE_ACCESSKEY', '')
logstore = os.environ.get('ALIYUN_LOG_SAMPLE_LOGSTORE', '')
Project = "Ali-yunlei-Chengdu"
Client = logclient (endpoint, accesskeyid, accesskey, token)
#Create external store
res = client.create_external_store(project,ExternalStoreConfig("rds_store","region","rds-vpc","vpc id","instance id","instance ip","instance port","username","paassword","database","data table"));
res.log_print()
#Get external store details
res = client.get_external_store(project,"rds_store");
res.log_print();
res = client.list_external_store(project,"");
res.log_print();
# JOIN query
req = GetLogStoreLogsRequest(project,logstore,From,To,"","select count(1) from "+ logstore +" s join meta m on s.projectid = cast(m.ikey as varchar)");
res = client.get_logs(req)
res.log_print();
# Query results insert into RDS
req = GetLogStoreLogsRequest(project,logstore,From,To,""," insert into rds_store select count(1) from "+ logstore );
res = client.get_logs(req)
res.log_print();