It is for many problems, especially concurrency related ones, much less powerful than trace points. But the issue I have seen is that some tools like gdb have unergonomic support for tracing so there I tend to use break points or printf debugging just because the tracing support is so bad in gdb.
It’s a particular subcategory of cork sniffing where you pick the hardest, dumbest way to do things because you’re a Real Developer