Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/carlo-colombo/meter
https://github.com/carlo-colombo/meter
Last synced: 15 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/carlo-colombo/meter
- Owner: carlo-colombo
- License: mit
- Created: 2016-05-28T21:02:13.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-11-18T19:23:39.000Z (about 8 years ago)
- Last Synced: 2024-12-01T21:47:11.967Z (about 1 month ago)
- Language: Elixir
- Size: 22.5 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.org/carlo-colombo/meter.svg?branch=master)](https://travis-ci.org/carlo-colombo/meter)
[![CircleCI](https://circleci.com/gh/carlo-colombo/meter.svg?style=svg)](https://circleci.com/gh/carlo-colombo/meter)
[![Hex.pm](https://img.shields.io/hexpm/v/meter.svg?style=flat-square)](https://hex.pm/packages/meter)
[![Coverage Status](https://coveralls.io/repos/github/carlo-colombo/meter/badge.svg?branch=master)](https://coveralls.io/github/carlo-colombo/meter?branch=master)# Meter
Track your elixir functions on Google Analytics
This module define one function to track function calls on google analtycs. The functions load parameters from the configuration. Minimum parameter to enable the tracking is :tid (that is the monitoring id from google analytics eg ```UA-12456132-1```). A default ```param_generator``` function is provided to generate the request to google analtycs.
### Configure the module
config :meter,
tid: "UA-123123123-1", #to track functions this is requested
param_generator: &Meter.Utils.param_generator/5 # the default function, could be replaced,
mapping: [
cid: :arg1, # a value to identify the user, is extracted from the function arguments, if not provided GA generate one for each request
ds: "server", # data source, "server" is the default
t: "pageview" # hit type, default is "pageview" ],
custom_dimensions: [:arg1, :arg2] # custom dimensions to send to ga, it mantain the order, to be used need additional configuration on ga## Installation
If [available in Hex](https://hex.pm/docs/publish), the package can be installed as:
1. Add meter to your list of dependencies in `mix.exs`:
def deps do
[{:meter, "~> 0.2.0"}]
end2. Ensure meter is started before your application:
def application do
[applications: [:meter]]
end