# Logging powerPLM (powerFLC) uses [Apache log4net](https://logging.apache.org/log4net/) as core logging library, and additionally [PostSharp Diagnostics](http://doc.postsharp.net/5.0/logging) for extended Debug logging. By default, all the logs are stored in a logfile located in *'C:\\Users\\\{USER}\\AppData\\Local\\coolOrange\\powerFLC\\Logs\\powerFLC.log'* and it contains only Infos, Warnings and Errors. The log4net settings file is located in *C:\\Program Files\\coolOrange\\Modules\\powerFLC\\powerFLC.log4net*.\ Further information about log4Net Configurations can be found [here](https://logging.apache.org/log4net/release/manual/configuration.html). You can change the logging behavior of: > - the {ref}`Workflows ` > - the {ref}`Vault Menu ` Addin > - the {ref}`powerShell IDE ` ## When to change the logging behavior? When you have issues or when you want to get a more detailed knowledge about what went wrong, you can increase the {doc}`powerjobs_processor:logging/log_level`. ```{note} When changing the loglevel to *DEBUG* [PostSharp Diagnostics](http://doc.postsharp.net/5.0/logging) will be enabled and will log all the function calls into the log files. This could cause performance issues ``` Additionally you can change the logfile location or integrate the logging mechanism into your administrative environment by using build in EventLogMessages etc. ## Workflows When you need to get more details of errors that happen for {doc}`Sample or Custom Workflows `, this are the right places to increasing the {doc}`powerjobs_processor:logging/log_level`. Since workflows consists of [powerJobs Processor Jobs](powerjobs_processor:jobprocessor/jobs), they are writing directly to the {ref}`powerJobs Processor - Trace Window ` and its {ref}`powerjobs_processor:logging:logfile` located in *'C:\\Users\\\{USER}\\AppData\\Local\\coolOrange\\powerJobs Processor\\Logs\\powerJobs Processor.log'* by default.\ Therefore the {ref}`powerJobs - JobProcessor Addin ` sections are the right places where you want to configure the logging behavior for workflow jobs like {ref}`workflows/transfer_item_boms:Sample.TransferItemBOMs`. The following sections are used to control the logging behavior for the *Cmdlets*. ```{code-block} xml :lineno-start: 63 ... ... ``` Both of them make use of the following main *LogAppender* by default: ### LogFile The *FileAppender* is the main appender and most loggers us it: ```{code-block} xml :lineno-start: 4 ``` If you want to change the {doc}`powerjobs_processor:logging/log_level` for the logfile, please visit in the configuration file in the lines: ```{code-block} xml :lineno-start: 57 ``` In that root element, you can configure the logginglevel for all appenders. You could set the level to "DEBUG", than all the appenders will log in debug.\ In the line ```{code-block} xml :lineno-start: 6 ``` you can configure the outputpath and name of the logfile. ## Vault Menu Addin Following section is used to control the logging behaviour for the *Vault Menu extension*: ```{code-block} xml :lineno-start: 62 ``` Only the {ref}`LogFile ` appender is used. ## PowerShell IDE When using the powerFLC cmdlets in powerShell environments, or when debugging or creating workflows in powerShell IDEs, all the logs that would be shown in the {ref}`powerJobs Processor - Trace Window ` are written into the powerShell *console window*. In order to customize the logging level in the console window, visit following appender: ## ColoredConsoleAppender *ColoredConsoleAppenders* are working for powerShell IDE's that support console windows. ```{code-block} xml :lineno-start: 24 ``` In the lines ```{code-block} xml :lineno-start: 51 ``` you can configure the required {doc}`powerjobs_processor:logging/log_level`. You could set the minimal filter level to "DEBUG", than all the levels between the range Debug and Fatal will be logged. We are using a ColoredConsoleAppender, therefore you could also change the colors of the messages, depending on their log level: ```{code-block} xml :lineno-start: 26 ``` ```{admonition} Troubleshooting However the **powerShell ISE** currently does not support [console logs](logging:coloredconsoleappender) at all. ```