ceph vstart调试client端代码
来源:互联网 发布:四剑圣2.6优化版攻略 编辑:程序博客网 时间:2024/06/06 04:19
因为OSD端有OSD进程,MON有MON进程,MDS有MDS进程。所以在gdb的时候可以直接attach这些进程号进程调试。或者在代码中直接添加打印。但是对于client端的代码没有一个具体的进程来进行attach,因为client端代码是编译成一个lib库,client端程序在运行的时候会链接这些lib库,如librbd.lib librados.lib,因此需要找到一个这些lib库的载体。为了更好的调测这些数据代码,可以使用rbd bench-write工具进行调测,这也是可以直接通过vstart来操作的,这样方便调测和debug。具体通过一个例子来说明:
如我想看client端读写请求的路径流程:
如果想修改代码:此时你可以修改client端代码,然后 make -j64进行编译。
一、在ceph/build/目录下:
1、../src/vstart.sh -n -d –mon_num 1 –mds_num 0 –osd_num 3 –short
2、./bin/ceph osd pool create 15Kpool 32 32 -c ceph.conf
3、./bin/rbd create 15Kpool/image -s 10G -c ceph.conf
二、通过rbd bench-write工具对对这个image进行写操作:
1、./bin/rbd bench-write image –pool=15Kpool –io-size 4K –io-pattern rand -c ceph.conf
三、此时在out/client.admin.xxxx.log文件中回打印修改的打印语句。
四、或者可以通过cgdb的方式来附加这个bench-write进程。通过断点的方式进行debug。
1、ps aux |grep bench
root 1447 12.7 0.0 1635684 30672 pts/14 Sl+ 00:09 0:01 ./bin/rbd bench-write image –pool=15Kpool –io-size 4K –io-pattern rand -c ceph.conf
2、#cgdb -p 1447
3、(gdb):b ImageRequestWQ.cc:165
4、(gdb):c
- ceph vstart调试client端代码
- 通过vstart搭建ceph开发调试环境。
- VStart
- Ceph Client报错
- ceph-fuse hangs on starting ceph client
- S3 client 访问ceph rgw
- JAVA socket Client端代码
- redis client端示例代码
- Client代码
- ceph存储 Could not find keyring file: /etc/ceph/ceph.client.admin.keyring on host
- ceph存储 ceph源码调试中admin_socket接口
- ceph的git代码下载
- Ceph代码分析---线程池
- ceph存储底层代码走读
- SCIM Bridge Client端代码分析
- redis 学习笔记-client端示例代码
- Feature Set Mismatch Error on Ceph Kernel Client
- Ceph 集群 client 节点 rdb配置和使用
- ButterKnife原理解析
- 李洋疯狂C语言之求素数的方法
- 回调函数实现步骤
- java单链表是否有环的两种判断方式
- javascript基础_03
- ceph vstart调试client端代码
- 【原创达人】新来的小新Air Pro,一言不合就拆机
- 布局的加载= =
- R 语言基础知识
- C++程序员学Java系列之十五:自定义类的简单使用
- 大端序和小端序
- clone的linu上不了网的问题
- OS X 系统自带的截图快捷键
- lua 人机交互(一)