Logger#

class ansys.dyna.core.pre.dynalogging.Logger(level=logging.DEBUG, to_file=False, to_stdout=True, filename=FILE_NAME)#

Provides the logger used for each PyDyna pre session.

This class allows you to add handlers to the logger to output to a file or standard output.

Parameters:
levelint, optional

Logging level to filter the message severity allowed in the logger. The default is logging.DEBUG.

to_filebool, optional

Whether to write log messages to a file. The default is False.

to_stdoutbool, optional

Whether to write log messages to the standard output. The default is True.

filenamestr, optional

Name of the file to write log messages to if to_file=True. The default is FILE_NAME.

Examples

Demonstrate logger usage from an MAPDL instance mapdl. This logger is automatically created when an MAPDL instance is created.

>>> from ansys.mapdl.core import launch_mapdl
>>> mapdl = launch_mapdl(loglevel='DEBUG')
>>> mapdl._log.info('This is a useful message')
INFO -  -   -  - This is LOG debug message.

Import the global PYMAPDL logger and add a file output handler.

>>> import os
>>> from ansys.mapdl.core import LOG
>>> file_path = os.path.join(os.getcwd(), 'pymapdl.log')
>>> LOG.log_to_file(file_path)

Overview#

log_to_file

Add a file handler to logger.

log_to_stdout

Add a standard output handler to the logger.

setLevel

Change the log level of the object and the attached handlers.

add_child_logger

Add a child logger to the main logger.

add_instance_logger

Create a logger for an MAPDL instance.

add_handling_uncaught_expections

Redirect the output of an exception to the logger.

Import detail#

from ansys.dyna.core.pre.dynalogging import Logger

Attribute detail#

Logger.file_handler = None#
Logger.std_out_handler = None#
Logger.logger#
Logger.level = 0#
Logger.debug#
Logger.info#
Logger.warning#
Logger.error#
Logger.critical#
Logger.log#

Method detail#

Logger.log_to_file(filename=FILE_NAME, level=LOG_LEVEL)#

Add a file handler to logger.

Parameters:
filenamestr, optional

Name of the file where the logs are recorded. The default is FILE_NAME, in which case they are recorded in the 'pymapdl.log' file.

levelstr, optional

Level of logging. The default is LOG_LEVEL, in which case 'DEBUG' is used.

Examples

Write to the pymapdl.log file in the current working directory.

>>> from ansys.mapdl.core import LOG
>>> import os
>>> file_path = os.path.join(os.getcwd(), 'pymapdl.log')
>>> LOG.log_to_file(file_path)
Logger.log_to_stdout(level=LOG_LEVEL)#

Add a standard output handler to the logger.

Parameters:
filenamestr, optional

Name of the file where the logs are recorded. The default is FILE_NAME, in which case they are recorded in the 'pymapdl.log' file.

levelstr, optional

Level of logging. The default is LOG_LEVEL, in which case 'DEBUG' is used.

write_headersbool, optional

Whether to write the headers to the file. The default is True.

Logger.setLevel(level='DEBUG')#

Change the log level of the object and the attached handlers.

Parameters:
levelstr, optional

Level of logging. The default is 'DEBUG'.

Logger.add_child_logger(suffix, level=None)#

Add a child logger to the main logger.

This child logger is more general than an instance logger, which is designed to track the state of MAPDL instances.

If the logging level is in the arguments, a new logger with a reference to the _global logger handlers is created instead of a child logger.

Parameters:
suffixstr

Name of the logger.

levelstr, optional

Level of logging. The default is None.

Returns:
logging.logger

Logger class.

Logger.add_instance_logger(name, mapdl_instance, level=None)#

Create a logger for an MAPDL instance.

The MAPDL instance logger is a logger with an adapter that adds contextual information, such as the MAPDL instance name. This logger is returned, and you can use it to log events as a normal logger. It is also stored in the _instances field.

Parameters:
namestr

Name for the new logger.

mapdl_instanceansys.mapdl.core.mapdl._MapdlCore

MAPDL instance object. This should contain the name attribute.

Returns:
ansys.mapdl.core.logging.PymapdlCustomAdapter

Logger adapter customized to add MAPDL information to the logs. You can use this class to log events in the same way you use the logger class.

Raises:
Exception

You can only input strings as name to this method.

Logger.__getitem__(key)#
Logger.add_handling_uncaught_expections(logger)#

Redirect the output of an exception to the logger.