سلام من با استفاده از اجرا پکیج laravel-backup از طریق کرون جاب از دیتابیسم بکاپ میگیرم
از طریق اجرای یک route فایل بکاپ به ایمیلم ارسال میشه که من این route رو از طریق فراخوانی از طریق کرون جاب اجرا میکنم در 24 ساعت
چجوری میتونم کرون جاب ها رو اولویت بندی کنم که بعد از اجرای کرون جاب run:backup کرون جاب مربوط به ارسال فایل به ایمیل اجرا بشه
میخواستم از طریق schedule این کار رو انجام بدم که بتونم بین تایم اجراشون فاصله بندازم ولی مجبور بودم طی شبانه روز کرون جاب schedule:run رو مدام اجرا کنم که باعث بار زیاد روی سرور میشه
کسی میتونه راهنمایی کنه
سلام دوست عزیز
@majeeddehghan
طبق مستندات spatie/laravel-backup یک سری event هایی تعریف شده که به شما این امکان تا بعد از بکاب گیری لاگ ذخیره بشه یا ایمیل ارسال بشه یا . .... که لینکشو براتون میزارم
در ضمن باید بگم دستور schedule:run اگر کرون های خود را به درستی زمان بندی کرده باشید بار اضافی بر روی سرور شما نخواهد داشت و این تصور نادرستی از این دستور می باشد.
بهتره برای استفاده از یک پکیج امکاناتی که اون پکیج به ما میده بریم جلو تا خودمون بیام ی طور دیگه مثلا روتی تعریف کنیم که مثلا بگیم در ساعت 10:30 شروع به بک گیری کنه و در ساعت 12 یک کرون ایمیل برامون ارسال کنه
نکته اینجاست اگه فایل بک آپ شما گرفته نشد یا خطایی داد یا ...
هندل کردن همه این موارد زمان گیر می باشد تا خودمون این کار رو انجام بدیم.
در صورتی که میتونیم با ایونت های پیش ورزش این موارد رو به راحتی هندل کنیم.
@golshahimohammadreza event هایی که میفرمایید فایل بکاپ رو ارسال نمیکنن و فقط موفقیت بکاپ رو ایمیل میکنن
من اگر بخوام مثلا ساعت 22 بکاپ بگیره و 23 بکاپ ارسال کنه برای schedule:run کروم جابم رو باید چجوری زمانبندی کنم؟
@majeeddehghan
دوست عزیز میتونی حتی یک event کاستون برای خودت ایحاد کنی (که توش فایلو ارسال کنی یا هر کار دیگه ) :
لینک زیر :
لینک ساخت کاستون سندر برای لاراول بک آپ
برای ران کردن schedule میتونی هر جور بخوای زمان بندی کنی :
'notifications' => [
\Spatie\Backup\Notifications\Notifications\BackupWasSuccessful::class => ['mail','app\Http\Controllers\Email\EmailController@send_backup'],
من میخوام بعد از BackupWasSuccessful تابع send_backup اجرا بشه
دستور بالا را قرار دادم اما نتیجه ای نگرفتم
دوست عزیز
@majeeddehghan
اینکه اومدید تابع کنترل رو به این شکل صدا زدید از منبعی استفاده کردید ؟
برای اینکار شما باید Spatie\Backup\Notifications\BaseSender مشاهده فرمایید و از این اینترفیس استفاده کنید و در صورت وجود مشکل پوشه لاگ را بررسی کنید و ارور را ارسال کنید
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟