在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何把创建ECS作为触发器来触发函数计算

115次阅读
没有评论

共计 2190 个字符,预计需要花费 6 分钟才能阅读完成。

这篇文章给大家介绍如何把创建 ECS 作为触发器来触发函数计算,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

问题描述

函数计算虽然不支持直接集成到 ECS 的管控事件上,但是函数计算本身是支持日志服务作为触发器的。即可以配置日志服务中 logstore 里的增强日志作为触发器来触发函数计算服务中的函数,同时可以传递 project 和 logstore 的 name 以及 beginCursor/endCursor 等相关日志信息作为 event 到函数计算服务,供其做二次处理和加工。

这样相当于提供了一个思路,即我们可以把创建 ECS 或者其他相关的操作想办法作为日志投递到日志服务中,这样就可以触发相关的函数计算服务了。

那么这种方法是什么呢?一种可行的方式是操作审计服务。操作审计可以记录所有 API 级别的用户记录,当然也包括 CreateInstance 这类操作。

所以整个流程就变成了:
开通操作审计服务 - 配置操作审计跟踪,将 event 投递到日志服务中 - 配置日志服务作为函数计算触发器并传递日志 - 触发函数

举个栗子

开通操作审计服务后,创建一个日志跟踪

然后创建一个实例,可以看到操作审计记录了这个行为

同时日志服务里也找到了这个行为记录

接下来我们可以配置一个函数计算服务,具体的过程可以参考文中最后的文档,这里强调下配置触发器的配置,这里要注意的是图中有关 logstore 的配置,上面的是触发日志的 logstore,下面的是写日志的 lostore,不能搞混。

然后复制进去一段代码,这段代码的核心是拿到触发 event 的具体日志信息,然后写到函数计算本地的日志库里。

# -*- coding: utf-8 -*-
import logging
import json
from aliyun.log import LogClient
from time import time
def logClient(endpoint, creds):
 logger = logging.getLogger()
 logger.info(creds info)
 logger.info(creds.access_key_id)
 logger.info(creds.access_key_secret)
 logger.info(creds.security_token)
 accessKeyId =  XXX 
 accessKey =  XXX 
 client = LogClient(endpoint, accessKeyId, accessKey)
 return client
def handler(event, context):
 logger = logging.getLogger()
 logger.info(start deal SLS data)
 logger.info(event.decode().encode())
 info_arr = json.loads(event.decode())
 fetchdata(info_arr[ source],context)
 return  hello world 
def fetchdata(event,context):
 logger = logging.getLogger()
 endpoint = event[endpoint]
 creds = context.credentials
 client = logClient(endpoint, creds)
 if client == None :
 logger.info(client creat failed)
 return False
 project = event[projectName]
 logstore = event[logstoreName]
 start_cursor = event[beginCursor]
 end_cursor = event[endCursor]
 loggroup_count = 10
 shard_id = event[shardId]
 while True:
 res = client.pull_logs(project, logstore, shard_id, start_cursor, loggroup_count, end_cursor)
 res.log_print()
 next_cursor = res.get_next_cursor()
 if next_cursor == start_cursor :
 break
 start_cursor = next_cursor
 #log_data = res.get_loggroup_json_list()
 return True

以上配置完成后,一个控制台创建 ECS(当然也包括其他可以被审计的行为) 的行为就可以用来触发函数计算的函数了。

结果

我们把刚才创建的实例再释放掉,看到操作审计的日志

然后我们在函数计算的日志库里也看到了对应的日志,这个日志是刚才操作审计记录的日志传递给函数计算并记录的。在真正的应用场景下,客户可以拿到这个日志中的相关信息做更多操作。

关于如何把创建 ECS 作为触发器来触发函数计算就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-16发表,共计2190字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 中文字幕成人免费视频 | 美女网站黄页 | 久久精品国产亚洲av高清漫画 | 欧美一级大片免费看 | 精品一区二区三区视频日产 | 成人性欧美丨区二区三区 | 久久er99热精品一区二区 | 神马影院午夜片 | 午夜性刺激免费看视频 | 手机在线观看一级午夜片 | 女人脱了内裤趴开腿让男躁 | 国产精品日本一区二区不卡视频 | 午夜久久久久久 | 国产成人亚洲欧美三区综合 | 国产aⅴ无码专区亚洲av麻豆 | a一级毛片视频免费看 | 国产精品国产亚洲区艳妇糸列短篇 | 中国在线观看www视频 | 色偷偷一区二区无码视频 | 小荡货好紧好爽奶头大视频 | 18禁止进入1000部高潮网站 | 高潮抽搐潮喷毛片在线播放 | 午夜肉伦伦影院 | 99热这里有免费国内精品 | 成人在线综合网 | 国产真实伦视频在线视频 | 天躁夜夜躁狼狠躁 | 国产精品久久永久免费 | 亚洲一区二区三区日本久久九 | 法国啄木乌av片在线播放 | 久久午夜伦鲁片免费无码 | 国产不卡视频一区二区在线观看 | 欧美99热| 99蜜臀噜噜噜在线视频观看 | 国产乱人伦偷精品视频下 | 黄色毛片在线看 | 成人性毛片| 久久国产精品网 | 亚洲精品久久久久久久不卡四虎 | 各种少妇正面着bbw撒尿视频 | 青青草视频在线观看 |