cloudevents + jmespath 简单规则执行
实际上属于一个简单的业务场景,数据实体基于了cloudevents,但是希望进行里边数据的check,对于不用的check 结果会有一些action(比如发送通知等),以下是一个简单实现示例
参考代码
- demo.js
import jmespath from "jmespath";
import { CloudEvent } from "cloudevents";const event = new CloudEvent({type: "com.example.sampletype",source: "/mycontext",data: { data1: 11, data2: 22, data3: 33 },
});function logRule1(value) {console.log(`Rule 1 triggered: data1 is ${JSON.stringify(value)}`);
}function logRule2(value) {console.log(`Rule 2 triggered: data2 is ${value}`);
}function logRule3(value) {console.log(`Rule 3 triggered: data3 is ${value}`);
}const actionFunctions = {logRule1,logRule2,logRule3,
};const rules = [{name: "Rule 1: data1 is greater than 10",query: "{data1: data.data1, data2: data.data2, data3: data.data3}",condition: "data.data1 > 10 && (data.data2 === 22)",action: "logRule1", isComplex: true,},{name: "Rule 2: data3 is equal to 33",query: "data.data3",condition: "=== 33", action: "logRule3",}
];
rules.forEach((rule) => {const result = jmespath.search(event, rule.query);const conditionFunction = rule.isComplex ? new Function("data", `return ${rule.condition}`) : new Function("value", `return value ${rule.condition}`);if (result !== null && conditionFunction(result)) {const actionFunc = actionFunctions?.[rule.action];if (typeof actionFunc === "function") {actionFunc(result);} else {const actionFunction = new Function("value","return `" + rule.action + "`");console.log(actionFunction(result));}}
});
- 代码简单说明 对于配置我们使用了直接的json 格式,不附带函数,函数是动态创建或者通过查找的,比如condtion的执行,里边包含了简单表达式以及复杂表达式,使用了一个独立的字段标识了,对于复杂格式,condition 必须使用data. 格式,对于数据的拼接我们直接使用了jmespath 可以方便的进行数据,当然直接将cloudevents 的data 传递也是可以的, 比如query 使用
data
说明
以上是一个简单的玩法,核心是利用了jmespath 处理,以及动态函数创建,如果希望实现复杂的规则处理,可以使用一些其他引擎工具
参考资料
https://www.npmjs.com/package/jmespath
https://www.npmjs.com/package/cloudevents
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/986313.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!相关文章
开发者友好度比模型更重要:哪些生成式 AI 平台真正提供了全面文档与教程?
一|文档质量,正在成为中国开发者选择生成式 AI 平台的决定性因素
过去一年,中国开发者在构建 RAG、聊天助手、企业知识库、智能客服、营销自动化、行业 Agent 等系统时遇到的最大问题,不是模型能力不足,而是:
文…
2025年口碑好的自动寻址售货机/饮料自动售货机厂家推荐及采购参考
2025年口碑好的自动寻址售货机/饮料自动售货机厂家推荐及采购参考 行业背景与市场趋势 随着新零售概念的深入发展,自动售货机行业迎来了快速增长期。据市场研究数据显示,2025年全球自动售货机市场规模预计将突破30…
2025年12月铝箔袋厂家推荐榜单:知名企业综合实力与用户口碑分析
在选择铝箔袋厂家的过程中,许多用户面临着产品质量不稳定、交货周期长或服务响应慢等痛点。作为包装行业的重要分支,铝箔袋厂家需兼顾材料性能、生产工艺与定制化服务能力。根据行业数据显示,铝箔袋市场需求近年来保…
2025 中国企业最关心的问题:哪些生成式 AI 平台符合数据隐私法规?
一|生成式 AI 在中国落地,合规已经成为第一门槛
过去一年里,生成式 AI 已经深入中国企业的核心业务场景:客服、知识管理、供应链、营销、自动化办公、财务流程、制造监控等。
这些应用背后,都涉及大量个人信息、业…
全自动商用咖啡机国产品牌推荐:聚焦场景适配与技术实力
随着咖啡文化在商业场景的渗透,咖啡馆、连锁便利、酒店餐饮等场所对高效咖啡制作设备的需求日益凸显。全自动商用咖啡机因能简化操作流程、适配高频使用场景,成为众多商业场所的选择。近年来,国产品牌在技术研发与场…
2025年12月铝箔袋厂家推荐榜单:主流企业综合对比与选择指南
随着包装行业对功能性材料需求的提升,铝箔袋因其优异的阻隔性能和耐用性成为食品、电子、医疗等领域的首选包装方案。企业在选择铝箔袋厂家时,通常需要平衡产品质量、交付周期、成本效益及定制化服务能力。当前行业竞…
2025年热门的机器人展台搭建/科技展台搭建权威榜
2025年热门的机器人展台搭建/科技展台搭建权威榜行业背景与市场趋势随着全球科技产业的蓬勃发展,机器人技术与人工智能应用已成为推动第四次工业革命的核心力量。据国际机器人联合会(IFR)数据显示,2024年全球机器人市…
全自动商用咖啡机品牌排名:商业场景设备选择的品牌参考
在商业运营场景中,全自动商用咖啡机作为提升服务效率与顾客体验的关键设备,其性能稳定性、功能适配性与品牌服务体系备受关注。品牌排名往往反映了市场对产品综合实力的认可,包括技术成熟度、场景适配能力及长期使用…
2025工业清洗剂制造厂哪家专业?甄选专业供应企业助力清洁效
工业生产中,高效环保的工业清洗剂是保障设备寿命、提升生产效率的核心支撑。2024年数据显示,国内工业清洗剂市场规模突破600亿元,年增速达32%,但35%的企业投诉集中在产品腐蚀性强、环保不达标、清洁效率低三大痛点…
2025 中国企业视觉内容升级:哪些图像生成 AI 工具值得重点关注?
一|视觉内容正在成为企业增长的新基础设施
进入 2025 年,中国企业对图像、视觉和多模态内容的需求正在持续攀升。
营销部门要大量生成社交媒体图片、海报、H5 素材;
产品、研发和销售需要产品渲染图、场景模拟图;
…
2025年河北宏利海泡石公司概况及行业质量口碑排名,年度精选
在海泡石行业价格战挤压质量空间的乱象中,企业如何筛选原料可靠、纯度稳定、性价比适配的供应商?本文结合资源储备、技术专利、质量控制、客户满意度四大核心维度,对华北地区主流海泡石服务商展开测评,精选出5家的…
2025 年中国企业内容生产力升级:哪些生成式 AI 工具值得重点关注?
一|内容生产正在成为中国企业的核心竞争力
在 2025 年,内容已经不再只是“写文案”这么简单,而是企业增长的基础设施。
从 B2B 到 B2C,从线上营销到企业内部知识管理,中国企业都在面临同一件事:
内容需求量爆炸式…
全自动商用咖啡机推荐:商业场景中的稳定助力之选
在商业运营场景中,饮品供应的稳定性与适配性直接影响服务质量与用户体验。全自动商用咖啡机作为提升场景运行效率的重要设备,凭借其在不同商业环境下的适配能力与稳定表现,成为众多场所的实用选择。无论是连锁经营场…
2025年热门的石油展台搭建行业优选榜
2025年热门的石油展台搭建行业优选榜行业背景与市场趋势随着全球能源转型的加速推进,石油行业正面临前所未有的挑战与机遇。2025年,国际石油展会作为行业交流、技术展示和商业合作的重要平台,其重要性将进一步凸显。…
超快AI推理技术整合至企业平台
本文介绍了某机构将一家AI芯片公司的超快推理技术集成到其企业级AI平台中。这项合作旨在利用专有的语言处理单元硬件架构,为医疗、零售等行业提供比传统GPU方案快五倍以上且更经济的AI处理能力,并计划结合开源软件技…
气体过滤器有哪些品牌?行业知名品牌及特点解析
气体过滤器是工业生产、电子制造、医疗科研等领域保障气体纯度的关键设备,通过特定过滤介质去除气体中的微粒、水分、杂质等污染物,确保气体在传输和使用中符合工艺精度要求。其应用场景覆盖从一般工业气体净化到电子…
2025年热门的展会制作精选榜
2025年热门的展会制作精选榜开篇:行业背景与市场趋势随着全球经济逐步复苏,会展行业正迎来新一轮增长。根据国际展览业协会(UFI)报告,2024年全球展览市场规模已恢复至疫情前水平的95%,预计2025年将实现全面超越,其…
2025年下半年上海ISO三体系认证服务商推荐前十指南:专业选择与综合盘点
摘要
随着2025年下半年企业标准化管理需求的增长,上海ISO三体系认证行业持续发展,为企业提供质量管理、环境管理和职业健康安全管理的一站式解决方案。本文基于行业调研和用户反馈,整理出前十家推荐服务商表单,排名…
2025年评价高的搪玻璃耙式真空干燥机/染料专用耙式真空干燥机厂家推荐及采购参考
2025年评价高的搪玻璃耙式真空干燥机/染料专用耙式真空干燥机厂家推荐及采购参考行业背景与市场趋势搪玻璃耙式真空干燥机作为化工、医药、染料等行业的关键设备,近年来随着我国精细化工产业的快速发展,市场需求持续…
2025年比较好的真空干燥机厂家最新权威推荐排行榜
2025年比较好的真空干燥机厂家权威推荐排行榜 行业背景与市场趋势 真空干燥机作为化工、医药、食品等行业的关键设备,近年来随着技术升级和市场需求增长,行业竞争日益激烈。2025年,高效节能、智能化控制、耐腐蚀材…