X-Git-Url: https://git.xandkar.net/?p=beam_stats.git;a=blobdiff_plain;f=README.md;h=b15ddc2d3d3ddf5727ec8f545cc4e3c25b9c6955;hp=3a5553699fc02fa92036b2c402ea9809c6e60b33;hb=HEAD;hpb=8c0788b23299b3d09f255cdfb1932f10da3545a2 diff --git a/README.md b/README.md index 3a55536..b15ddc2 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![Build Status](https://travis-ci.org/ibnfirnas/beam_stats.svg?branch=master)](https://travis-ci.org/ibnfirnas/beam_stats) +[![Build Status](https://travis-ci.org/xandkar/beam_stats.svg?branch=master)](https://travis-ci.org/xandkar/beam_stats) beam_stats ========== @@ -21,6 +21,21 @@ Essentially like `folsomite`, but different. Different in the following ways: + Well-defined metrics-to-binary conversions, as opposed to the nearly-arbitrary term-to-string conversions used in `folsomite` + Spec'd, tested and Dialyzed +- More detailed stats: + - **per-process**. As much process ancestry is collected as possible, then + anonymous processes are aggregated to their youngest-known, named + predecessor - this aggregation keeps the useful breadcrumbs, while + reducing the number of unique names from exploding, which + **avoids the associated problems**: + 1. not very useful when there're lots of short-lived processes + 2. exploading disk space usage in Whisper + - per-ETS-table + - and more ... see records defined in `include` directory + +For an example of using pre-process stats to track-down memory leaks, here's a +screenshot of the SSL connection process memory usage growth drop after upgrade +from 17.5 to 18.1 (back in 2015): +![SSL memory leak going away](screenshot--2015-10-05--18.41.30.jpg) ### Adding consumers @@ -36,6 +51,10 @@ Essentially like `folsomite`, but different. Different in the following ways: , {dst_port , 8125} , {src_port , 8124} , {num_msgs_per_packet , 10} + + % If you want to name your node something other than what + % erlang:node() returns: + , {static_node_name , <<"unicorn_at_rainbow">>} ]} , {beam_stats_consumer_graphite, [ {consumption_interval , 60000}