<commit_before>Logging
=======================

.. code-block:: bash

  LOG(LogLevel level, std::string prefix)

Built-in logging functionality has been provided to aid debugging.  To use the
logger, you must include the *Logger.h* header file. `std::cout` statements
should be generally avoided.  The `LOG(level, prefix)` macro should be used
for all logging/debugging needs.  The LOG macro uses the Logger class to
provide this functionality.  The Logger class should generally not be accessed
directly.  The macro returns a string stream object that can be used exactly
as `std::cout` for printing output.  Streamed in content is flushed to stdout
as soon as execution passes beyond the terminating semi-colon of the log
statement.  

A brief description of when to use which log level is given with the LogLevel
enum doxygen documentation. The following is a summary:

  * LEV_ERROR: Use for errors that require model code or input file
    modification/fixing (use extremely sparingly)

  * LEV_WARN: Use to report questionable simulation state (use extremely
    sparingly)
<commit_msg>adding a link to the logger<commit_after>.. _logging:

Logging
=======================

.. code-block:: bash

  LOG(LogLevel level, std::string prefix)

Built-in logging functionality has been provided to aid debugging.  To use the
logger, you must include the *Logger.h* header file. `std::cout` statements
should be generally avoided.  The `LOG(level, prefix)` macro should be used
for all logging/debugging needs.  The LOG macro uses the Logger class to
provide this functionality.  The Logger class should generally not be accessed
directly.  The macro returns a string stream object that can be used exactly
as `std::cout` for printing output.  Streamed in content is flushed to stdout
as soon as execution passes beyond the terminating semi-colon of the log
statement.  

A brief description of when to use which log level is given with the LogLevel
enum doxygen documentation. The following is a summary:

  * LEV_ERROR: Use for errors that require model code or input file
    modification/fixing (use extremely sparingly)

  * LEV_WARN: Use to report questionable simulation state (use extremely
    sparingly)

{'fraction_non_alphanumeric': 0.06916817359855335, 'fraction_numerical': 0.0, 'mean_word_length': 4.437346437346437, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, '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': '7624284', 'n_tokens_mistral': 566, 'n_tokens_neox': 543, 'n_words': 305}