ما هي أفضل طريقة لتنفيذ الإبلاغ البسيط عن الأعطال/الأخطاء؟

StackOverflow https://stackoverflow.com/questions/85985

سؤال

ما هي أفضل طريقة لتنفيذ آلية بسيطة للإبلاغ عن الأعطال/الأخطاء؟

تفاصيل:تطبيقي هو عبر الأنظمة الأساسية (mac/windows/linux) ومكتوب بلغة Python, ، لذلك أحتاج فقط إلى شيء يرسل لي كمية صغيرة من النص، على سبيل المثال.مجرد طابع زمني وتتبع (الذي قمت بإنشائه وعرضه بالفعل في مربع حوار الأخطاء الخاص بي).

سيكون من الجيد أن يتم إرسالها بالبريد الإلكتروني ببساطة، ولكن لا يمكنني التفكير في طريقة للقيام بذلك دون تضمين اسم المستخدم وكلمة المرور لخادم SMTP في التطبيق...هل يجب أن أقوم بتنفيذ خدمة ويب بسيطة من جانب الخادم وأطلب من تطبيقي أن يرسل له طلب HTTP مع المعلومات؟أي أفكار أفضل؟

هل كانت مفيدة؟

المحلول

خدمة الويب هي الطريقة الأفضل، لكن هناك بعض المحاذير:

  1. يجب عليك دائمًا أن تسأل المستخدم عما إذا كان من المقبول إرسال معلومات تعليقات الخطأ.
  2. يجب أن تكون مستعدًا للفشل بأمان في حالة وجود أخطاء في الشبكة.لا تدع الفشل في الإبلاغ عن الحادث يعيق التعافي!
  3. يجب عليك تجنب تضمين معلومات تعريف المستخدم أو المعلومات الحساسة ما لم يعرف المستخدم (انظر رقم 1) ويجب عليك إما استخدام طبقة المقابس الآمنة (SSL) أو حمايتها بطريقة أخرى.تفرض بعض الولايات القضائية عليك أعباء قد لا ترغب في التعامل معها، لذا فمن الأفضل عدم حفظ هذه المعلومات.
  4. مثل أي خدمة ويب، تأكد من أن خدمتك غير قابلة للاستغلال من قبل المحتالين.

نصائح أخرى

لا أستطيع التفكير في طريقة للقيام بذلك دون تضمين اسم المستخدم وكلمة المرور لخادم SMTP في التطبيق...

ما عليك سوى اسم مستخدم وكلمة مرور لمصادقة نفسك على مضيف ذكي.لا تحتاج إليه لإرسال البريد مباشرة، بل تحتاجه لإرسال البريد من خلال جهاز ترحيل، على سبيل المثال.خادم البريد الخاص بمزود خدمة الإنترنت (ISP) الخاص بك.من الممكن تمامًا إرسال بريد إلكتروني دون مصادقة - ولهذا السبب يصعب إيقاف البريد العشوائي.

ومع ذلك، يقوم بعض مزودي خدمة الإنترنت بحظر حركة المرور الصادرة على المنفذ 25، وبالتالي فإن البديل الأقوى هو HTTP POST، والذي من غير المرجح أن يتم حظره بأي شيء.تأكد من اختيار عنوان URL الذي لن تشعر بالقيود بسببه لاحقًا، أو الأفضل من ذلك، اطلب من التطبيق التحقق بشكل دوري من وجود تحديثات، لذلك إذا قررت تغيير النطاقات أو شيء من هذا القبيل، يمكنك دفع التحديث مسبقًا.

الأمن ليس مشكلة حقًا.يمكنك التخلص من البيانات غير المرغوب فيها بسهولة إلى حد ما، لذا فإن كل ما يقلقك حقًا هو ما إذا كان شخص ما سيتحمل مشكلة إنشاء آثار مزيفة للعبث معك أم لا، وهذا موقف غير مرجح للغاية.

أما بالنسبة للحمولة، بي كراش يمكن أن تساعدك في ذلك.

إن الوصول إلى الويب هو الطريق الأمثل، ولكن تأكد من اختيار عنوان URL جيد - سيستمر تطبيقك في الوصول إليه لسنوات قادمة.

سواء كنت تستخدم SMTP أو HTTP لإرسال البيانات، يجب أن يكون لديك اسم مستخدم/كلمة مرور في التطبيق لمنع أي شخص من إرسال بيانات عشوائية إليك.

مع أخذ ذلك في الاعتبار، أظن أنه سيكون من الأسهل استخدام SMTP بدلاً من HTTP لإرسال البيانات.

قد يكون هناك نوع من خدمة الويب البسيطة يكفي.سيتعين عليك مراعاة الأمان حتى لا يتمكن أي شخص من تقديم طلبات لخدمتك.

على نطاق أوسع، فكرنا في نظام مراسلة JMS.ضع كائنًا متسلسلًا من البيانات يحتوي على رسالة التتبع/الخطأ في قائمة الانتظار واستهلكه كل x دقيقة لإنشاء تقارير/تنبيهات من تلك البيانات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top