<commit_before>recon
=====

Recon wants to be a set of tools usable in production to diagnose Erlang problems or inspect production environment safely.

Functions
---------

Functions will be added as the need arise (see: not covered by other tools far and wide for the time being).

Reduction count
---------------

To get the number of reduction of a sliding window in time on a given node. The call to `recon:reductions(5000, 5)` will check for the biggest reduction users for 5 seconds, and return the 5 bigger consumers:

    1> recon:reductions(5000, 5).
    [{<0.32.0>,
      {2348,{dets,open_file_loop2,2},{proc_lib,init_p,5}}},
     {<0.48.0>,
      {1977,{recon,'-sample/0-lc$^1/1-1-',3},{erlang,apply,2}}},
     {<0.15.0>,{0,{gen_server,loop,6},{proc_lib,init_p,5}}},
     {<0.31.0>,{0,{gen_server,loop,6},{proc_lib,init_p,5}}},
     {<0.47.0>,{0,{gen_server,loop,6},{proc_lib,init_p,5}}}]
    2> sys:get_status(pid(0,32,0)).
    {status,<0.32.0>,
            {module,dets},
            [[{1336,3384},
              {'$ancestors',[dets_sup,kernel_safe_sup,kernel_sup,<0.9.0>]},
              {312,1336},
              {'$initial_call',{dets,init,2}},
              {1340,5432}],<commit_msg>Adding warning of incomplete documentation<commit_after>recon
=====

Recon wants to be a set of tools usable in production to diagnose Erlang problems or inspect production environment safely.

The library is still a work in progress, so currently, the documentation here is not up to date.

Functions
---------

Functions will be added as the need arise (see: not covered by other tools far and wide for the time being).

Reduction count
---------------

To get the number of reduction of a sliding window in time on a given node. The call to `recon:reductions(5000, 5)` will check for the biggest reduction users for 5 seconds, and return the 5 bigger consumers:

    1> recon:reductions(5000, 5).
    [{<0.32.0>,
      {2348,{dets,open_file_loop2,2},{proc_lib,init_p,5}}},
     {<0.48.0>,
      {1977,{recon,'-sample/0-lc$^1/1-1-',3},{erlang,apply,2}}},
     {<0.15.0>,{0,{gen_server,loop,6},{proc_lib,init_p,5}}},
     {<0.31.0>,{0,{gen_server,loop,6},{proc_lib,init_p,5}}},
     {<0.47.0>,{0,{gen_server,loop,6},{proc_lib,init_p,5}}}]
    2> sys:get_status(pid(0,32,0)).
    {status,<0.32.0>,
            {module,dets},
            [[{1336,3384},
              {'$ancestors',[dets_sup,kernel_safe_sup,kernel_sup,<0.9.0>]},
              {312,1336},
              {'$initial_call',{dets,init,2}},
              {1340,5432}],
{'fraction_non_alphanumeric': 0.17912218268090155, 'fraction_numerical': 0.07512850929221036, 'mean_word_length': 3.23785594639866, 'pattern_counts': {'":': 0, '<': 17, '<?xml version=': 0, '>': 21, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1706045', 'n_tokens_mistral': 982, 'n_tokens_neox': 885, 'n_words': 223}