Open xialeistudio opened 4 years ago
Hi
p.Length-8-2-p.HostnameLength-2-p.TagLength
type Package struct {
Version [2]byte // 协议版本,暂定V1
Length int16 // 数据部分长度
Timestamp int64 // 时间戳
HostnameLength int16 // 主机名长度
Hostname []byte // 主机名
TagLength int16 // 标签长度
Tag []byte // 标签
Msg []byte // 日志数据
}
这个没有统一规范,可以直接记录Msg长度哈
Thanks♪(・ω・)ノ
还有一种不完整的包只是内容没有包含包头的,按照以上这个版本,那是不是解析不了?
@kmalloc8 还有一种不完整的包只是内容没有包含包头的,按照以上这个版本,那是不是解析不了?
你是指 MSG 为空么? 根据 Length 可以解析出来的, 因为空的长度是 0
@pplmx
@kmalloc8 还有一种不完整的包只是内容没有包含包头的,按照以上这个版本,那是不是解析不了?
你是指 MSG 为空么? 根据 Length 可以解析出来的, 因为空的长度是 0
比如半包呢?
@pplmx
@kmalloc8 还有一种不完整的包只是内容没有包含包头的,按照以上这个版本,那是不是解析不了?
你是指 MSG 为空么? 根据 Length 可以解析出来的, 因为空的长度是 0
比如半包呢?
解析异常
还有一种不完整的包只是内容没有包含包头的,按照以上这个版本,那是不是解析不了?
没有包头不能知道有多长的包体,因此解析不出来
https://www.ddhigh.com/2018/03/02/golang-tcp-stick-package.html