# File monit/lib/symbiosis/monitor/runner.rb, line 60
      def go
        @start_time = Time.now
        logger.debug("STARTING")

        self.tests.each do |test|
          begin
            result = test.run
            raise result unless test.success?
            if test.retried
              result.backtrace.each{ |l| logger.info("#{test.name}: #{l}") }
              logger.warn("#{test.name}: PASSED")
            else
              result.backtrace.each{ |l| logger.debug("#{test.name}: #{l}") }
              logger.debug("#{test.name}: PASSED")
            end
          rescue SystemExit => err
            #
            # Log the backtrace if we've failed.
            #
            err.backtrace.each{ |l| logger.info("#{test.name}: #{l}") }

            #
            # If we get a temporary failure, retry!
            #
            if ( SystemExit::EX_TEMPFAIL == err.to_i and not test.retried )
              logger.warn("#{test.name}: RETRYING (following #{err.to_s})")
              retry
            end

            # 
            # Otherwise do nothing.
            #
            logger.warn("#{test.name}: FAILED: #{err.to_s}")
          rescue RuntimeError => err
            error err.to_s
          end

        end

        logger.info("RESULT: #{successful_tests.length}/#{tests.length} passed.")
        @finish_time = Time.now

        nil
      end