文章目录
1. go module
使用go module的话,对应的依赖的sdk都会放到$GOPATH/pkg
目录下面
2. 使用grpc的protobuf协议
- 安装protoc
- 安装protogogo https://github.com/gogo/protobuf
- 设置GOPROXY=http://nexus:8082
本地的protoc安装如下
cd ~/software/protobuf
wget https://github.com/protocolbuffers/protobuf/releases/download/v3.12.0/protoc-3.12.0-osx-x86_64.zip
mv ~/Downloads/protobuf-3.12.0.tar.gz .
tar -xzf protoc-3.12.0-osx-x86_64.zip
cd ../
mv protobuf /usr/local/protoc
ln -s /usr/local/protoc/bin/protoc /usr/local/bin/protoc
#查看 protoc
protoc --version
这里需要在安全的地方解决一下安全问题
protoc --version
libprotoc 3.12.0
ok
这里需要注意的是,要把GOPTAH也加到PATH当中去,因为有些插件的执行命令是安装在GOPATH下面的
参考:这里
See the Installation section of the package README here: https://github.com/golang/protobuf
Grab the code from the repository and install the proto package. The simplest way is to run go get -u github.com/golang/protobuf/protoc-gen-go. The compiler plugin, protoc-gen-go, will be installed in $GOPATH/bin unless $GOBIN is set. It must be in your $PATH for the protocol compiler, protoc, to find it.
3. GOPROXY 设置不生效的问题
之前设置了GOPROXY
go env -w GOPROXY=http://nexus:8082,direct
拉取代码的时候总是报错
➜ git:(master) go get google.golang.org/grpc
go: google.golang.org/grpc upgrade => v1.37.1
go get: google.golang.org/grpc@v1.37.1/go.mod: verifying module: google.golang.org/grpc@v1.37.1/go.mod: reading http://nexus:8082/sumdb/sum.golang.org/lookup/google.golang.org/grpc@v1.37.1: 410 Gone
server response: Get "https://sum.golang.org/lookup/google.golang.org/grpc@v1.37.1": dial tcp: lookup sum.golang.org on 127.0.0.11:53: no such host
➜ git:(master) go mod tidy
/algo/script/jobs/ana_tags imports
github.com/go-ego/gse imports
embed: package embed is not in GOROOT (/usr/local/go/src/embed)
当我换成这个
GOPROXY="https://proxy.golang.org,direct"
反而就ok了,后来发现需要关闭sum校验
go env -w GOSUMDB=off
4. package名称和目录名称不一致,如何引入
import实际上只是路径名,可以起一个别名
https://www.cnblogs.com/maji233/p/11045166.html
5. 设置system.log的日志级别
日志打印
/var/log/system.log
https://www.unixtutorial.org/syslog-and-asl-in-macos/
https://stackoverflow.com/questions/34761370/apple-logger-asl-ignoring-rule-in-etc-asl-conf-for-specific-facility
https://www.manpagez.com/man/5/asl.conf/
linux系统的
https://www.cnblogs.com/xiaochina/p/7467483.html