Kernel.php 2.2 KB

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