diff options
author | Daniel Langesten <daniel.langest@gmail.com> | 2015-03-17 15:39:49 +0100 |
---|---|---|
committer | Daniel Langesten <daniel.langest@gmail.com> | 2015-03-17 15:39:49 +0100 |
commit | 79390ad4477dfef9660c40544d5afc23700c4009 (patch) | |
tree | b38027287af5d9e64a2e64859006b59d506c3657 /sqlQueries.go | |
parent | f2233e61c7383bec3100c916821cda703d56b00d (diff) |
fixed timezone and scanning
Diffstat (limited to 'sqlQueries.go')
-rw-r--r-- | sqlQueries.go | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/sqlQueries.go b/sqlQueries.go index 52b6b98..f9003a4 100644 --- a/sqlQueries.go +++ b/sqlQueries.go @@ -52,6 +52,10 @@ func fetchRawData(db *sql.DB, tim time.Time, limit int) (rDat []rawData, err err } loc, err := time.LoadLocation(TIMEZONE) + if err != nil { + log.Println("Couldn't load timezone") + return + } for rows.Next() { var r rawData var tim []byte @@ -201,20 +205,31 @@ func privatizeCleaned(db *sql.DB, t time.Time, conf Config) (err error) { return } + loc, err := time.LoadLocation(TIMEZONE) + if err != nil { + log.Println("Couldn't load timezone") + return + } var cd cleanedData for rows.Next() { - err = rows.Scan(&cd.ipbSrc, &cd.ipbDst, &cd.asSrc, &cd.asDst, &cd.portSrc, &cd.portDst, &cd.volume, &cd.time, &cd.occurences) + var tim []byte + err = rows.Scan(&cd.ipbSrc, &cd.ipbDst, &cd.asSrc, &cd.asDst, &cd.portSrc, &cd.portDst, &cd.volume, &tim, &cd.occurences) if err != nil { log.Println("Failed to scan row") return } + cd.time, err = time.ParseInLocation("2006-01-02 15:04:05", string(tim), loc) + if err != nil { + log.Println("Failed to parse timestamp") + return + } // Add differential privacy noise cd.occurences = diffpriv(cd.occurences, 1, conf.Epsilon) // Update the entry _, err := update.Exec(cd.occurences, time.Now(), cd.ipbSrc, cd.ipbDst, cd.asSrc, cd.asDst, cd.portSrc, cd.portDst, cd.volume, cd.time) if err != nil { - log.Println(err) + log.Println("Failed to update an entry:", err) } } return |