更新时间:2023-11-06 GMT+08:00

使用CTS触发器

关于CTS触发器事件源具体介绍请参见支持的事件源

前提条件

已经在统一身份认证创建委托,创建过程请参见配置委托权限

创建CTS触发器

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击右上方的“创建函数”,进入“创建函数”页面。
  3. 设置以下函数信息。

    • 函数名称:输入您自定义的函数名称,例如:HelloWorld。
    • 委托名称:选择“不使用任何委托”。
    • 企业项目:选择“default”。
    • 运行时语言:选择“Python 2.7”。

  4. 单击“创建函数”,完成函数的创建。
  5. 在“代码”页签下,复制如下代码至代码窗并单击“部署”。

    # -*- coding:utf-8 -*-
    '''
    CTS trigger event:
    {
      "cts":  {
            "time": "",
            "user": {
                "name": "userName",
                "id": "",
                "domain": {
                    "name": "domainName",
                    "id": ""
                }
            },
            "request": {},
            "response": {},
            "code": 204,
            "service_type": "FunctionGraph",
            "resource_type": "",
            "resource_name": "",
            "resource_id": {},
            "trace_name": "",
            "trace_type": "ConsoleAction",
            "record_time": "",
            "trace_id": "",
            "trace_status": "normal"
        }
    }
    '''
    def handler (event, context):
        trace_name = event["cts"]["resource_name"]
        timeinfo = event["cts"]["time"]
        print(timeinfo+' '+trace_name)

  6. 选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框。

    图1 创建触发器

  7. 设置以下触发器信息。

    表1 触发器信息

    字段

    填写说明

    触发器类型

    选择“云审计服务(CTS)”。

    通知名称

    输入您自定义的通知名称,例如:Test。

    服务类型

    选择“FunctionGraph”。

    资源类型

    所选服务下对应的资源类型,如触发器、实例、函数等。

    操作名称

    所选资源类型下对应的操作,如创建、删除触发器等。

  8. 单击“确定”,完成CTS触发器的创建。

配置CTS事件触发函数

  1. 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 选择待配置的函数,单击进入函数详情页。
  3. 在HelloWorld函数详情页,选择函数版本,单击“测试”,弹出“配置测试事件”对话框。
  4. 填写如表2所示测试信息后,单击“保存”。

    表2 测试信息

    参数

    说明

    配置测试事件

    可创建新的测试事件也可编辑已有的测试事件。

    选择“创建新的测试事件”。

    事件模板

    选择“cts-event-template”模板,使用系统内置CTS事件模板。

    事件名称

    您自定义的事件名称,例如:cts-test。

    测试事件

    自动加载系统内置CTS事件模板,您可以根据实际情况修改。

  5. 单击“测试”,可以得到函数运行结果记录。