使用CreateConsumerGroup接口创建消费组。当您使用第三方软件、多语言应用、云产品、流式计算框架等通过SDK实时消费日志服务的数据时,无法满足日志服务的实现细节及消费者之间的负载均衡、故障转移(Failover)等,您可以通过消费组消费日志,消费组提供秒级实时消费。
前提条件
您已完成以下操作:
开通日志服务。
初始化日志服务Python SDK。
参数说明
def create_consumer_group(self, project, logstore, consumer_group, timeout, in_order=False):
请求参数
参数 | 类型 | 是否必填 | 说明 |
project | String | 是 | Project的名称。 |
logstore | String | 是 | Logstore的名称。 |
consumer_group | String | 是 | 消费组的名称,在Logstore下必须唯一。 |
timeout | int | 是 | 超时时间。在超时时间段内没有收到心跳,消费者将被删除。单位:秒。 |
in_order | bool | 否 | 同一Shard上消费数据的顺序与数据写入时的顺序严格一致,in_order选项只影响分裂或合并前后的不同Shard间消费的顺序,默认为False。
|
返回参数
请参见CreateConsumerGroup - 创建消费组。
示例代码
from aliyun.log import LogClient
import os
def main():
# 本示例从环境变量中获取AccessKey ID和AccessKey Secret
access_key_id = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID', '')
access_key_secret = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET', '')
# 日志服务的服务接入点
endpoint = "cn-hangzhou.log.aliyuncs.com"
client = LogClient(endpoint, access_key_id, access_key_secret)
project = "ali-test-peoject"
logstore = "test-logstore"
consumer_group = "consumer_group_test"
timeout = 30
in_order = False
try:
response = client.create_consumer_group(project, logstore, consumer_group, timeout, in_order)
response.log_print()
except Exception as e:
print(f"An error occurred while creating the consumer group: {e}")
if __name__ == '__main__':
main()
相关文档
消费日志API接口请参见:
ListConsumerGroup - 查询消费组
CreateConsumerGroup - 创建消费组
DeleteConsumerGroup - 删除消费组
UpdateConsumerGroup - 更新消费者组
GetCheckPoint - 获取指定消费组的消费点
ConsumerGroupUpdateCheckPoint - 更新消费进度
ConsumerGroupHeartBeat - 消费者发送心跳到服务端
更多示例代码,请参见Aliyun Log Python SDK on GitHub。