From d153d661db7d4349d69824d318aa9ad571970606 Mon Sep 17 00:00:00 2001 From: JoramWilander Date: Tue, 2 Feb 2016 16:49:27 -0500 Subject: Add basic server audit tab to system console for EE --- store/sql_audit_store.go | 13 ++++++++++--- store/sql_audit_store_test.go | 8 ++++++++ 2 files changed, 18 insertions(+), 3 deletions(-) (limited to 'store') 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) } -- cgit v1.2.3-1-g7c22