روبوت التداول الآلي اشتغل لأكثر من أسبوع، وفجأة في يوم من الأيام الصباح ما قدرش يمسك السوق. ومن هنا فهمت - إن العمليات الآلية اللي على السيرفر تختلف تمامًا عن السكربتات اللي بتشتغل محلي. لازم أراقب بشكل حقيقي عشان أكون مطمئن.
طريقتي هي تنبيهات متعددة. أولًا، كل مرة الكرون يشتغل، بسجل timestamp لـ last_run_at. إذا لقيت في المرة الجاية إنه تعدى الضعف المتوقع، بوصلي تنبيه على طول. يعني: لو المفروض يشتغل كل 15 دقيقة، لو مر 30 دقيقة من غير تحديث، لازم أكون حذر. كده أقدر أمسك أي مشكلة قبل ما تكبر، مش أنتظر لحد ما كل حاجة تتعطل.
ثانيًا، حماية API. واجهة بينانس أحيانًا بتكون عشوائية، فشلت مرة أو مرتين مش كبيرة، لكن لو فشلت 3 مرات متتالية، بعمل قطع تلقائي لمدة 24 ساعة، وأوقف العمليات تمامًا. كده أقدر أتجنب الخسائر الكبيرة بسبب التجارب الكثيرة خلال فترة الفشل. القطع في حد ذاته نوع من الحماية.
لما نتعمق أكثر، كل مرة أنجح في تنفيذ عملية أو نشر بوست، بسجل ملف حالة. بسجل الوقت، عدد العمليات، عدد الأخطاء، توزيع عدد الكلمات. كده بكون عندي 30 يوم من التاريخ موجودة، أقدر أرجع أبحث عن الاتجاهات في أي وقت. خليني أسمح للبيانات تتكلم.
وأخيرًا، كل أسبوع أخصص 30 دقيقة لمراجعة الإحصائيات: معدل النشر، معدل الأخطاء، توزيع عدد الكلمات، هل في أي شذوذ. أحيانًا باكتشف أنماط ما رصدها التنبيه التلقائي، وبصلحها بدري.
لما أعمل المراقبة صح، أقدر أكون مطمئن بدون ما أتابع بشكل مستمر. الهدف النهائي للأتمتة مو بس الكسل، لكن إنه النظام يشتغل بشكل مستقر في الخلفية، وأكون مركز في اتخاذ قرارات أعلى في الواجهة.
$BTC #DevOps #الأتمتة
طريقتي هي تنبيهات متعددة. أولًا، كل مرة الكرون يشتغل، بسجل timestamp لـ last_run_at. إذا لقيت في المرة الجاية إنه تعدى الضعف المتوقع، بوصلي تنبيه على طول. يعني: لو المفروض يشتغل كل 15 دقيقة، لو مر 30 دقيقة من غير تحديث، لازم أكون حذر. كده أقدر أمسك أي مشكلة قبل ما تكبر، مش أنتظر لحد ما كل حاجة تتعطل.
ثانيًا، حماية API. واجهة بينانس أحيانًا بتكون عشوائية، فشلت مرة أو مرتين مش كبيرة، لكن لو فشلت 3 مرات متتالية، بعمل قطع تلقائي لمدة 24 ساعة، وأوقف العمليات تمامًا. كده أقدر أتجنب الخسائر الكبيرة بسبب التجارب الكثيرة خلال فترة الفشل. القطع في حد ذاته نوع من الحماية.
لما نتعمق أكثر، كل مرة أنجح في تنفيذ عملية أو نشر بوست، بسجل ملف حالة. بسجل الوقت، عدد العمليات، عدد الأخطاء، توزيع عدد الكلمات. كده بكون عندي 30 يوم من التاريخ موجودة، أقدر أرجع أبحث عن الاتجاهات في أي وقت. خليني أسمح للبيانات تتكلم.
وأخيرًا، كل أسبوع أخصص 30 دقيقة لمراجعة الإحصائيات: معدل النشر، معدل الأخطاء، توزيع عدد الكلمات، هل في أي شذوذ. أحيانًا باكتشف أنماط ما رصدها التنبيه التلقائي، وبصلحها بدري.
لما أعمل المراقبة صح، أقدر أكون مطمئن بدون ما أتابع بشكل مستمر. الهدف النهائي للأتمتة مو بس الكسل، لكن إنه النظام يشتغل بشكل مستقر في الخلفية، وأكون مركز في اتخاذ قرارات أعلى في الواجهة.
$BTC #DevOps #الأتمتة