先导入
from aliyun.log import LogClient, GetLogsRequest
import time
然后写一个登入请求阿里云日志的方法
def get_iot_log_from_server(query, project, logstore, endpoint):
# print('区域:' + endpoint)
# 创建日志服务Client。
client = LogClient(endpoint, access_key_id, access_key)
# from_time和to_time表示查询日志的时间范围,UNIX时间戳格式。近15天数据
from_time = int(time.time()) - 2592000
to_time = time.time()
request = GetLogsRequest(project, logstore, from_time, to_time, '', query=query, line=10, offset=0, reverse=True)
return client.get_logs(request)
传参并选择对应的地区进行数据查询
def get_iot_logs(query):
global global_server
# 返回查询结果。
if global_server == 0 or global_server == 1:
response1 = get_iot_log_from_server(query, project_1, logstore_1, endpoint_1)
if len(response1.get_logs()) > 0:
global_server = 1
return responseDL
if global_server == 0 or global_server == 2:
response2 = get_iot_log_from_server(query, projproject_2, logstore2, endpoint_2)
if len(response2.get_logs()) > 0:
global_server = 2
return responseXJP
if global_server == 0 or global_server == 3:
response3 = get_iot_log_from_server(query, project_3, logstore_3, endpoint_3)
if len(response3.get_logs()) > 0:
global_server = 3
return responseMX
return None
用于重置全局变量
def reset_server():
global global_server
global_server = 0
判定地区
def server():
if global_server == 1:
print(Fore.GREEN + '\n【地区1】')
elif global_server == 2:
print(Fore.GREEN + '\n【地区2】')
elif global_server == 3:
print(Fore.GREEN + '\n【地区3】')
else:
print('全局变量global_server值异常')
开启我们的魔法时代
if __name__ == '__main__':
while 1:
data = input('需要查询的内容')
reset_server()
get_log = get_iot_logs(data_1)
print(get_log)
server()
get_log = get_iot_logs(data_2)
print(get_log)
server()
摸索良久,凑出一个解决方案,记录于此