title: How can you trace execution of an embedded system emulted in QEMU?
body: <p>I've built  OpenWrt for x86 and I'm using QEMU to run it virtually.I'm trying to debug this system in real time.  I need to see things like network traffic flowing etc. </p>
  
  <p>I can attach gdb remotely and execute (mostly) step by step with break points. I really want trace points though. I don't want to pause execution and loose network flow. When I tried setting trace points using tstart, I see the message "Target does not support this command". I did a bit of reading of the gdb documentation and from what I can tell the gdb stub that runs to intercept normal execution in QEMU does not support trace points. </p>
  
  <p>From here I started looking at other tools and ran across PANDA (<a href="https://github.com/panda-re/panda" rel="nofollow noreferrer">https://github.com/panda-re/panda</a>). As I understand PANDA will capture a complete system trace in a log and allow for replay. I think this tool is supposed to do what I need, but I cannot seem to replay the results. I see the logs, I just can't replay them. </p>
  
  <p>Now, I'm a bit stuck on what other tools/options I might have to actually trace a running embedded system. Are there any good tools you can recommend? Or perhaps another method I've missed?</p>