DMS for RocketMQ Event Source¶
DMS for RocketMQ is a message queuing service that provides RocketMQ premium instances. If you create a RocketMQ trigger for a function, when a message is sent to a RocketMQ instance topic, FunctionGraph will retrieve the message and trigger the function to perform other operations.
For the use of RocketMQ triggers, please refer to Using a RocketMQ Trigger.
RocketMQ example event¶
{
"event_version": "v1.0",
"event_time": 1714040037,
"trigger_type": "ROCKETMQ",
"region": "region",
"instance_id": "4140112c-85fc-40b8-bf7f-1ced2691a0a6",
"records": [
{
"messages": [
"rocketmq message1",
"rocketmq message2",
"rocketmq message3",
"rocketmq message4",
"rocketmq message5"
],
"topic_id": "topic"
}
]
}
Parameter description¶
Parameter |
Type |
Description |
|---|---|---|
event_version |
String |
Event version |
event_time |
String |
Time when an event occurs |
trigger_type |
String |
Event type: ROCKETMQ |
region |
String |
Region where a RocketMQ instance resides |
instance_id |
String |
RocketMQ instance ID |
messages |
String[] |
Message content |
topic_id |
String |
Message ID |
Example¶
# coding: utf-8
from fg_dms4rocketmq_event import DMS4RocketMQEvent
def handler(event, context):
logger = context.getLogger()
logger.info("Function Name: %s", context.getFunctionName())
dms4rocketmq_event = DMS4RocketMQEvent(event)
logger.info("Trigger type: %s", dms4rocketmq_event.get_trigger_type())
output = {
"trigger_type": dms4rocketmq_event.get_trigger_type(),
}
return output
Full sample code is available in the samples-doc/scratch-event-dms4rocketmq.
Package description¶
Public package exports for fg_dms4rocketmq_event.
- class fg_dms4rocketmq_event.DMS4RocketMQEvent(event)¶
Bases:
objectRepresents a DMS4RocketMQ event for FunctionGraph.
- get_event_version()¶
- get_event_time()¶
- get_region()¶
- get_trigger_type()¶
- get_instance_id()¶
- get_records()¶
- to_json()¶