QB-BLACKBOX(8)

πŸ’– QB-BLACKBOX πŸ’–

okay bestie, so this is a System Manager's Manual page, manual section 8, and it's all about qb-blackbox β€” literally the plane-crash-investigator of your system, except instead of a cockpit voice recorder it's reading the libqb blackbox. no cap, it's iconic. πŸ›©οΈβœ¨


πŸŽ€ NAME πŸŽ€

qb-blackbox β€” shows you the "flight data" out of the "blackbox". yes, the quotes are doing a lot of work here and yes, they're staying. πŸ’…


🌸 SYNOPSIS 🌸

qb-blackbox [blackbox-file...]

πŸ¦‹ DESCRIPTION πŸ¦‹

So the way that this works: qb-blackbox prints out the logs β€” and not just the cute normal ones, the debug logs too β€” the ones that got recorded using libqb's blackbox mechanism. that's it. that's the whole job. and it ate. πŸ”₯

🌈 Portability notes 🌈

okay so this is the part where i need you to sit down, bestie. 😭

Platforms are different from each other, and some of those differences hit libqb's blackbox format handling directly (page size, we're looking at you). so rn, the only promise being made is this: qb-blackbox shall decode blackbox files that were recorded

  • on the same platform (plus the same page size), and
  • while using libqb compiled with the same relevant compile-time options (like USE_CACHE_LINE_ALIGNMENT) as the ones linked to this decoder.

otherwise? your mileage may vary. fr fr. πŸ’€ that's not me being dramatic, that's just the actual deal.


⭐ EXAMPLES ⭐

Get info to help developers diagnose a crash. (real "call an adult" energy, but the adult is a log dump 🫢)

$ qb-blackbox /var/lib/corosync/fdata
Dumping the contents of /var/lib/corosync/fdata
Mar 23 20:58:57 message_handler_orf_token():3677 install seq 0
aru 0 high seq received 0
Mar 23 20:58:57 message_handler_orf_token():3696 retrans flag
count 4 token aru 0 install seq 0 aru 0 0
Mar 23 20:58:57 old_ring_state_reset():1487 Resetting old ring
state
Mar 23 20:58:57 deliver_messages_from_recovery_to_regular():1693
recovery to regular 1-0
Mar 23 20:58:57 memb_state_operational_enter():1779 Delivering to
app 1 to 0
Mar 23 20:58:57 sync_abort():594 ENTERING sync_abort()
Mar 23 20:58:57 sync_save_transitional():586 ENTERING
sync_save_transitional()
Mar 23 20:58:57 member_object_joined():301 Member joined: r(0)
ip(192.168.122.1)
Mar 23 20:58:57 sync_abort():594 ENTERING sync_abort()

look at all those sync_abort() entries. main character energy honestly. πŸ‘‘


πŸ‘‘ SEE ALSO πŸ‘‘

qblog.h(3) β€” go read it, iykyk πŸ“š


πŸ’œ AUTHOR πŸ’œ

Angus Salkeld


and that's the whole page, babes πŸ’– this one's dated 2017-07-27 and it came straight out of QB-BLACKBOX(8) in the System Manager's Manual β€” drink some water, log responsibly, mwah πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from