Skip to content

Aggregate simple web analytics events into Google Cloud Storage with Elixir

License

Notifications You must be signed in to change notification settings

corybuecker/exlytics

Repository files navigation

Exlytics

Exlytics is a simple, privacy-focused tool to gather web analytics; anything from page views to click-stream events. The events are cached in Redis and flushed to Google Cloud Storage on a regular basis.

Setup

  1. Ensure that you have a running Redis instance and set the URL in config/dev.exs.
  2. Create a Google Cloud Storage bucket and set the name in config/dev.exs.
  3. Export a service account key and ensure that the SA has access to write to the GCS bucket.
  4. Export an GOOGLE_APPLICATION_CREDENTIALS environment variable that points to the JSON key for the SA.

Running

Run iex -S mix and the server will automatically start. Visit localhost:8080 and a generic event will be saved to Redis.

Planned improvements

  1. Replace Redis with Erlang ETS.
  2. Replace the Google Service Account with Workload Identity.

About

Aggregate simple web analytics events into Google Cloud Storage with Elixir

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published