Commit Graph

115 Commits

Author SHA1 Message Date
Danny van Kooten 4ecaff85ac don't parse database driver from URL to also support mysql and sqlite. 2018-07-31 15:29:15 +02:00
Charley DAVID 98970057a2
Add support for FATHOM_DATABASE_URL 2018-07-31 08:41:08 -03:00
Danny van Kooten e90e100f18 fix query args for batch updating pageviews 2018-07-30 10:51:20 +02:00
Danny van Kooten b6f3be0e8e build postgres dsn string dynamically 2018-07-30 09:33:49 +02:00
Danny van Kooten 658581b744 show prettier error msg when connecting to database fails 2018-07-27 08:52:53 +02:00
SimePel a301dec1a3 add tests for LoadEnv func 2018-07-15 21:10:26 +07:00
SimePel 64b131f7f5 add separate function for loading env values from file 2018-07-15 21:09:44 +07:00
Danny van Kooten 2ef550bc27 reduce number of memory allocations in hot path 2018-07-15 10:05:03 +02:00
Danny van Kooten b2d881e31b optimize sql generation in datastore.InsertPageviews func. 2018-07-15 09:36:28 +02:00
Danny van Kooten 1fea0dc66f return error from datastore.Close func 2018-07-15 09:20:07 +02:00
Danny van Kooten 1e128e6ad7 use simple for loop in bulk datastore funcs for minor perf improvement 2018-07-15 07:37:45 +02:00
Danny van Kooten e6ee4d0a2e increase buffer size & buffer timeout for collecting pageviews 2018-07-15 07:34:06 +02:00
Danny van Kooten 82e1216bb3 discard http requests coming from browser prerenders. closes #13 2018-07-12 14:06:07 +02:00
Danny van Kooten a6f9b385a3 option to set sslmode param in postgres & mysql connections using FATHOM_DATABASE_SSLMODE. closes #93 closes #90 closes #80 2018-07-12 13:37:52 +02:00
Danny van Kooten f2683d1f0c buffer insert & updates of pageviews for performance gain under heavy load. closes #24 2018-07-12 13:30:32 +02:00
Danny 42008ab83f get rid of session_id and move knowledge of previous pageview to client. this also gets rid of the (only) index on the pageviews table, allowing for much faster INSERT's. closes #14 2018-07-11 15:03:56 +02:00
Danny van Kooten 9b47ee27ef parse hostname from client instead of relying on http header. fixes #79 2018-06-28 10:37:02 +02:00
Danny 844c5996ff set 'Tk: N' header on resources loaded by client. #65 2018-06-13 11:15:18 +02:00
Danny 42cd00b8cd disregard requests to /collect with DNT header set to '1'. 2018-06-13 10:44:33 +02:00
Danny e795eb1ac1 print some info regardless of log level 2018-06-13 10:10:56 +02:00
Danny 7f61259df3 use mysql Config.FormatDSN to generate dsn conn string for mysql. closes #56 closes #60 2018-06-13 10:04:42 +02:00
Danny 958e653b1f set explicit charset for mysql tables to workaround key limit of 7xx bytes. #58 2018-06-13 09:56:32 +02:00
Danny 50c0d9ccd0 add NULLIF in group statement because of go null values = empty string 2018-06-08 16:00:32 +02:00
Danny e2294c4b6c fix postgres errors by converting to null in divisions. closes #54 relates to #52 2018-06-08 15:39:38 +02:00
Jay Nagpaul 0ab5d12e1b Fix Postgres Migration 2018-06-07 16:36:31 -04:00
Danny 7bf8978cb6 use a single http request to fetch all data for left-sidebar 2018-06-04 12:53:17 +02:00
Danny a72df6274f generate sql statement dynamically 2018-06-01 13:21:54 +02:00
Danny 8c6e07255f failsafe sql for referrer migrations 2018-06-01 13:21:40 +02:00
Danny 9db5b3808a return number of processed pageview from aggregator.Run 2018-06-01 12:12:15 +02:00
Danny bc86088607 set group during aggregation 2018-06-01 11:44:20 +02:00
Danny c9213b0b72 set pipe concat mode when using mysql 2018-06-01 11:44:11 +02:00
Danny 6f45edc790 fix groupby with null values 2018-06-01 11:43:59 +02:00
Danny c8a6da13e6 TODO comments so we know where to pick up 2018-05-30 13:40:59 +02:00
Danny b856477d2a fix sqlite datastore compat, concat does note xist there 2018-05-30 13:29:20 +02:00
Danny 071ea5ace0 split hostname and pathname in referrers table 2018-05-30 12:50:28 +02:00
Danny 32693be2b0 add make dist task && separate assets build from binary build 2018-05-29 14:52:34 +02:00
Danny df7496a80d add known_durations column and use that for calculating duration averages, instead of total # pageviews 2018-05-28 15:31:40 +02:00
Danny 3d9d09f2a7 print absolute path to database if db is sqlite 2018-05-28 13:03:28 +02:00
Danny eddb1e9566 write info level after connecting to database 2018-05-25 14:12:32 +02:00
Danny 05b2cc53a2 only turn relative path into absolute path 2018-05-23 14:52:38 +02:00
Danny 11b4e5e5b3 print message if using default config 2018-05-23 09:11:28 +02:00
Danny fc35d68926 output log messages during bootstrap, eg with config file location 2018-05-23 09:03:42 +02:00
Danny 7c3cecad09 use errorf log when database migrations fail 2018-05-22 16:20:43 +02:00
Danny 7adc5d3bec wip on chart implementation using d3 2018-05-22 12:23:17 +02:00
Danny da19c116b7 strip AMP & UTM vars from referrer urls. closes #37 2018-05-22 10:30:35 +02:00
Danny van Kooten 3b8a884991 godoc improvements 2018-05-21 11:54:01 +02:00
Danny 0039683b74 set header code when sessionstore returns err 2018-05-15 14:20:05 +02:00
Danny 47c6dc3ab7 add test for setting secret through env var 2018-05-15 14:15:47 +02:00
Danny 1bd093b8a4 add test for config.randomString func 2018-05-15 13:54:36 +02:00
Danny c30e5b3120 introduce datastore interface & stop relying on package var to retrieve db conn. relates to #29 2018-05-15 13:30:37 +02:00