tilastokeskus/backend
2019-10-11 20:56:45 +03:00
..
config Bump deps and update code for Elixir 1.9 2019-10-10 20:49:05 +03:00
elixir-vagrant-setup@04ed4a181c Update vagrant setup 2019-09-15 21:36:10 +03:00
lib Update to 1.9 releases in place of Distillery 2019-10-11 20:56:45 +03:00
priv Move backend things to backend folder 2019-02-04 18:36:50 +02:00
static Move backend things to backend folder 2019-02-04 18:36:50 +02:00
test Move backend things to backend folder 2019-02-04 18:36:50 +02:00
.formatter.exs Move backend things to backend folder 2019-02-04 18:36:50 +02:00
.gitignore Move backend things to backend folder 2019-02-04 18:36:50 +02:00
LICENSE Move backend things to backend folder 2019-02-04 18:36:50 +02:00
mix.exs Bump deps and update code for Elixir 1.9 2019-10-10 20:49:05 +03:00
mix.lock Bump deps and update code for Elixir 1.9 2019-10-10 20:49:05 +03:00
package-lock.json Move backend things to backend folder 2019-02-04 18:36:50 +02:00
package.json Move backend things to backend folder 2019-02-04 18:36:50 +02:00
README.md Move backend things to backend folder 2019-02-04 18:36:50 +02:00
vagrant_provision.sh Add Vagrant setup for building 2019-09-11 21:03:10 +03:00
Vagrantfile Add Vagrant setup for building 2019-09-11 21:03:10 +03:00

Tilastokeskus

Tilastokeskus (also the name of an unrelated Finnish government agency) is a minimal analytics tool written in Elixir, using Raxx, and PostgreSQL storage. It is currently in early development, but I use it for my own sites.

The point of Tilastokeskus is to replace Google Analytics on my own sites, but as I use very few features from GA, the features in Tilastokeskus are also minimal. The motivation for writing my own analytics tool was to 1) have 1st party analytics, 2) get rid of GA, 3) learn Raxx.

Currently implemented features

  • Collection of data and storing to PostgreSQL
  • Full referrers with and without queries + domains
  • Simple session system with cookie to group one session's requests
  • Parsing of UA with ua_detector library
  • GeoIP with autoupdated MaxMind databases
  • Support for allowing a set of hostnames and forbidding others
  • Autoremoval of sensitive data with configurable interval

Future features

  • UI with different graphs to visualize data
  • Realtime view to show users currently on site
  • Take DNT header into account somehow

Won't be implemented (out of scope)

  • User accounts/authentication (use HTTP basic auth or SSH tunneling or something else)
  • Integrations to 3rd party systems
  • Invasive tracking (Flash cookies, dirty tricks)