سؤال

أنا أحاول أن اتخاذ قرار بشأن أفضل طريقة تسجيل التدقيق داخل التطبيق.السبب الرئيسي سجل عن تسلسل الأحداث (التغييرات).

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

أعتقد أن لدي ثلاثة خيارات:

  1. وقد سجل لكل جدول وبالتالي مطابقة التسلسل الهرمي للكائنات ثم إنشاء طريقة عرض التقرير.
  2. لشد الهرمي دي-تعديل الجدول, صنع التقارير أسهل بسيطة حدد البيان.
  3. وقد سجل واحد في الجدول و قد سجل كل تغيير في صنع التقارير أصعب ولكن أكثر مرونة للتغيرات.

أنا حاليا يميل نحو الخيار 1.

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

المحلول

مراجعة السجل هو في الأساس الزمني قائمة من الأحداث التي وقعت ، الذين أدوا هذه الأحداث و ما الأحداث.

أعتقد شقة إطلالة سيكون أفضل كما أنه يمكن أن يكون بسهولة أمر الاستعلام.لذا أنا أميل إلى الخيار #2/#3.

تشمل أشياء مثل معاملة النوع, الوقت, معرف المستخدم وصف ما تغير, وغيرها من المعلومات ذات الصلة المتعلقة بالمنتج الخاص بك.

يمكنك أيضا إضافة أشياء إلى المنتج الخاص بك مع مرور الوقت ولن تحتاج باستمرار تعديل سجل تدقيق وحدة.

نصائح أخرى

يجب أن أتحدث في هذا الموضوع رغم انه قديم.

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

بل هو أيضا فكرة سيئة أن يكون التطبيق بالتدقيق.المراجعة يجب أن يتم ذلك على مستوى قاعدة البيانات أو هل خطر فقدان بعض المعلومات.البيانات لا تغير فقط من التطبيقات في معظم قواعد البيانات ؛ لا أحد هو الذهاب إلى تغيير أسعار جميع منتجاتها في وقت واحد من واجهة المستخدم عندما كنت في حاجة الى زيادة 10% على جميع 10,000,000 منهم.المراجعة يجب القبض على جميع التغييرات ليست سوى بعض من لهم.وينبغي أن يتم ذلك في مشغل في معظم قواعد البيانات (SQL server 2008 قد بنيت في وظيفة المراجعة).بعض من أسوأ احتمال ممكن يتغير (موظف ارتكاب الغش أو الرغبة ضار تدمير البيانات) هي أيضا في كثير من الأحيان من أماكن أخرى من التطبيق خاصة إذا كنت تسمح الجدول مستوى الوصول إلى المستخدمين (التي يجب أن لا تفعل في أي قاعدة بيانات أو واحد يحتوي على المعلومات الشخصية).التدقيق من التطبيق لن يصاب هذا.المطورين غالبا ما ننسى أنه في حماية البيانات الخاصة بهم ، مصادر خارجية ليست التهديد الوحيد.

إذا كان لأغراض التدقيق كنت استخدم صحيح إلحاق فقط المتوسطة بدلا من الجدول/الجداول في نفس ديسيبل.

توحي لك إنها من أجل تغيير التاريخ الأغراض - في هذه الحالة أود أن إعادة هيكلة التطبيق الخاص بك/db إلى سجل الأحداث الفعلية في المقام الأول بدلا من الوضع الحالي.

وأود أن تذهب مع (2) و (3):إنشاء جدول واحد لجميع مراجعة الإدخالات.

شقة إطلالة جيدة ، شريطة العمل الإضافي تسطيح لا تؤثر على الأداء.

هل يمكن أن ننظر إلى اوب إطار للمساعدة في هذا.فإنه يسمح لك لحقن وظائف التسجيل في بداية أو نهاية أي/جميع الأساليب.إذا كنت السير في هذا الطريق ، قد تساعد على تحديد ما سيكون من المنطقي بالنسبة تخزين بيانات السجل.

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