CockroachDB开发学习文档01 小试牛刀

目标:cockroachdb开发上手调试

通常线上都是采用打日志的方法来查看代码的运行情况,如:

fmt.Printf("%s", debug.Stack())
debug.PrintStack()
log.Infof(ctx,"xxx")

本机而言是可以进行debug调试的,可以更方便地查看上下文信息。

 

开发环境:Mac+VSCode+git+delve 

  • 步骤1:下载代码
    git clone https://github.com/cockroachdb/cockroach.git
    首先要编译通过,make build不要报错,生成二进制文件.
    可参考https://www.cockroachlabs.com/docs/stable/install-cockroachdb.html
  • 步骤2:用VSCode打开项目文件夹

    添加Go插件
    CockroachDB开发学习文档01 小试牛刀_第1张图片
    配置VSCode的环境变量
    CockroachDB开发学习文档01 小试牛刀_第2张图片
    Goroot环境变量指的是你的Go编译器安装地点。
    Gopath环境变量指的是你的项目的路径,当然这里就是设置成你现在代码的主路径了。
    Go会先从Goroot找与你相关的包,然后再去Gopath找。找到了你的包依赖才不会出现那么多的报错。
    小技巧:快捷键F12是查看函数、变量的定义,Shift+F12是查找相关函数变量的引用,CTRL+‘-’是向后退,CTRL+SHIFT+‘-’是向前进。
     
  • 步骤3:装debug调试工具
    git clone https://github.com/derekparker/delve.git
    make install
     
  • 步骤4:用VSCode编写一个测试文件
    注意,Go里面的文件中的函数以Test+函数名的函数都可以当作测试函数。
    如下:
    CockroachDB开发学习文档01 小试牛刀_第3张图片
    左边插入断点,点击灰色的debug test便可以进入调试状态,左边可以查看当前变量列表。
    CockroachDB开发学习文档01 小试牛刀_第4张图片
    F10就是step over,但插件好像有些问题,有时候会乱调,建议在需要走的代码上加断点,采用F5进行继续。
  • 步骤5:配置launch调试文件

    点击这个齿轮,进行编辑
    CockroachDB开发学习文档01 小试牛刀_第5张图片
    说明:name随便填,port是调试连接的端口,选一个没用的就可以了,program要设置成你要调试的目录,env是一些环境变量的配置,args是输入的参数。
    配置完毕后,点击绿色的启动按钮,就进入debug模式运行了。看输出:
    CockroachDB开发学习文档01 小试牛刀_第6张图片
  • 步骤6:插个断点试试
    打开文件pkg/sql/distsqlrun/tablereader.go
    CockroachDB开发学习文档01 小试牛刀_第7张图片
    在这里插个断点,然后打开一个terminal的tab
    ./cockroach sql --insecure
    select * from table_name;
    看是不是断点进来了!

 

你可能感兴趣的:(Golang)