logging-pyramid

Basically, this makes pyramids that are easy to see in the logs. If they are messed up in any way, then either the log message was not processed, or it was processed out-of-order. This has been helpful for debugging with multiple logging providers.

for i in 1 2 3; do
  msg "logtest: * $i of 3, 1 of 9"
  sleep 0.1
  msg "logtest: ** $i of 3, 2 of 9"
  sleep 0.1
  msg "logtest: *** $i of 3, 3 of 9"
  sleep 0.1
  msg "logtest: **** $i of 3, 4 of 9"
  sleep 0.1
  msg "logtest: ***** $i of 3, 5 of 9"
  sleep 0.1
  msg "logtest: **** $i of 3, 6 of 9"
  sleep 0.1
  msg "logtest: *** $i of 3, 7 of 9"
  sleep 0.1
  msg "logtest: ** $i of 3, 8 of 9"
  sleep 0.1
  msg "logtest: * $i of 3, 9 of 9"
  sleep 0.1
done

Referring Pages

interesting-test-approaches