recon
recon copied to clipboard
Collection of functions and scripts to debug Erlang in production.
@ferd would it be possible to add `ebin` directories under `_checkouts` to `script/app_deps.erl`? ```erlang main(_) -> AppFiles = filelib:wildcard("deps/*/ebin/*.app") ++ filelib:wildcard("apps/*/ebin/*.app") ++ filelib:wildcard("ebin/*.app") ++ filelib:wildcard("_build/default/lib/*/ebin/*.app") ++ filelib:wildcard("_checkouts/*/ebin/*.app"), %% _checkouts to_graphviz(read_deps(AppFiles))....
How do I incorporate it with my app? I have an existing app, which I connect to with remsh, and i want to make use of recon to introspect it....
I don't have some precise example here because they happened while recording my advent of code videos, but it looks like some maps I filter make tuple printing turn into...
See the second answer here http://stackoverflow.com/questions/13480462/erlang-can-i-get-a-list-of-all-currently-registered-atoms It's a neat trick which could of course break an any point, but I could imagine something which captured the current count, paused, then...
In 38 of 4258 cases, the result of this call is greater than 1. What can be the cause? The maximum value is 32.13506572.
The function `node_stats(N, Interval, FoldFun, Init)` has an issue with the returned number of reductions. This is because `erlang:statistics(reductions)` returns a tuple with `{Total, Count_since_last_call}` but those calls are global....
When using `recon_trace:calls`, I don't get any (meaningful) output on OTP26. Empty lines are printed for every function call, but I can't see the actual trace output: ``` $ rebar3...
``` recon_alloc:set_unit(gigabyte). recon_alloc:memory(used, max). 397.1961054801941 recon_alloc:memory(allocated, max). 411.4017143249512 ``` ``` free -h total used free shared buff/cache available Mem: 98Gi 71Gi 14Gi 419Mi 11Gi 24Gi Swap: 0B 0B 0B ```
https://github.com/ferd/recon/blob/98d0c80cbab050d7cd710e74fb751aad0b2bd468/src/recon_lib.erl#L95
I think coverage of this module will do not do harm. Scope based on based on https://ferd.github.io/recon/recon_trace.html#calls/3 I did not figured out how to process suite in ct to transform...