di.xml 4.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?xml version="1.0"?>
  2. <!--
  3. /**
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. -->
  8. <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
  9. <preference for="Magento\Cron\Model\ConfigInterface" type="Magento\Cron\Model\Config" />
  10. <preference for="Magento\Framework\Shell\CommandRendererInterface" type="Magento\Framework\Shell\CommandRenderer" />
  11. <preference for="Magento\Framework\Crontab\CrontabManagerInterface" type="Magento\Framework\Crontab\CrontabManager" />
  12. <preference for="Magento\Framework\Crontab\TasksProviderInterface" type="Magento\Framework\Crontab\TasksProvider" />
  13. <type name="Magento\Config\Model\Config\Structure\Converter">
  14. <plugin name="cron_backend_config_structure_converter_plugin" type="Magento\Cron\Model\Backend\Config\Structure\Converter" />
  15. </type>
  16. <type name="Magento\Framework\App\Config\Initial\Converter">
  17. <plugin name="cron_system_config_initial_converter_plugin" type="Magento\Cron\Model\System\Config\Initial\Converter" />
  18. </type>
  19. <virtualType name="Magento\Cron\Model\VirtualLoggerHandler" type="Magento\Framework\Logger\Handler\Base">
  20. <arguments>
  21. <argument name="fileName" xsi:type="string">/var/log/cron.log</argument>
  22. </arguments>
  23. </virtualType>
  24. <virtualType name="Magento\Cron\Model\VirtualLogger" type="Magento\Framework\Logger\Monolog">
  25. <arguments>
  26. <argument name="handlers" xsi:type="array">
  27. <item name="system" xsi:type="object">Magento\Cron\Model\VirtualLoggerHandler</item>
  28. </argument>
  29. </arguments>
  30. </virtualType>
  31. <!-- @api -->
  32. <virtualType name="shellBackground" type="Magento\Framework\Shell">
  33. <arguments>
  34. <argument name="commandRenderer" xsi:type="object">Magento\Framework\Shell\CommandRendererBackground</argument>
  35. </arguments>
  36. </virtualType>
  37. <type name="Magento\Cron\Observer\ProcessCronQueueObserver">
  38. <arguments>
  39. <argument name="shell" xsi:type="object">shellBackground</argument>
  40. <argument name="logger" xsi:type="object">Magento\Cron\Model\VirtualLogger</argument>
  41. </arguments>
  42. </type>
  43. <type name="Magento\Framework\Console\CommandListInterface">
  44. <arguments>
  45. <argument name="commands" xsi:type="array">
  46. <item name="cronCommand" xsi:type="object">Magento\Cron\Console\Command\CronCommand</item>
  47. <item name="cronInstall" xsi:type="object">Magento\Cron\Console\Command\CronInstallCommand</item>
  48. <item name="cronRemove" xsi:type="object">Magento\Cron\Console\Command\CronRemoveCommand</item>
  49. </argument>
  50. </arguments>
  51. </type>
  52. <type name="Magento\Framework\App\AreaList">
  53. <arguments>
  54. <argument name="areas" xsi:type="array">
  55. <item name="crontab" xsi:type="null" />
  56. </argument>
  57. </arguments>
  58. </type>
  59. <type name="Magento\Framework\Crontab\CrontabManagerInterface">
  60. <arguments>
  61. <argument name="shell" xsi:type="object">Magento\Framework\App\Shell</argument>
  62. </arguments>
  63. </type>
  64. <type name="Magento\Framework\Crontab\TasksProviderInterface">
  65. <arguments>
  66. <argument name="tasks" xsi:type="array">
  67. <item name="cronMagento" xsi:type="array">
  68. <item name="command" xsi:type="string">{magentoRoot}bin/magento cron:run | grep -v "Ran jobs by schedule" >> {magentoLog}magento.cron.log</item>
  69. </item>
  70. <item name="cronUpdate" xsi:type="array">
  71. <item name="command" xsi:type="string">{magentoRoot}update/cron.php >> {magentoLog}update.cron.log</item>
  72. </item>
  73. <item name="cronSetup" xsi:type="array">
  74. <item name="command" xsi:type="string">{magentoRoot}bin/magento setup:cron:run >> {magentoLog}setup.cron.log</item>
  75. </item>
  76. </argument>
  77. </arguments>
  78. </type>
  79. </config>