log.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. from ray_release.test import Test
  2. from ray_release.logger import logger
  3. from ray_release.reporter.reporter import Reporter
  4. from ray_release.result import Result
  5. from ray_release.util import format_link
  6. class LogReporter(Reporter):
  7. def report_result(self, test: Test, result: Result):
  8. logger.info(
  9. f"Test {test['name']} finished after "
  10. f"{result.runtime:.2f} seconds. Last logs:\n\n"
  11. f"{result.last_logs}\n"
  12. )
  13. msg = (
  14. f"Got the following metadata: \n"
  15. f" name: {test['name']}\n"
  16. f" status: {result.status}\n"
  17. f" runtime: {result.runtime:.2f}\n"
  18. f" stable: {result.stable}\n"
  19. f"\n"
  20. f" buildkite_url: {format_link(result.buildkite_url)}\n"
  21. f" wheels_url: {format_link(result.wheels_url)}\n"
  22. )
  23. if result.cluster_url:
  24. msg += f" cluster_url: {format_link(result.cluster_url)}\n"
  25. if result.job_url:
  26. msg += f" job_url: {format_link(result.job_url)}\n"
  27. logger.info(msg)
  28. results = result.results
  29. if results:
  30. msg = "Observed the following results:\n\n"
  31. for key, val in results.items():
  32. msg += f" {key} = {val}\n"
  33. else:
  34. msg = "Did not find any results."
  35. logger.info(msg)