检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用FunctionGraph函数对OBS中的文件进行加解密 案例描述 准备 构建程序 添加事件源 处理文件 父主题: 数据处理类实践
使用FunctionGraph函数对LTS中的日志进行实时过滤 案例概述 准备 构建程序 添加事件源 处理结果 父主题: 数据处理类实践
无需运维、按需付费的数据加工、分析。 把过滤后的日志转存到另外的日志流,原日志流根据设置的过期时间自动删除,降低日志存储费用。 应用扩展 函数工作流服务+LTS云日志服务的应用广泛,如以下应用场景:利用函数的TIMER触发器,定时对指定LTS日志流中的日志数据进行个性化分析和处理,删除冗余的日志,节省空间和费用。
操作流程 本方案包含以下操作步骤 创建文件接收函数:接收上传的文件并解析内容。 端到端测试:绑定APIG触发器,测试文件上传及处理流程。 NodeJS语言方案 Python语言方案 父主题: 使用FunctionGraph函数实现通过API方式上传文件
连接DCS集群实例 from redis.cluster import RedisCluster as Redis from redis.cluster import ClusterNode redis_client = None def create_redis_client(context):
方案概述 应用场景 端侧文件上传云服务器是Web和App应用的一类场景,例如服务运行日志的上报,Web应用图片上传等,函数可作为后端,结合APIG提供通用的API处理这类场景。本章节以NodeJS和Python语言为例,指导用户如何开发后端解析函数,获取上传的文件。 约束与限制 单次请求上传文件大小不超过6MB。
服务器端加密是指OBS服务端对客户端上传到OBS的对象进行加密存储,开启后需要选择加密密钥。 关闭 归档数据直读 必选参数。 通过归档数据直读,可以直接下载存储类别为归档存储的数据,无需提前恢复。归档数据直读会收取相应的费用。 关闭 企业项目 必选参数。 企业项目是一种云资源管理方式,企业项目
互通过数据流驱动。其中数据流的控制通过 Stream Bridge 组件来实现。同时函数 SDK 增加流式数据返回接口,用户不需要将整个文件内容返回,而是通过 gRPC Stream 的方式将数据写入到 Stream Bridge,Stream Bridge 用来分发数据流到下一个步骤的函数
loudsdklts,如图3和图4所示。 图3 lts_cleanse.py 图4 为函数B添加依赖包 函数实现的功能是:将收到的日志事件数据进行base64解码,然后提取出包含“WRN”、“WARN”、“ERR”或“ERROR”关键字的告警日志,将此级别的日志投递至创建好的LT
Redis连接池 在示例代码中使用了Redis连接池(BlockingConnectionPool),配置了最大连接数(max_connections)和连接池耗尽后获取连接的最大等待时间(timeout),代码片段如下: pool = BlockingConnectio
Redis重试机制 Redis客户端支持添加自动重试机制,确保在执行Redis操作失败后重试特定次数,这样能大幅度降低暂时性故障影响。例如:发生瞬时的网络抖动、磁盘抖动导致服务暂时不可用或者调用超时的情况下,提高Redis操作的成功概率。 连接DCS单机、主备、读写分离、Prox
准备 本例提供了日志实时过滤功能的程序包及依赖包,用户可以下载 lts_cleanse.zip(包含函数A代码文件write_log.py、函数B代码文件lts_cleanse.py及依赖包huaweicloudsdklts) 、lts_cleanse.zip.sha256 学习使用。
在“创建桶”界面,填写存储桶信息。 区域:根据实际情况设置 数据冗余存储策略:“单AZ存储” 桶名称输入:输入您自定义的桶名称,此处以“hugb-bucket-input”为例。 默认存储类别:“标准存储” 桶策略:"私有" 服务端加密:“关闭” 归档数据直读:“关闭” 单击“立即创建”,完成源桶创建。
使用FunctionGraph函数流对OBS中的图片进行旋转 案例概述 准备 构建程序 处理图片 父主题: 数据处理类实践
使用FunctionGraph函数识别LTS中的异常业务日志并存储到OBS 案例概述 准备 构建程序 添加事件源 处理结果 父主题: 数据处理类实践
"application/json" } } body = event['body'] #APIG触发器默认对数据进行Base64编码,这里解码 raw_data = base64.b64decode(body) for part in
表10 DDS触发器数据说明 字段名称 字段说明 instance_id 文档数据库实例ID collection_name 集合名称 db_name 文档数据库名称 db_password 文档数据库用户密码 batch_size 批次大小 Kafka触发器数据如下。 {
云端数据加工处理 在OBS对象存储服务创建OBS桶和OBS对象,并配置事件通知。 在OBS对象存储服务创建OBS桶和OBS对象,如图1所示,创建过程请参考创建OBS桶。 图1 OBS桶 创建的OBS桶名为“logstore”,OBS对象为“log.txt”用于存储日志数据。 创建委托
资源规划 表1 资源规划 产品 配置示例 API网关APIG 区域:北京四 规格:可使用共享版APIG或者创建专享版APIG实例 函数工作流FunctionGraph 区域:北京四 计费模式:按需计费 父主题: 使用FunctionGraph函数实现通过API方式上传文件
转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,过滤出告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。 将函数处理后的日志数据投递至OBS桶中集中存储,便于后续处理。处理流程如图1。 图1