beam_stats.git
9 years agoMerge pull request #21 from puzza007/iolists
Siraaj Khandkar [Tue, 29 Sep 2015 12:36:58 +0000 (08:36 -0400)] 
Merge pull request #21 from puzza007/iolists

Switch payloads from binaries to IO lists.

To avoid generating un-reused binaries.

9 years agoUse iolists, where appropriate
Paul Oliver [Mon, 28 Sep 2015 16:04:16 +0000 (18:04 +0200)] 
Use iolists, where appropriate

9 years agoMerge pull request #20 from ibnfirnas/per-process-reductions 0.15.0
Siraaj Khandkar [Sun, 27 Sep 2015 23:32:13 +0000 (19:32 -0400)] 
Merge pull request #20 from ibnfirnas/per-process-reductions

Collect per process reductions deltas

9 years agoBump feature version.
Siraaj Khandkar [Sun, 27 Sep 2015 23:29:15 +0000 (19:29 -0400)] 
Bump feature version.

9 years agoTest deltas server GC.
Siraaj Khandkar [Sun, 27 Sep 2015 23:28:49 +0000 (19:28 -0400)] 
Test deltas server GC.

9 years agoFix request of next ETS key after deletion of previous
Siraaj Khandkar [Sun, 27 Sep 2015 23:28:00 +0000 (19:28 -0400)] 
Fix request of next ETS key after deletion of previous

9 years agoGC per-process reductions deltas table for dead PIDs
Siraaj Khandkar [Sun, 27 Sep 2015 23:05:59 +0000 (19:05 -0400)] 
GC per-process reductions deltas table for dead PIDs

9 years agoCollect reductions per process.
Siraaj Khandkar [Sun, 27 Sep 2015 22:28:28 +0000 (18:28 -0400)] 
Collect reductions per process.

9 years agoMerge pull request #19 from ibnfirnas/deltas-server 0.14.3
Siraaj Khandkar [Sun, 27 Sep 2015 21:15:41 +0000 (17:15 -0400)] 
Merge pull request #19 from ibnfirnas/deltas-server

Implement a generic deltas server and use it to manage: io, context_switches and reductions.

9 years agoManage global reductions delta ourselves
Siraaj Khandkar [Sun, 27 Sep 2015 21:07:30 +0000 (17:07 -0400)] 
Manage global reductions delta ourselves

We can get between-calls-delta directly from erlang:statistics(reductions),
but then if some other process also calls it - we'll get incorrect data on
the next call.
Managing deltas ourselves here, will at least reduce the possible callers to
only those with knowledge of our table ID.

9 years agoImplement deltas server, replacing beam_stats_state.
Siraaj Khandkar [Sun, 27 Sep 2015 20:11:03 +0000 (16:11 -0400)] 
Implement deltas server, replacing beam_stats_state.

To simplify collection of deltas.

9 years agoAdd Travis builds for OTP 18.0 and 18.1
Siraaj Khandkar [Sat, 26 Sep 2015 18:41:03 +0000 (14:41 -0400)] 
Add Travis builds for OTP 18.0 and 18.1

9 years agoUse hope without dependencies. 0.14.1
Siraaj Khandkar [Sat, 26 Sep 2015 18:27:47 +0000 (14:27 -0400)] 
Use hope without dependencies.

9 years agofeat: aggregate ETS per-table data, by table name 0.14.0
Siraaj Khandkar [Fri, 25 Sep 2015 13:49:04 +0000 (09:49 -0400)] 
feat: aggregate ETS per-table data, by table name

9 years agofix: add missing spec
Siraaj Khandkar [Fri, 25 Sep 2015 12:45:05 +0000 (08:45 -0400)] 
fix: add missing spec

9 years agofeat: prefix Graphite paths with current schema version 0.13.0
Siraaj Khandkar [Fri, 25 Sep 2015 12:25:09 +0000 (08:25 -0400)] 
feat: prefix Graphite paths with current schema version

9 years agofeat: reduce per-process granularity even further 0.12.0
Siraaj Khandkar [Thu, 24 Sep 2015 22:30:28 +0000 (18:30 -0400)] 
feat: reduce per-process granularity even further

In Graphite messages, replace references to specific PIDs with the string "PID".

9 years agoMerge pull request #13 from ibnfirnas/aggregate-anonymous-process-data 0.11.0
Siraaj Khandkar [Thu, 24 Sep 2015 05:41:17 +0000 (01:41 -0400)] 
Merge pull request #13 from ibnfirnas/aggregate-anonymous-process-data

Aggregate anonymous process data by process origin

9 years agofeat: aggregate anonymous process data by origin
Siraaj Khandkar [Thu, 24 Sep 2015 05:25:58 +0000 (01:25 -0400)] 
feat: aggregate anonymous process data by origin

9 years agofeat: stop recording process PIDs
Siraaj Khandkar [Thu, 24 Sep 2015 03:07:09 +0000 (23:07 -0400)] 
feat: stop recording process PIDs

with the exception of parent PIDs, which are expected to be the same for
multiple procs

9 years agoMerge pull request #12 from ibnfirnas/factor-and-abstract-graphite-msg 0.10.0
Siraaj Khandkar [Thu, 24 Sep 2015 01:57:15 +0000 (21:57 -0400)] 
Merge pull request #12 from ibnfirnas/factor-and-abstract-graphite-msg

Factor and abstract graphite msg

9 years agochore: remove finished TODO item
Siraaj Khandkar [Thu, 24 Sep 2015 01:48:52 +0000 (21:48 -0400)] 
chore: remove finished TODO item

9 years agofeat: use new msg abstraction in Graphite consumer
Siraaj Khandkar [Thu, 24 Sep 2015 01:42:19 +0000 (21:42 -0400)] 
feat: use new msg abstraction in Graphite consumer

9 years agofix: spec of beam_stats_msg_graphite:of_ets/3
Siraaj Khandkar [Thu, 24 Sep 2015 01:15:31 +0000 (21:15 -0400)] 
fix: spec of beam_stats_msg_graphite:of_ets/3

9 years agofeat: use new msg abstractions in StatsD consumer.
Siraaj Khandkar [Thu, 24 Sep 2015 01:14:39 +0000 (21:14 -0400)] 
feat: use new msg abstractions in StatsD consumer.

9 years agofix: list append when cons was intended.
Siraaj Khandkar [Thu, 24 Sep 2015 00:54:05 +0000 (20:54 -0400)] 
fix: list append when cons was intended.

9 years agofeat: implement beam_stats_msg_statsd_gauge abstraction
Siraaj Khandkar [Thu, 24 Sep 2015 00:10:35 +0000 (20:10 -0400)] 
feat: implement beam_stats_msg_statsd_gauge abstraction

9 years agofeat: implement beam_stats_msg_graphite:to_bin/1
Siraaj Khandkar [Wed, 23 Sep 2015 23:55:21 +0000 (19:55 -0400)] 
feat: implement beam_stats_msg_graphite:to_bin/1

9 years agofeat: handle processes in graphite_msg
Siraaj Khandkar [Wed, 23 Sep 2015 23:30:29 +0000 (19:30 -0400)] 
feat: handle processes in graphite_msg

9 years agofeat: handle ETS tables in graphite_msg
Siraaj Khandkar [Wed, 23 Sep 2015 21:53:49 +0000 (17:53 -0400)] 
feat: handle ETS tables in graphite_msg

9 years agorefactor: re-use graphite_msg cons/3
Siraaj Khandkar [Wed, 23 Sep 2015 13:54:52 +0000 (09:54 -0400)] 
refactor: re-use graphite_msg cons/3

9 years agofeat: handle scalar beam_stats values in graphite_msg
Siraaj Khandkar [Wed, 23 Sep 2015 13:52:32 +0000 (09:52 -0400)] 
feat: handle scalar beam_stats values in graphite_msg

9 years agofeat: implement beam_stats_msg_graphite:of_memory/3
Siraaj Khandkar [Wed, 23 Sep 2015 13:35:26 +0000 (09:35 -0400)] 
feat: implement beam_stats_msg_graphite:of_memory/3

9 years agoRegister consumer process name. 0.9.0
Siraaj Khandkar [Wed, 23 Sep 2015 21:18:57 +0000 (17:18 -0400)] 
Register consumer process name.

9 years agofix: handling 'undefined' from erlang:process_info/2 0.8.2
Siraaj Khandkar [Tue, 22 Sep 2015 22:08:02 +0000 (18:08 -0400)] 
fix: handling 'undefined' from erlang:process_info/2

Process could die between the time we get its PID from erlang:processes() and
when we start calling erlang:process_info/2 on it; or even somewhere between
the process_info calls.

The choice is between returning partial info (that we were able to collect
before process died) and just skipping the process. For now, I'm choosing to
skip the process (throwing away any partial info collected).

9 years agoAdd MIT license.
Siraaj Khandkar [Sun, 20 Sep 2015 00:58:42 +0000 (20:58 -0400)] 
Add MIT license.

9 years agoMerge pull request #9 from ibnfirnas/test-full-produce-consume-cycle 0.8.1
Siraaj Khandkar [Sun, 20 Sep 2015 00:50:27 +0000 (20:50 -0400)] 
Merge pull request #9 from ibnfirnas/test-full-produce-consume-cycle

Test full produce consume cycle

9 years agoBump patch version to 0.8.1
Siraaj Khandkar [Sun, 20 Sep 2015 00:47:16 +0000 (20:47 -0400)] 
Bump patch version to 0.8.1

Due to addition of indirect, mockable data source module.

9 years agoTest the full produce-consume cycle for StatsD consumer.
Siraaj Khandkar [Sun, 20 Sep 2015 00:37:30 +0000 (20:37 -0400)] 
Test the full produce-consume cycle for StatsD consumer.

9 years agoTest stats collection.
Siraaj Khandkar [Sat, 19 Sep 2015 23:36:21 +0000 (19:36 -0400)] 
Test stats collection.

9 years agoConsolidate data source calls in 1, mockable, module.
Siraaj Khandkar [Sat, 19 Sep 2015 23:20:44 +0000 (19:20 -0400)] 
Consolidate data source calls in 1, mockable, module.

9 years agoMerge pull request #5 from ibnfirnas/allow-custom-nodename-in-statsd-consumer 0.8.0
Siraaj Khandkar [Fri, 18 Sep 2015 21:49:42 +0000 (17:49 -0400)] 
Merge pull request #5 from ibnfirnas/allow-custom-nodename-in-statsd-consumer

Allow custom, static node name in StatsD consumer.

9 years agoAllow custom, static node name in StatsD consumer.
Siraaj Khandkar [Fri, 18 Sep 2015 21:46:19 +0000 (17:46 -0400)] 
Allow custom, static node name in StatsD consumer.

9 years agoMerge pull request #3 from ibnfirnas/per-process-stats 0.7.0
Siraaj Khandkar [Fri, 18 Sep 2015 17:22:37 +0000 (13:22 -0400)] 
Merge pull request #3 from ibnfirnas/per-process-stats

Add process stats

9 years agoBump feature version from 0.6.0 to 0.7.0
Siraaj Khandkar [Fri, 18 Sep 2015 17:19:00 +0000 (13:19 -0400)] 
Bump feature version from 0.6.0 to 0.7.0

Due to addition of process metrics.

9 years agoSend per-process metrics to StatsD
Siraaj Khandkar [Fri, 18 Sep 2015 16:04:36 +0000 (12:04 -0400)] 
Send per-process metrics to StatsD

9 years agoDefine process ancestry as its own data type.
Siraaj Khandkar [Thu, 17 Sep 2015 15:26:22 +0000 (11:26 -0400)] 
Define process ancestry as its own data type.

9 years agoSketch process origin identification.
Siraaj Khandkar [Wed, 16 Sep 2015 23:18:30 +0000 (19:18 -0400)] 
Sketch process origin identification.

9 years agoImplement printing process stats.
Siraaj Khandkar [Wed, 16 Sep 2015 22:00:53 +0000 (18:00 -0400)] 
Implement printing process stats.

9 years agoRemove default processes count totals.
Siraaj Khandkar [Wed, 16 Sep 2015 21:58:26 +0000 (17:58 -0400)] 
Remove default processes count totals.

9 years agoCollect processes stats.
Siraaj Khandkar [Sun, 13 Sep 2015 19:05:20 +0000 (15:05 -0400)] 
Collect processes stats.

9 years agoMerge pull request #2 from ibnfirnas/per-ets-table-stats 0.6.0
Siraaj Khandkar [Tue, 15 Sep 2015 21:13:06 +0000 (17:13 -0400)] 
Merge pull request #2 from ibnfirnas/per-ets-table-stats

Per ets table stats

9 years agoLimit number of StatsD messages per packet.
Siraaj Khandkar [Tue, 15 Sep 2015 21:07:02 +0000 (17:07 -0400)] 
Limit number of StatsD messages per packet.

To a configurable amount.

9 years agoCollect ETS per-table memory and size.
Siraaj Khandkar [Tue, 15 Sep 2015 00:05:49 +0000 (20:05 -0400)] 
Collect ETS per-table memory and size.

Handled only by the StatsD consumer.

9 years agoRefactor beam_stats_state
Siraaj Khandkar [Wed, 26 Aug 2015 04:31:06 +0000 (00:31 -0400)] 
Refactor beam_stats_state

9 years agoImplement synchronous produce->consume cycle, for testing. 0.5.2
Siraaj Khandkar [Wed, 26 Aug 2015 04:00:27 +0000 (00:00 -0400)] 
Implement synchronous produce->consume cycle, for testing.

9 years agoFix not-updated previous stats state values. 0.5.1
Siraaj Khandkar [Tue, 25 Aug 2015 13:16:06 +0000 (09:16 -0400)] 
Fix not-updated previous stats state values.

9 years agoAdd run_queue 0.5.0
Siraaj Khandkar [Tue, 25 Aug 2015 00:50:44 +0000 (20:50 -0400)] 
Add run_queue

9 years agoAdd reductions delta. 0.4.0
Siraaj Khandkar [Tue, 25 Aug 2015 00:33:22 +0000 (20:33 -0400)] 
Add reductions delta.

9 years agoTrack context_switches delta. 0.3.0
Siraaj Khandkar [Tue, 25 Aug 2015 00:06:24 +0000 (20:06 -0400)] 
Track context_switches delta.

9 years agoTrack IO deltas. 0.2.0
Siraaj Khandkar [Mon, 24 Aug 2015 23:22:01 +0000 (19:22 -0400)] 
Track IO deltas.

9 years agoRemove all consumers from default config. 0.1.1
Siraaj Khandkar [Mon, 24 Aug 2015 17:44:28 +0000 (13:44 -0400)] 
Remove all consumers from default config.

9 years agoInclude the metric type in it's name. 0.1.0
Siraaj Khandkar [Sun, 23 Aug 2015 22:04:06 +0000 (18:04 -0400)] 
Include the metric type in it's name.

9 years agoRemove old example data.
Siraaj Khandkar [Sun, 23 Aug 2015 17:01:23 +0000 (13:01 -0400)] 
Remove old example data.

9 years agoExpand consumer config description.
Siraaj Khandkar [Sun, 23 Aug 2015 17:00:08 +0000 (13:00 -0400)] 
Expand consumer config description.

9 years agoImprove README
Siraaj Khandkar [Sun, 23 Aug 2015 16:44:33 +0000 (12:44 -0400)] 
Improve README

9 years agoRe-align text.
Siraaj Khandkar [Fri, 21 Aug 2015 13:49:19 +0000 (09:49 -0400)] 
Re-align text.

9 years agoSpecify the module responsible for StatsD consumption
Siraaj Khandkar [Fri, 21 Aug 2015 13:48:14 +0000 (09:48 -0400)] 
Specify the module responsible for StatsD consumption

9 years agoBump patch version to 0.0.1 0.0.1
Siraaj Khandkar [Fri, 21 Aug 2015 13:43:42 +0000 (09:43 -0400)] 
Bump patch version to 0.0.1

due to the switch from atom() to, the more-explicit, module() type.

9 years agoMerge pull request #1 from puzza007/use-module-type
Siraaj Khandkar [Fri, 21 Aug 2015 13:37:27 +0000 (09:37 -0400)] 
Merge pull request #1 from puzza007/use-module-type

Use module() instead of atom() where applicable

9 years agoUse module() instead of atom() where applicable
Paul Oliver [Fri, 21 Aug 2015 08:55:06 +0000 (10:55 +0200)] 
Use module() instead of atom() where applicable

9 years agoRemove CI for OTP R16 and 18. 0.0.0
Siraaj Khandkar [Thu, 20 Aug 2015 16:46:46 +0000 (12:46 -0400)] 
Remove CI for OTP R16 and 18.

R16 doesn't like queue:queue(A) and wants queue() instead - WONTFIX.
18 doesn't like dict(), used in proper, - need to upgrade proper and/or make
sure hope only requires it for testing, not when pulled-in as a dep.

9 years agoSetup Travis CI
Siraaj Khandkar [Thu, 20 Aug 2015 16:41:14 +0000 (12:41 -0400)] 
Setup Travis CI

9 years agoAdd configuration example to README
Siraaj Khandkar [Thu, 20 Aug 2015 16:33:32 +0000 (12:33 -0400)] 
Add configuration example to README

9 years agoTurn-off Graphite and CSV consumers by default.
Siraaj Khandkar [Thu, 20 Aug 2015 16:25:59 +0000 (12:25 -0400)] 
Turn-off Graphite and CSV consumers by default.

9 years agoMove full dependency info from test to main rebar.config
Siraaj Khandkar [Thu, 20 Aug 2015 16:18:42 +0000 (12:18 -0400)] 
Move full dependency info from test to main rebar.config

9 years agoRemove superfluous tests.
Siraaj Khandkar [Thu, 20 Aug 2015 14:52:33 +0000 (10:52 -0400)] 
Remove superfluous tests.

9 years agoTest StatsD consumer's send.
Siraaj Khandkar [Thu, 20 Aug 2015 14:46:03 +0000 (10:46 -0400)] 
Test StatsD consumer's send.

9 years agoLog with error logger.
Siraaj Khandkar [Thu, 20 Aug 2015 04:47:16 +0000 (00:47 -0400)] 
Log with error logger.

9 years agoAvoid Dialyzing meck.
Siraaj Khandkar [Thu, 20 Aug 2015 04:29:19 +0000 (00:29 -0400)] 
Avoid Dialyzing meck.

9 years agoUp test run verbosity.
Siraaj Khandkar [Thu, 20 Aug 2015 02:12:49 +0000 (22:12 -0400)] 
Up test run verbosity.

9 years agoAdd produce method to force production on-demand.
Siraaj Khandkar [Wed, 19 Aug 2015 21:23:18 +0000 (17:23 -0400)] 
Add produce method to force production on-demand.

To help with testing.

9 years agoFix rebar call in test recipe.
Siraaj Khandkar [Wed, 19 Aug 2015 21:21:40 +0000 (17:21 -0400)] 
Fix rebar call in test recipe.

9 years agoFlatten Graphite consumer options.
Siraaj Khandkar [Wed, 19 Aug 2015 15:48:31 +0000 (11:48 -0400)] 
Flatten Graphite consumer options.

9 years agoIgnore compiled tests.
Siraaj Khandkar [Wed, 19 Aug 2015 15:46:41 +0000 (11:46 -0400)] 
Ignore compiled tests.

9 years agoStandardize on defining consumption_interval first.
Siraaj Khandkar [Wed, 19 Aug 2015 15:24:46 +0000 (11:24 -0400)] 
Standardize on defining consumption_interval first.

9 years agoStart StatsD consumer by default.
Siraaj Khandkar [Wed, 19 Aug 2015 15:17:33 +0000 (11:17 -0400)] 
Start StatsD consumer by default.

9 years agoAdd hope to list of dep apps.
Siraaj Khandkar [Wed, 19 Aug 2015 15:02:23 +0000 (11:02 -0400)] 
Add hope to list of dep apps.

9 years agoReformat list of dep apps in app config.
Siraaj Khandkar [Wed, 19 Aug 2015 15:01:43 +0000 (11:01 -0400)] 
Reformat list of dep apps in app config.

9 years agoUse more-standard test case name prefixes.
Siraaj Khandkar [Wed, 19 Aug 2015 14:58:56 +0000 (10:58 -0400)] 
Use more-standard test case name prefixes.

9 years agoRemove nonexistent type: erlang:time()
Siraaj Khandkar [Tue, 11 Aug 2015 22:27:43 +0000 (18:27 -0400)] 
Remove nonexistent type: erlang:time()

9 years agoAdd some StatsD consumer tests.
Siraaj Khandkar [Tue, 11 Aug 2015 22:23:59 +0000 (18:23 -0400)] 
Add some StatsD consumer tests.

9 years agoFix unknown types.
Siraaj Khandkar [Tue, 11 Aug 2015 21:21:37 +0000 (17:21 -0400)] 
Fix unknown types.

9 years agoImplement StatsD consumer.
Siraaj Khandkar [Tue, 11 Aug 2015 21:13:49 +0000 (17:13 -0400)] 
Implement StatsD consumer.

9 years agoDialyze as part of 'all'
Siraaj Khandkar [Tue, 11 Aug 2015 21:13:00 +0000 (17:13 -0400)] 
Dialyze as part of 'all'

9 years agoWIP
Siraaj Khandkar [Tue, 11 Aug 2015 05:05:20 +0000 (01:05 -0400)] 
WIP

This page took 0.0831 seconds and 4 git commands to generate.