Hey Surabhi,
If you want to just understand Ceph for starter, you can do that using debug logs.
1. In Ceph code, you may find `dout` related context, similar way you can plug in new logs at points you want to understand better and grep for them in log files present at build/out dir.
Please ref. docs further on logging.
2. You can use gdb --args/attach to pid, and try out breakpoints after seeing logs which codepath is getting executed, when you perform any operation of interest. Eg.
gdb –args /usr/bin/ceph-osd -d –cluster ceph –id <id> on a running cluster.
This shall help you with hitting breakpoints.
HTH