summaryrefslogtreecommitdiffstats
path: root/store
diff options
context:
space:
mode:
authorJoramWilander <jwawilander@gmail.com>2016-02-02 16:49:27 -0500
committerJoramWilander <jwawilander@gmail.com>2016-02-02 16:49:27 -0500
commitd153d661db7d4349d69824d318aa9ad571970606 (patch)
tree002c035bbd99d8e2be4a7c7ebb18b413de55ad6e /store
parentf28486c4553f7f4bccf7bf69153c2f12699705f9 (diff)
downloadchat-d153d661db7d4349d69824d318aa9ad571970606.tar.gz
chat-d153d661db7d4349d69824d318aa9ad571970606.tar.bz2
chat-d153d661db7d4349d69824d318aa9ad571970606.zip
Add basic server audit tab to system console for EE
Diffstat (limited to 'store')
-rw-r--r--store/sql_audit_store.go13
-rw-r--r--store/sql_audit_store_test.go8
2 files changed, 18 insertions, 3 deletions
diff --git a/store/sql_audit_store.go b/store/sql_audit_store.go
index 97df5f7e7..dbcb9a616 100644
--- a/store/sql_audit_store.go
+++ b/store/sql_audit_store.go
@@ -1,4 +1,4 @@
-// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
+// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
package store
@@ -72,9 +72,16 @@ func (s SqlAuditStore) Get(user_id string, limit int) StoreChannel {
return
}
+ query := "SELECT * FROM Audits"
+
+ if len(user_id) != 0 {
+ query += " WHERE UserId = :user_id"
+ }
+
+ query += " ORDER BY CreateAt DESC LIMIT :limit"
+
var audits model.Audits
- if _, err := s.GetReplica().Select(&audits, "SELECT * FROM Audits WHERE UserId = :user_id ORDER BY CreateAt DESC LIMIT :limit",
- map[string]interface{}{"user_id": user_id, "limit": limit}); err != nil {
+ if _, err := s.GetReplica().Select(&audits, query, map[string]interface{}{"user_id": user_id, "limit": limit}); err != nil {
result.Err = model.NewLocAppError("SqlAuditStore.Get", "store.sql_audit.get.finding.app_error", nil, "user_id="+user_id)
} else {
result.Data = audits
diff --git a/store/sql_audit_store_test.go b/store/sql_audit_store_test.go
index b395631f1..841b79627 100644
--- a/store/sql_audit_store_test.go
+++ b/store/sql_audit_store_test.go
@@ -45,6 +45,14 @@ func TestSqlAuditStore(t *testing.T) {
t.Fatal("Should have returned empty because user_id is missing")
}
+ c = store.Audit().Get("", 100)
+ result = <-c
+ audits = result.Data.(model.Audits)
+
+ if len(audits) <= 4 {
+ t.Fatal("Failed to save and retrieve 4 audit logs")
+ }
+
if r2 := <-store.Audit().PermanentDeleteByUser(audit.UserId); r2.Err != nil {
t.Fatal(r2.Err)
}