hanno bisogno di aiuto con registrazione di tutte le attività su un sito e modifiche al database.Best practice: eventi di registrazione (generale) e modifiche (database)
requisiti:
- dovrebbe essere nel database
- dovrebbe essere facilmente ricercabili da iniziatore (nome utente/ID di sessione), evento (tipo di attività) e l'evento parametri
i può pensare a una progettazione di database ma o coinvolge un sacco di tabelle (una per evento) in modo da poter registrare ciascuno dei parametri di un evento in un campo separato OPPURE coinvolge una tabella con campi generici (7 int numerici e 7 testo tipi) e registrare tutto in una tabella con il campo del tipo di evento che determina quale parametro è stato scritto dove (e sperando che non occorra più di 7 campi di un certo tipo, o 8 o 9 o qualsiasi numero scegliamo) ...
esempio di voci (le solite cose):
[username] login failed @datetime
[username] login successful @datetime
[username] changed password @datetime, estimated security of password [low/ok/high/perfect] @datetime
[username] clicked result [result number] [result id] after searching for [search string] and got [number of results] @datetime
[username] clicked result [result number] [result id] after searching for [search string] and got [number of results] @datetime
[username] changed profile name from [old name] to [new name] @datetime
[username] verified name with [credit card type] credit card @datetime
datbase table [table name] purged of old entries @datetime via automated process
ecc ...
così chiunque affrontati prima? qualsiasi migliori pratiche/collegamenti che è possibile condividere?
l'ho visto fare con la soluzione generica di cui sopra, ma in qualche modo va contro ciò che ho imparato dal design del database, ma come puoi vedere il numero di eventi che devono essere tracciabili (ogni utente sarà in grado vedere queste informazioni) mi sta dando mal di testa, ma io amo il primo evento per soluzione da tavolo più di quello generico.
qualche pensiero?
modifica: inoltre, c'è forse un elenco autorevole di tali (probabili) eventi da qualche parte?
thnx
Stack Overflow dice: la questione si sta chiedendo appare soggettiva e rischia di essere chiuso.
la mia risposta: probabilmente è soggettiva, ma è direttamente correlata al mio problema che ho con la progettazione di un database/scrivere il mio codice, quindi sarei felice di ricevere qualsiasi aiuto. inoltre ho provato a restringere le idee a 2, quindi spero che una di queste prevalga, a meno che non ci sia già una soluzione consolidata per questo genere di cose.
Stackoverflow dice che solo perché hai scritto "best-practice" nel tuo titolo, non è un'analisi della tua domanda :) –
sì, ho capito, ma volevo solo assicurarmi di non essere frainteso. thnx – b0x0rz