Server Log

Learn about the server log.

By default, the server logs are written to the following files:

  • CRM.designer: ..\web.data\log\designer.log
  • Aurea CRM web: ..\web.data\log\web.log

For details on logging on the server, see the article “How to Configure Logging on the server” at https://support.aurea.com.

Logging is configured in the settings.xml file, stored in the ..\system\settings directory. The XML element <Logging /> contains the relevant settings.
<Logging>
...
	<Writer filePath="..\web.data\log\web.log"
		name="fileLogWriter"
		maxSizeKB="8192"
		type="update.Lib.Logging.Writers.FileLogWriter,update.Lib" />
The log is written to the file specified by the filePath attribute. The log contains semicolon-separated output structured as follows:
Date;Time;Execution Span;Facility;Level;SessionID;Text
Adjust the logLevel attribute to increase/decrease the amount of information written to the log file:
<Logging>
	...
	<Channel logLevel="Info"
		fileLogWriter="fileLogWriter"
		formatterName="webLogFormatter" />

Possible values for logLevel: NoLogging, Emergency, Alert, Critical, Error, Warning, Notice, Info, Debug. Each level increases the amount of details logged.

Set the facilityFilterExclude attribute to a regular expression in order to filter which facilities are written to the log file.

Example: <Logging facilityFilterExclude ="(Configuration\.)">

This excludes all output from facilities containing "Configuration.".

Note: Using the Logging facility Configuration.Unit in debug mode logs (almost) all designer units requested by Aurea CRM web with their ID, configID and configuration name.

The core components of Aurea CRM can add additional information to the log (SQL statements, triggers, etc.). Check Web Trace in the Station Configuration (Aurea CRM win Rights module), to activate the statement log.

By default, session IDs are logged as unique random-generated numbers. Add originalSessionId ="true" to the log formatter definition to get the real IDs from the session cookies. This setting is available only tor the webLogFormatter.

In addition you can configure a syslog logger for central logging of multiple server (in an SaaS environment).

Example:
<Logging>
...
	<Channel logLevel="Warning"
		logLevelDebug="Debug"
		writerName="sysLogWriter"
		formatterName="sysLogFormatter" />
	<Writer name="sysLogWriter"
		host="127.0.0.1"
		port="514"
		protocol="udp"
		type="update.Lib.Logging.Writers.SysLogWriter,update.Lib" />
	<Formatter name="sysLogFormatter"
		logException="true"
		logMemory="True"
		maxMessageLength="1024"
		type="update.Web.Logging.WebSysLogFormatter,update.Web" />

You can define a fallback log writer and timeout in the <Channel> node.

Example (syslog falling back to web.log):

...
	<Channel writerName="sysLogWriter"
		fallbackWriterName="fileLogWriter"
		fallbackTimeout="0:05"

If an error occurs, logging automatically switches to the specified fallback writer. Logging periodically tries to reinitialize the original log writer. Default value for fallbackTimeout is 5 min.

Note: The value of fallbackTimeout is a .NET-compatible TimeSpan, e.g. for 5 minutes specify 0:05, for 10 seconds specify 0:00:10.