1. Home
  2. Docs
  3. Master profile
  4. Analysis profile
  5. Thread stack

Thread stack

The thread_stack section contains analysis instructions around the process stack content :

  • The stack_size_interest determines the preliminary filtering strategy used to retain the process stacks of interest for the analysis, and discard the ones (the vast majority in many cases) which are considered as useless.
    Strategies can be either :
    • known_size_strategy : the application is well known and the minimum size of stacks of interest is known up front.
      This is the recommended approach for any applicative profile.
    • auto_size_stragegy : the size is determined based on a random set of small recording snapshots (snapshot samples) which contain a high level of inactivity.
      This is the recommended approach for any generic or draft profile.
  • The keep_stacks section is complementary to the previous one and permits to retain the stacks in state running and locked from being discarded. Those are set to true by default.
  • The ufo section determines if the stacks of interest – that did not match one kind of pattern profile – must be isolated for further manual look up.
    This permits later on to enrich the pattern profiles.
    If activated, the ufo stacks are zipped and placed in the analysis working directory by default.
    Set the order_by to frequency to focus on the ufo stacks appearing the most frequently.
  • The ignored_stacks determines if the discarded stacks must be kept for review.
    If activated, the discarded stacks are zipped and placed in the analysis working directory by default.
  • The sorting key permits to sort the stacks in the analysis – like for example in the Task Sequence sheets – by thread_name, thread_id or recording appearance (original behavior).
    If not available, the sorting key is defined in the default setup (default_setup.xml) which is thread_id.
    Since Jeyzer 2.6
<thread_stack>

  <analysis_prefilter>
    <stack_size_interest>

      <strategy type="known">
        <auto_size_strategy>
          <scan_coverage snapshot_samples="10" snapshot_sample_percentage="30" percentage="98" stop_if_active_found="false" default_size="1"/>
         </auto_size_strategy>

         <known_size_strategy min="2"/>

      </strategy>

      <keep_stacks running="true" locked="true"/>

    </stack_size_interest>
  </analysis_prefilter>

  <ufo generation_enabled="true" zip_output_dir="${JEYZER_OUTPUT_DIR}/analysis" order_by="frequency"/>

  <ignored_stacks generation_enabled="false" zip_output_dir="${JEYZER_OUTPUT_DIR}/analysis"/>

  <sorting key="thread_name"/>

</thread_stack>