11#ifndef __TBOX_LOG_PROTOCOL_H__
12#define __TBOX_LOG_PROTOCOL_H__
17#define TBOX_LOG_PROTOCOL_MAGIC 0x544C4F47u
18#define TBOX_LOG_PROTOCOL_VERSION 2u
19#define TBOX_LOG_MAX_TEXT_LEN 1023u
20#define TBOX_LOG_MAX_PACKET_SIZE 1200u
24 TBOX_LOG_MSG_WRITE = 1,
25 TBOX_LOG_MSG_SET_LEVEL = 2,
26 TBOX_LOG_MSG_GET_LEVEL = 3,
27 TBOX_LOG_MSG_PING = 4,
30 TBOX_LOG_MSG_SET_ENCRYPT = 7,
120 uint32_t pid, uint32_t tid,
const char* text,
size_t* packed_size);
139 uint32_t pid, uint32_t tid,
const char* text,
const void* data,
size_t data_len,
140 size_t* packed_size);
int tbox_log_protocol_pack_get_level(void *buffer, size_t buffer_size, uint16_t id, size_t *packed_size)
打包获取日志级别消息。
int tbox_log_protocol_pack_set_level(void *buffer, size_t buffer_size, uint16_t id, uint8_t level, size_t *packed_size)
打包设置日志级别消息。
int tbox_log_protocol_pack_hex(void *buffer, size_t buffer_size, uint16_t id, uint8_t level, uint64_t ts_ms, uint32_t pid, uint32_t tid, const char *text, const void *data, size_t data_len, size_t *packed_size)
打包二进制 hex 日志消息。
int tbox_log_protocol_pack_set_encrypt(void *buffer, size_t buffer_size, uint8_t enabled, size_t *packed_size)
打包设置日志加密开关消息。
int tbox_log_protocol_validate(const void *buffer, size_t buffer_size, tbox_log_message_view_t *view)
校验并解析协议消息。
int tbox_log_protocol_read_hex(const tbox_log_message_view_t *view, tbox_log_hex_view_t *hex_view)
解析二进制 hex 日志消息体。
int tbox_log_protocol_read_write(const tbox_log_message_view_t *view, tbox_log_write_view_t *write_view)
解析日志写入消息体。
int tbox_log_protocol_pack_ack(void *buffer, size_t buffer_size, uint32_t status, uint32_t value, size_t *packed_size)
打包 ACK 响应消息。
int tbox_log_protocol_pack_write(void *buffer, size_t buffer_size, uint16_t id, uint8_t level, uint64_t ts_ms, uint32_t pid, uint32_t tid, const char *text, size_t *packed_size)
打包日志写入消息。
Definition log_protocol.h:80
Definition log_protocol.h:74
Definition log_protocol.h:54
Definition log_protocol.h:92
Definition log_protocol.h:66
Definition log_protocol.h:99
Definition log_protocol.h:43
Definition log_protocol.h:86