博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
gogoproto一睹为快
阅读量:6925 次
发布时间:2019-06-27

本文共 2185 字,大约阅读时间需要 7 分钟。

hot3.png

package message;import "gogo.proto";option (gogoproto.sizer_all) = true;option (gogoproto.marshaler_all) = true;option (gogoproto.unmarshaler_all) = true;message Header {  enum HmacHashFunction {    MD5  = 0;    SHA1 = 1;  }  required uint32           message_length      = 1; // length in bytes  optional HmacHashFunction hmac_hash_function  = 3 [default = MD5];  optional string           hmac_signer         = 4;  optional uint32           hmac_key_version    = 5;  optional bytes            hmac                = 6;}message Field {  enum ValueType {    STRING  = 0;    BYTES   = 1;    INTEGER = 2;    DOUBLE  = 3;    BOOL    = 4;  }  required string       name            = 1;  optional ValueType    value_type      = 2 [default = STRING];  optional string       representation  = 3;  repeated string       value_string    = 4;  repeated bytes        value_bytes     = 5;  repeated int64        value_integer   = 6 [packed=true];  repeated double       value_double    = 7 [packed=true];  repeated bool         value_bool      = 8 [packed=true];}  message Message {  required bytes    uuid        = 1;  required int64    timestamp   = 2; // nanoseconds since UNIX epoch  optional string   type        = 3;  optional string   logger      = 4;  optional int32    severity    = 5 [default = 7];  optional string   payload     = 6;  optional string   env_version = 7;  optional int32    pid         = 8;  optional string   hostname    = 9;  repeated Field    fields      = 10;}

-------------------------事先安装--------------------------------

1.从 https://github.com/google/protobuf/releases 获取 Protobuf 编译器 protoc

wget https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gztar zxvf protobuf-2.6.1.tar.gzcd protobuf-2.6.1./configuremakemake installprotoc   -h

2.获取 goprotobuf 提供的 Protobuf 编译器插件 protoc-gen-go(被放置于 $GOPATH/bin 下,$GOPATH/bin 应该被加入 PATH 环境变量,以便 protoc 能够找到 protoc-gen-go)

此插件被 protoc 使用,用于编译 .proto 文件为 Golang 源文件,通过此源文件可以使用定义在 .proto 文件中的消息。

go get github.com/golang/protobuf/protoc-gen-gocd github.com/golang/protobuf/protoc-gen-gogo buildgo installvi /etc/profile 将$GOPATH/bin 加入环境变量source profile

 

转载于:https://my.oschina.net/yang1992/blog/511108

你可能感兴趣的文章
pynag 0.4.6 发布,Nagios配置和插件管理
查看>>
SQL 如何将服务器上的数据库备份到本机
查看>>
[译]JavaScript:typeof的用途
查看>>
处理日期和时间数据--单独使用日期和时间
查看>>
hdu 4324 Triangle LOVE(拓扑排序)
查看>>
PBX的功能代码
查看>>
onvaluechange事件
查看>>
Visual C++ 2008入门经典 第六章 程序结束
查看>>
学用MVC4做网站一:用户注册1.1
查看>>
Java 中字符串的格式化
查看>>
老瓶装新酒 - C#调用WM手机发送短信(源码)
查看>>
js 注意问题
查看>>
Web前端开发人员和设计师必读文章【系列十一】
查看>>
查找算法(IV) B-树和B+树
查看>>
【Boost】系列05:数值与字符串转换
查看>>
(转)oracle中如何对字符串进行去除空格的方法
查看>>
Tomcat处理HTTP请求源码分析(下)
查看>>
Arch Linux 2012.12.1 发布
查看>>
使用Visual Leak Detector for Visual C++ 捕捉内存泄露
查看>>
C#WinForm国际化的简单实现
查看>>