code: public static List<Map<String, Object>> getEventsAsMaps() {
          List<Map<String, Object>> list = EMPTY_LIST_OF_MAPS; 
          TracyThreadContext ctx = threadContext.get();
          if (isValidContext(ctx)) {
              list = new ArrayList<Map<String, Object>>(20);
              for (TracyEvent event : ctx.getPoppedList())	{
          	list.add(event.toMap());
              }
          }
          return list;
      }
docs: Once all work has been done, and TracyEvents are ready to be collected you can collect them using this method
  This method differs from getEvents() in the sense that the client does not need to know the structure of
  TracyEvents to be able to consume them.
  @return list of TracyEvent maps