UpdateLoggerFactory.php 991 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. /**
  3. * Copyright © 2013-2017 Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Update;
  7. /**
  8. * Class to get PSR-3 compliant logger instance
  9. */
  10. class UpdateLoggerFactory
  11. {
  12. /**
  13. * @var string
  14. */
  15. private $logFile;
  16. /**
  17. * @var string
  18. */
  19. private $channelName;
  20. /**
  21. * Constructor
  22. * @param string $logFile
  23. * @param string $channelName
  24. *
  25. */
  26. public function __construct(
  27. $logFile = null,
  28. $channelName = 'update-cron'
  29. ) {
  30. $this->logFile = $logFile ? $logFile : MAGENTO_BP . '/var/log/update.log';
  31. $this->channelName = $channelName;
  32. }
  33. /**
  34. * Create logger instance.
  35. *
  36. * @return \Psr\Log\LoggerInterface
  37. */
  38. public function create()
  39. {
  40. $logger = new \Monolog\Logger($this->channelName);
  41. $logger->pushHandler(new \Monolog\Handler\StreamHandler($this->logFile));
  42. return $logger;
  43. }
  44. }