Add configuration example to README
[beam_stats.git] / README.md
1 beam_stats
2 ==========
3
4 Periodically collects and pushes VM metrics to arbitrary consumers. Defaults to
5 StatsD and includes off-by-default implementations for Graphite
6 (`beam_stats_consumer_graphite`) and CSV file (`beam_stats_consumer_csv`)
7 consumers).
8
9 Essentially like `folsomite`, but better. Better in the following ways:
10
11 - More-general: consumers other than graphite can be defined
12 - More-focused: only concerned with VM metrics, while `folsomite` ships off
13 _everything_ from `folsom` (in addition to VM metrics)
14 - Easier-to-reason-about implementation: well-defined metrics-to-binary
15 conversions, as opposed to the nearly-arbitrary term-to-string conversions
16 used in `folsomite`
17 - Spec'd, tested and Dialyzed
18
19 #### Configure consumers
20
21 ```erlang
22 {env,
23 [ {production_interval , 30000}
24 , {consumers,
25 [ {beam_stats_consumer_statsd,
26 [ {consumption_interval , 60000}
27 , {dst_host , "localhost"}
28 , {dst_port , 8125}
29 , {src_port , 8124}
30 ]}
31 , {beam_stats_consumer_graphite,
32 [ {consumption_interval , 60000}
33 , {host , "localhost"}
34 , {port , 2003}
35 , {timeout , 5000}
36 ]}
37 , {beam_stats_consumer_csv,
38 [ {consumption_interval , 60000}
39 , {path , "beam_stats.csv"}
40 ]}
41
42 , {some_custom_consumer_module,
43 [ {foo, "abc"}
44 , {bar, 123}
45 ]}
46
47 ]}
48 ]}
49 ```
This page took 0.059257 seconds and 4 git commands to generate.