Kernel.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace App\Console;
  3. use App\Console\Commands\Apollo;
  4. use App\Console\Commands\CommunityMemberStatistics;
  5. use App\Console\Commands\Downloads;
  6. use App\Console\Commands\MusicImport;
  7. use App\Console\Commands\PostCollectBean;
  8. use App\Console\Commands\PostCreateBean;
  9. use App\Console\Commands\PostStatistics;
  10. use App\Console\Commands\PostYesterday;
  11. use App\Console\Commands\UpdatePostInfo;
  12. use App\Console\Commands\UpdatePostStatus;
  13. use App\Console\Commands\UpdateReplyCount;
  14. use App\Console\Commands\VirusAdd;
  15. use Illuminate\Console\Scheduling\Schedule;
  16. use Laravel\Lumen\Console\Kernel as ConsoleKernel;
  17. class Kernel extends ConsoleKernel
  18. {
  19. /**
  20. * The Artisan commands provided by your application.
  21. *
  22. * @var array
  23. */
  24. protected $commands = [
  25. Apollo::class,
  26. PostYesterday::class,
  27. Downloads::class,
  28. VirusAdd::class,
  29. PostStatistics::class,
  30. PostCreateBean::class,
  31. PostCollectBean::class,
  32. UpdatePostInfo::class,
  33. UpdatePostStatus::class,
  34. UpdateReplyCount::class,
  35. CommunityMemberStatistics::class,
  36. MusicImport::class
  37. ];
  38. /**
  39. * Define the application's command schedule.
  40. *
  41. * @param \Illuminate\Console\Scheduling\Schedule $schedule
  42. * @return void
  43. */
  44. protected function schedule(Schedule $schedule)
  45. {
  46. $path = storage_path('logs/'.date('Y-m-d').'-schedule.log');
  47. $schedule->command('download:download')
  48. ->everyMinute()
  49. ->withoutOverlapping()->appendOutputTo($path);
  50. $schedule->command('post:yesterday')
  51. ->dailyAt('00:10')
  52. ->withoutOverlapping()->appendOutputTo($path);
  53. $schedule->command('post:statistics')
  54. ->dailyAt('00:20')
  55. ->withoutOverlapping()->appendOutputTo($path);
  56. //统计前一天用户行为累加
  57. $schedule->command('member:statistics')
  58. ->dailyAt('00:05')
  59. ->withoutOverlapping()->appendOutputTo($path);
  60. //内容生成U米
  61. $schedule->command('post:create_bean')
  62. ->everyFiveMinutes()
  63. ->withoutOverlapping()->appendOutputTo($path);
  64. //内容收取U米
  65. $schedule->command('post:collect_bean')
  66. ->everyFiveMinutes()
  67. ->withoutOverlapping()->appendOutputTo($path);
  68. }
  69. }