Add total stats for postgres
This commit is contained in:
parent
5ec1d11ea7
commit
8242cdcbfb
@ -127,5 +127,37 @@ func (s *PostgresStore) Stats(statType LoginStats, limit int) ([]StatsResult, er
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *PostgresStore) statsTotal(limit int) ([]StatsResult, error) {
|
func (s *PostgresStore) statsTotal(limit int) ([]StatsResult, error) {
|
||||||
return nil, nil
|
uniquePasswordStmt := `select count(*) from (select distinct password from login_attempts) as temp`
|
||||||
|
uniqueUsernameStmt := `select count(*) from (select distinct username from login_attempts) as temp`
|
||||||
|
uniqueIPStmt := `select count(*) from (select distinct remote_ip from login_attempts) as temp`
|
||||||
|
uniqueCountryStmt := `select count(*) from (select distinct country from login_attempts) as temp`
|
||||||
|
attemptsCountStmt := `select count(1) from login_attempts`
|
||||||
|
|
||||||
|
var uniquePasswordsCount int
|
||||||
|
if err := s.db.QueryRow(uniquePasswordStmt).Scan(&uniquePasswordsCount); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
var uniqueUsernameCount int
|
||||||
|
if err := s.db.QueryRow(uniqueUsernameStmt).Scan(&uniqueUsernameCount); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
var uniqueIPCount int
|
||||||
|
if err := s.db.QueryRow(uniqueIPStmt).Scan(&uniqueIPCount); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
var uniqueCountryCount int
|
||||||
|
if err := s.db.QueryRow(uniqueCountryStmt).Scan(&uniqueCountryCount); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
var attemptsCount int
|
||||||
|
if err := s.db.QueryRow(attemptsCountStmt).Scan(&attemptsCount); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return []StatsResult{
|
||||||
|
{Name: "UniquePasswords", Count: uniquePasswordsCount},
|
||||||
|
{Name: "UniqueUsernames", Count: uniqueUsernameCount},
|
||||||
|
{Name: "UniqueIPs", Count: uniqueIPCount},
|
||||||
|
{Name: "UniqueCountries", Count: uniqueCountryCount},
|
||||||
|
{Name: "TotalLoginAttempts", Count: attemptsCount},
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user