Пользовательское отслеживание действия ASP.NET в базе данных

Это о простой все же эффективной платформе журналирования действия, которую я хочу интегрировать со своим существующим основанным на ASP.NET веб-приложением (у меня есть основанный на LINQ-SQL SQL DB как бэкенд). Я использую что-то как сервисная архитектура для выполнения операций DB - который является, вызывают соответствующие операции LINQ. У меня есть класс обслуживания почти для каждого объекта (т.е. Таблица базы данных), и это обрабатывает операции CRUD.

В целом я должен отследить операции как - г-н X добавил новый Объект, Мой. Y искавший на этом фильтре, г-н Z экспортировал результат Сетки к документу Excel, и т.д.... и подобный простой основанный на операции вход (вход полевого уровня далек на данный момент),

Так, вот то, что я нашел за свои два дня R&D на Так, другие форумы и сеть:

Подход 1: Простой старый способ использовать две таблицы: Действие (хранит ВСЕ операции наряду с его агентом), и ActivityType (перечисляет типы операций). У меня есть уровень служб так любой, который у меня может быть класс "ServieBase", который касается ВСЕХ событий CRUD и регистрирует то, которым я интересуюсь. Все обрабатывается из кода.

Пример: http://dotnetslackers.com/articles/aspnet/Tracking-User-Activity.aspx

Подход 2: Используйте базу данных TRIGGER, чтобы коснуться событий на уровне таблицы и затем выполнить вход. Это будет абсолютно 'абстрактно' к приложению. У меня есть поле "LastModifiedBy" в каждой таблице, таким образом, я получу данные 'агента', и я могу сделать вход, но это могло бы ограничить меня операциями DB и нуждается во мне для отслеживания других активностей приложения отдельно. но если стоящий я могу рассмотреть это.

Подход 3: (концептуальный, нуждайтесь в большем руководстве),

3.1 Подход MVC - Мы думаем о принятии MVC в будущем, и я нашел некоторые эффективные приемы входа в MVC как - (там, что-нибудь как этот для традиционного L2S основывало веб-приложение?)

Зарегистрируйте пользовательское действие по ASP.NET приложение MVC Отследить пользовательское действие/действия для asp.net mvc веб-сайт?

3.2 Отслеживание Сервисов, я столкнулся с 'сервисной функцией' отслеживания в окнах - является там своим веб-эквивалентным?

http://msdn.microsoft.com/en-us/magazine/cc163466.aspx http://www.codeproject.com/KB/WF/WWF__Tracking_Service.aspx?msg=2879654

3.3 Misc - Некоторые другие опции, с которыми я столкнулся, но не кажусь слишком убедительным или я высказался, они делают свою работу, но не шахту :-)

Касательно -

http://learn.iis.net/page.aspx/480/sample-web-analytics-tracking-module/

SQL Profiler: https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-5054787.html http://technet.microsoft.com/en-us/library/cc966515.aspx

Так, что говорит? Любые предложения и новые мысли приветствуются. На данный момент кажется, что я приземлился бы где-нибудь между первыми двумя подходами, потому что мы хотим, чтобы это было легко в будущем смочь добавить любое дополнительное действие, которое будет зарегистрировано.

Спасибо.

12
задан Community 23 May 2017 в 12:16
поделиться