- What's New
- Billing
- Service Overview
- Getting Started
-
User Guide
- Getting Started with EG
- Permissions Management
- Event Sources
- Event Channels
- Event Subscriptions
- Event Streams
- Events
- Event Rules
- Event Targets
- Network Management
- IAM Projects and Enterprise Projects
- Authorization
- Event Monitoring
- Auditing
-
FAQs
- How Is EG Billed?
- Why Did My Event Source Creation Fail?
- How Do I Configure a Security Group When Creating an Event Source?
- Why Did My Event Publishing Fail?
- Why Was the Target Not Triggered?
- Can I Push Custom Events to EG?
- How Do I Filter Events to Transmit to the Target?
- How Do I Transfer Custom Event Content to the Target?
- How Do I Obtain the SASL Certificate Address of a DMS for Kafka Instance?
- SDK Reference
- General Reference
Copied.
Events
Events are data that complies with specific specifications. Events that event sources publish to EG must comply with the CloudEvents specification.
EG supports the following events:
- Huawei Cloud service: events produced by Huawei Cloud service event sources
- Custom: events produced by custom event sources connected to EG with SDKs
Example Event
The following is an example of an event published to EG:
{ "events":[{ "id": "4b26115b-778e-11ec-833e-cf74******", "specversion": "1.0", "source": "HC.OBS", "type": "object:put", "datacontenttype": "application/json", "subject": "xxx.jpg", "time": "2022-01-17T12:07:48.955Z", "data": { "name": "test01", "state": "enable" } }] }
Table 1 describes the parameters in this example.
Parameter |
Type |
Required |
Example Value |
Description |
---|---|---|---|---|
id |
String |
Yes |
4b26115b-778e-*******-833e-cf74af |
Event ID, which identifies an event |
specversion |
String |
Yes |
1.0 |
Version of the CloudEvents specification |
source |
String |
Yes |
HC.OBS |
Event source that produces the event |
type |
String |
Yes |
object:put |
Event type related to the event source |
datacontenttype |
String |
No |
application/json |
Content format of the data parameter Only application/json is supported. |
subject |
String |
No |
xxx.jpg |
Event subject |
time |
Timestamp |
No |
2022-01-17T12:07:48.955Z |
Time when the event was produced |
data |
Struct |
No |
{ "name": "test01", "state": "enable" } |
Content of the event in JSON format |
Sending Events in Batches
The following is an example of the request body for sending events in batches:
{ "events":[{ "id": "eg-test-001", "specversion": "1.0", "source": "HC.OBS", "type": "object:put", "datacontenttype": "application/json", "subject": "xxx.jpg", "time": "2022-01-17T12:07:48.955Z", "data": { "name": "test01", "state": "enable" } }, { "id": "eg-test-002", "specversion": "1.0", "source": "HC.OBS", "type": "object:put", "datacontenttype": "application/json", "subject": "xxx.jpg", "time": "2022-01-17T12:07:48.955Z", "data": { "name": "test01", "state": "enable" } }, { "id": "eg-test-003", "specversion": "1.0", "source": "HC.OBS", "type": "object:put", "datacontenttype": "application/json", "subject": "xxx.jpg", "time": "2022-01-17T12:07:48.955Z", "data": { "name": "test01", "state": "enable" } },...] }
- Max. size per event: 64 KB
- Max. size of all events per request: 256 KB
- Max. events per request: 20
Response body returned when all events are successfully sent:
{"failed_count":0,"events":[{"error_code":null,"error_msg":null,"event_id":"eg-test-003"},{"error_code":null,"error_msg":null,"event_id":"eg-test-003"},{"error_code":null,"error_msg":null,"event_id":"eg-test-002"}]}
Status code: 200
Response body returned when the number of events per request exceeds the upper limit:
{"failed_count":1,"events":[{"error_code":"00533013","error_msg":"Too many events for a request.","event_id":"eg-test-003"},{"error_code":null,"error_msg":null,"event_id":"eg-test-003"},{"error_code":null,"error_msg":null,"event_id":"eg-test-002"}]}
Status code: 400
Response body returned when the size of an event exceeds the upper limit:
{"failed_count":3,"events":[{"error_code":00533012,"error_msg":An event is too large."event_id":"eg-test-003"},{"error_code":00533012,"error_msg":the number of events exceeds the limit,"event_id":"eg-test-003"},{"error_code":00533012,"error_msg":the number of events exceeds the limit,"event_id":"eg-test-002"}]}
Status code: 400
Response body returned when the total size of all events per request exceeds the upper limit:
{"error_code":"00533007","error_msg":"The total size of a request's all events is too large.","error_detail":"The total size of a request's all events is too large."} {"error_code":"00533012","error_msg":"An event is too large.","error_detail":"An event is too large."} {"error_code":"00533013","error_msg":"Too many events for a request.","error_detail":"Too many events for a request."}
Status code: 400
If the status code is 400:
- The total size of all events per request exceeds the upper limit. (Error code: EG.00533007; error message: The total size of a request's all events is too large)
- The number of events per request exceeds the upper limit. (Error code: EG.00533013; error message: Too many events for a request)
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot