首页 > 基础资料 博客日记
wso2~自定义event-publisher
2025-06-05 17:39:03基础资料围观22次
本篇文章分享wso2~自定义event-publisher,对你有帮助的话记得收藏一下,看Java资料网收获更多编程知识
自定义event/publishers的步骤
介绍
- event/publishers功能位于carbon平台的event菜单,选择publishers菜单项即可打开发布者配置列表,你可以添加自定义的发布者,它们接收apim的相关事件
- 核心组件: org.wso2.carbon.event.output.adaptor.kafka
- 功能: 将APIM的事件数据发送到Kafka中
- 选择的通知输入流: org.wso2.apimgt.notification.stream
- 输出的事件适配类型: kafka
- 消息格式: json
- 参考:https://apim.docs.wso2.com/en/4.3.0/use-cases/streaming-tutorials/working-with-kafka
组件的依赖包
在carbon中的event/publishers中,添加一个kafka的发布者,然后配置相关kafka配置即可,它依赖下面一些jar包,需要将它们谢谢到/lib目录
- jopt-simple-3.2.jar
- kafka_2.10-0.8.1.jar
- kafka-clients-0.8.2.1.jar
- log4j-1.2.17.jar
- metrics-annotation-2.2.0.jar
- metrics-core-2.2.0.jar
- org.osgi.core-6.0.0.jar
- osgi.cmpn-6.0.0.jar
- pax-logging-api-1.11.10.jar
- scala-library-2.10.5.jar
- snappy-java-1.1.2.1.jar
- zkclient-0.11.jar
- zookeeper-3.3.4.jar
helm对kafka-event-stream的支持
carbon/event下面的publishers以xml文件的形式被存储到文件目录/home/wso2carbon/wso2am-4.5.0/repository/deployment/server/eventpublishers下面,当你自己在carbon平台添加自定义的publisher后,由于这个目录没有挂载到磁盘,所以重启apim之后,自定义的publisher就丢失了;知道为什么会丢失,我们就可以对helm-charts进行优化了。
- 添加toml原内容文件(all-in-one/confs/kafka_notice.toml)
<?xml version="1.0" encoding="UTF-8"?>
<eventPublisher name="kafka_notice" processing="enable"
statistics="disable" trace="disable" xmlns="http://wso2.org/carbon/eventpublisher">
<from streamName="org.wso2.apimgt.notification.stream" version="1.0.0"/>
<mapping customMapping="disable" type="json"/>
<to eventAdapterType="kafka">
<property name="topic">{{ .Values.kafka.topic }}</property>
<property name="meta.broker.list">{{ .Values.kafka.host }}</property>
</to>
</eventPublisher>
- 添加configmap(all-in-one/templates/am/wso2am-kafka-conf.yaml)
{{- if .Values.kafka.enabled}}
apiVersion: v1
kind: ConfigMap
metadata:
name: kafka-notice-conf
namespace : {{ .Release.Namespace }}
data:
kafka_notice.xml: {{ tpl (.Files.Get "confs/kafka_notice.toml") . | quote }}
{{- end }}
- 修改deployment(all-in-one/templates/am/wso2am-deployment.yaml)
{{- if .Values.kafka.enabled}}
volumeMounts:
- name: kafka-notice-conf
mountPath: /home/wso2carbon/wso2am-4.5.0/repository/deployment/server/eventpublishers/kafka_notice.xml
subPath: kafka_notice.xml
{{- end }}
volumes:
- name: kafka-notice-conf
configMap:
name: kafka-notice-conf
- 在values.yaml中添加kafka相关配置
kafka:
enabled: true
topic: apim-topic
host: 192.168.1.17:9092
经过上面的调整,你的helm-chart已经支持了kafka的event/publisher的配置了,下次重启apim,你的kafka-event/publisher就不会丢失了
文章来源:https://www.cnblogs.com/lori/p/18903538
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- 记一次诡异的线上异常赋值排查:代码没错,结果不对
- hot100之子串
- 剑指offer-1、⼆维数组中的查找
- 从尾到头打印链表
- 秒杀/高并发解决方案+落地实现 (技术栈: SpringBoot+Mysql + Redis +RabbitMQ +MyBatis-Plus +Maven + Linux + Jmeter ) -03
- @ModelAttribute、@RequestBody、@RequestParam、@PathVariable 注解对比
- Java 样板代码库 Lombok 使用详解
- wso2~自定义event-publisher
- 数组数量数据数量大 1000万黑名单用户 一百亿基础用户 查询检索思路
- Spring AI 1.0 正式发布,让 Java 再次伟大!