please check if you have UVM_MAX_QUIT_COUNT set, does your test have any UVM_ERROR/FATAL ?
if the test exits with UVM_EXIT ( on FATAL or if quit count is reached ) , the report_phase is not executed, so what you are trying to do here wont work if your test exits with UVM_EXIT.
if you want to print any information, when tests encounters UVM_EXIT, only function to use is pre_abort ( in uvm_component )
// Function: pre_abort
//
// This callback is executed when the message system is executing a
// <UVM_EXIT> action. The exit action causes an immediate termination of
// the simulation, but the pre_abort callback hook gives components an
// opportunity to provide additional information to the user before
// the termination happens. For example, a test may want to executed
// the report function of a particular component even when an error
// condition has happened to force a premature termination you would
// write a function like:
//
//| function void mycomponent::pre_abort();
//| report();
//| endfunction
//
// The pre_abort() callback hooks are called in a bottom-up fashion.
or you can use final_block in a module.