注册阿里云日志服务

首先来到阿里云日志的控制台,开通服务并新建一个project。project是最大的日志管理划分。阿里云控制台-日志服务 (aliyun.com)

再在该项目下建立一个logstore,即日志库。一个日志库可以理解为一个数据库表,可以在里面查询对应的日志。logstore管理界面首页显示的域名就是一会儿要用的endpoint(接入点)。

去个人空间的AccessKey管理界面,获取一对AccessKeyId和AccessKeySecret备用。

在Python中调用服务

参考aliyun/aliyun-log-python-sdk: Use python to manage, produce and consume data with Aliyun Log Service. (github.com)

首先安装:pip install -U aliyun-log-python-sdk

然后在代码中引入:

from ali.log import *

配置使用:

# ali logging system
logger_config = parser["Logger"]
if int(logger_config["enable"]):
    endpoint = logger_config["endpoint"] # 和服务所在地域有关
    accessKeyId = logger_config["accessKeyId"]
    accessKeySecret = logger_config["accessKeySecret"]
    project = logger_config["project"] # project 名字
    logStore = logger_config["logStore"] 
    source = logger_config["source"] # 可以帮助检索
    topic = logger_config["topic"] # 可以帮助检索
    client = LogClient(endpoint, accessKeyId, accessKeySecret)

    logItem = LogItem()
    logItem.set_time(int(time.time()))
    logItem.set_contents([
        ('success_count_rna', str(success_count_rna)),
        ('success_count_vac', str(success_count_vaccination))
    ] # 必须要是这种键值对的形式,而且必须都是str类型
        logItemList = [logItem]
        client.put_logs(PutLogsRequest(project, logStore, topic, source, logItemList))# 提交日志

日志查询

image-20221118004605270

如图,来到阿里云的日志管理界面。图中三个红框分别代表着检索条件,检索时间,刷新。例如图中的字段检索,就可以直接使用字段名:包含值的方式检索。