Stored-Procedure-assignment-help-

I have a package with 12 stored procedures coded inside a dynamic SQL block. I need to implement a error capturing and performance measuring method that can calculate the execution time of each procedure inside a block and also capture any error if the block has any. The best described answer is preferred that would be practical as the data consists of millions of rows and running a query is time consuming.