DotNetNuke already contains a lot of useful logging information that can help with problems on your site – these are all covered on the debugging category on the Wiki, but the two most common ones are the event viewer and log4net . However both of them have some draw-backs.
Whilst the event viewer log’s both exceptions and events, allowing site administrators to see changes on the site, it primary use case is for successfully installed websites and it isn’t as useful for sites failing to install or upgrade (though users can view the EventLog table in the upgrade scenario to see if it helps provide useful information)
Log4Net is much better placed to deal with install/upgrade issues, but it’s default setting is “Error” so whilst that will catch any failing issues during an install/upgrade errors, its only logging failures and not success. Whilst this can be changed to “All”, it’s rare a user will think of doing this before an install so by the time you change it you’ll likely lost the useful information. In addition, “All” is very verbose as it logs a huge amount of information.
To address these concerns and help user diagnose errors that occur during installation, upgrade and extension installation (and any changes made in configuration files via the XMLMerge functionality), we’ve added a new “Installer” log in DotNetNuke 7.0. This log is enabled by default, and cannot be disabled. In addition, it logs both successful and unsuccessful operations (i.e. information and errors), as well as (where sensible) logging the beginning and ending of operations.
As this logging happens in much more focused areas, we’ve also added additional granular logging. For instance during initial installation we test permissions by creating a test file and folder – previously if this failed we could only alert you to the permissions being wrong, but now the logging is at a more granular level, so you could see the exact step that failed. In this example rather than confirming whether or not file permissions as a whole are correct, users can now see the 4 individual checks – this would help with issues where for instance read/write permissions were set, but modify was not.
11/8/2012 2:43:20 PM [INFO] DotNetNuke.Services.Upgrade.Internals.Steps.BaseInstallationStep Folder Creation Check
11/8/2012 2:43:20 PM [INFO] DotNetNuke.Services.Upgrade.Internals.Steps.BaseInstallationStep File Creation Check
11/8/2012 2:43:20 PM [INFO] DotNetNuke.Services.Upgrade.Internals.Steps.BaseInstallationStep File Deletion Check
11/8/2012 2:43:20 PM [INFO] DotNetNuke.Services.Upgrade.Internals.Steps.BaseInstallationStep Folder Deletion Check
The “Installer” log files can be found in the usual location of portals/_default/logs , and will have a name similar to InstallerLog2012118.resources (the .resources extension is used to ensure no-one can download your log files even if they work out the URL). In addition, users can log in as host (superuser) and go to host->host settings, click the “Logs” tab and view the contents of these (and other) logs
This has been a popular request on the Community Exchange , and we hope that you will find it useful.