mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-09-19 01:57:55 +08:00
Updating logger to flush immediately in development and to remove debug appenders in production.
--HG-- branch : dev
This commit is contained in:
@@ -3,19 +3,19 @@
|
||||
|
||||
<!-- Initialization -->
|
||||
|
||||
<PropertyGroup>
|
||||
<LibFolder>$(MSBuildProjectDirectory)\lib</LibFolder>
|
||||
<SrcFolder>$(MSBuildProjectDirectory)\src</SrcFolder>
|
||||
<BuildFolder>$(MSBuildProjectDirectory)\build</BuildFolder>
|
||||
<ArtifactsFolder>$(MSBuildProjectDirectory)\artifacts\Azure</ArtifactsFolder>
|
||||
|
||||
<CompileFolder>$(BuildFolder)\Compile</CompileFolder>
|
||||
<ServiceFolder>$(CompileFolder)\Orchard.Azure.CloudService.csx</ServiceFolder>
|
||||
<CloudRootFolder>$(ServiceFolder)\roles\Orchard.Azure.Web\approot</CloudRootFolder>
|
||||
<WebSitesFolder>$(CompileFolder)\_PublishedWebsites</WebSitesFolder>
|
||||
<StageFolder>$(BuildFolder)\Stage</StageFolder>
|
||||
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<LibFolder>$(MSBuildProjectDirectory)\lib</LibFolder>
|
||||
<SrcFolder>$(MSBuildProjectDirectory)\src</SrcFolder>
|
||||
<BuildFolder>$(MSBuildProjectDirectory)\build</BuildFolder>
|
||||
<MsBuildTasksFolder>$(MSBuildProjectDirectory)\buildtasks</MsBuildTasksFolder>
|
||||
<ArtifactsFolder>$(MSBuildProjectDirectory)\artifacts\Azure</ArtifactsFolder>
|
||||
|
||||
<CompileFolder>$(BuildFolder)\Compile</CompileFolder>
|
||||
<ServiceFolder>$(CompileFolder)\Orchard.Azure.CloudService.csx</ServiceFolder>
|
||||
<CloudRootFolder>$(ServiceFolder)\roles\Orchard.Azure.Web\approot</CloudRootFolder>
|
||||
<WebSitesFolder>$(CompileFolder)\_PublishedWebsites</WebSitesFolder>
|
||||
<StageFolder>$(BuildFolder)\Stage</StageFolder>
|
||||
</PropertyGroup>
|
||||
|
||||
<Import Project="$(LibFolder)\msbuild\MSBuild.Community.Tasks.Targets"/>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\Cloud Service\1.0\Visual Studio 10.0\Microsoft.CloudService.targets" />
|
||||
@@ -39,10 +39,10 @@
|
||||
|
||||
<!-- Building -->
|
||||
|
||||
<Target Name="Clean">
|
||||
<MSBuild Projects="$(SrcFolder)\Orchard.Azure\Orchard.Azure.sln" Targets="Clean" />
|
||||
<RemoveDir Directories="$(BuildFolder)" />
|
||||
</Target>
|
||||
<Target Name="Clean">
|
||||
<MSBuild Projects="$(SrcFolder)\Orchard.Azure\Orchard.Azure.sln" Targets="Clean" />
|
||||
<RemoveDir Directories="$(BuildFolder)" />
|
||||
</Target>
|
||||
|
||||
<Target Name ="Compile">
|
||||
<MSBuild
|
||||
@@ -62,17 +62,18 @@
|
||||
<!-- Testing - Azure only -->
|
||||
|
||||
<Target Name ="Test">
|
||||
|
||||
<CreateItem Include="$(CompileFolder)\*Azure.Tests.*dll">
|
||||
<Output TaskParameter="Include" ItemName="TestAssemblies" />
|
||||
</CreateItem>
|
||||
|
||||
<NUnit Assemblies="@(TestAssemblies)" ToolPath="$(LibFolder)\nunit" WorkingDirectory="$(CompileFolder)" />
|
||||
<CreateItem Include="$(CompileFolder)\*Azure.Tests.*dll">
|
||||
<Output TaskParameter="Include" ItemName="TestAssemblies" />
|
||||
</CreateItem>
|
||||
|
||||
<NUnit Assemblies="@(TestAssemblies)" ToolPath="$(LibFolder)\nunit" WorkingDirectory="$(CompileFolder)" />
|
||||
</Target>
|
||||
|
||||
<!-- Packaging -->
|
||||
|
||||
|
||||
<UsingTask AssemblyFile="$(MsBuildTasksFolder)\MSBuild.Orchard.Tasks.dll" TaskName="MSBuild.Orchard.Tasks.XmlDelete" />
|
||||
|
||||
<Target Name="Package-ForCloud">
|
||||
|
||||
<ItemGroup>
|
||||
@@ -112,6 +113,24 @@
|
||||
XPath="/log4net/root/priority/@value"
|
||||
Value="ERROR" />
|
||||
|
||||
<XmlDelete XmlFileName="$(CloudRootFolder)\Config\log4net.config"
|
||||
XPath="/log4net/appender[@name='debug-file']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(CloudRootFolder)\Config\log4net.config"
|
||||
XPath="/log4net/appender[@name='debugger']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(CloudRootFolder)\Config\log4net.config"
|
||||
XPath="/log4net/appender[@name='error-file']/filter" />
|
||||
|
||||
<XmlDelete XmlFileName="$(CloudRootFolder)\Config\log4net.config"
|
||||
XPath="/log4net/logger[@name='Orchard.Localization']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(CloudRootFolder)\Config\log4net.config"
|
||||
XPath="/log4net/logger[@name='Orchard']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(CloudRootFolder)\Config\log4net.config"
|
||||
XPath="/log4net/root/appender-ref[@ref='debug-file']" />
|
||||
|
||||
<Copy
|
||||
SourceFiles="$(SrcFolder)\Orchard.Azure\Orchard.Azure.CloudService\ServiceConfiguration.cscfg"
|
||||
DestinationFolder="$(StageFolder)"
|
||||
@@ -148,6 +167,6 @@
|
||||
</ItemGroup>
|
||||
|
||||
<MakeDir Directories="$(ArtifactsFolder)" />
|
||||
<Zip Files="@(Zip-Stage)" WorkingDirectory="$(StageFolder)" ZipFileName="$(ArtifactsFolder)\AzurePackage.zip" />
|
||||
<Zip Files="@(Zip-Stage)" WorkingDirectory="$(StageFolder)" ZipFileName="$(ArtifactsFolder)\AzurePackage.zip" />
|
||||
</Target>
|
||||
</Project>
|
||||
|
18
Orchard.proj
18
Orchard.proj
@@ -231,6 +231,24 @@
|
||||
XPath="/log4net/root/priority/@value"
|
||||
Value="ERROR" />
|
||||
|
||||
<XmlDelete XmlFileName="$(StageFolder)\Config\log4net.config"
|
||||
XPath="/log4net/appender[@name='debug-file']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(StageFolder)\Config\log4net.config"
|
||||
XPath="/log4net/appender[@name='debugger']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(StageFolder)\Config\log4net.config"
|
||||
XPath="/log4net/appender[@name='error-file']/filter" />
|
||||
|
||||
<XmlDelete XmlFileName="$(StageFolder)\Config\log4net.config"
|
||||
XPath="/log4net/logger[@name='Orchard.Localization']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(StageFolder)\Config\log4net.config"
|
||||
XPath="/log4net/logger[@name='Orchard']" />
|
||||
|
||||
<XmlDelete XmlFileName="$(StageFolder)\Config\log4net.config"
|
||||
XPath="/log4net/root/appender-ref[@ref='debug-file']" />
|
||||
|
||||
<!-- move over extra non-content files the csproj referenced -->
|
||||
<Copy SourceFiles="@(StageProjectAlteration-ExtraFiles->'$(SrcFolder)\Orchard.Web\%(Identity)')"
|
||||
DestinationFolder="$(StageFolder)\%(RecursiveDir)"/>
|
||||
|
@@ -8,7 +8,7 @@
|
||||
<root>
|
||||
<!-- Value of priority may be ALL, DEBUG, INFO, WARN, ERROR, FATAL, OFF -->
|
||||
<priority value="WARN" />
|
||||
|
||||
|
||||
<appender-ref ref="error-file" />
|
||||
<appender-ref ref="debug-file" />
|
||||
</root>
|
||||
@@ -28,7 +28,6 @@
|
||||
<priority value="WARN" />
|
||||
</logger>
|
||||
|
||||
|
||||
<!-- example of turning on the output from a component or namespace-->
|
||||
<!--
|
||||
<logger name="Orchard.Data.SessionLocator">
|
||||
@@ -36,32 +35,17 @@
|
||||
</logger>
|
||||
-->
|
||||
|
||||
|
||||
<!-- debugger: visual studio, if attached -->
|
||||
<appender name="debugger" type="log4net.Appender.DebugAppender">
|
||||
<!-- debugger: visual studio, if attached -->
|
||||
|
||||
<immediateFlush value="true" />
|
||||
<layout type="log4net.Layout.SimpleLayout" />
|
||||
</appender>
|
||||
|
||||
<!-- debug log: all messages, based on logger priority settings of namespaces above -->
|
||||
<appender name="debug-file" type="Orchard.Logging.OrchardFileAppender">
|
||||
<file value="App_Data/Logs/orchard-debug-" />
|
||||
<appendToFile value="true" />
|
||||
<immediateFlush value="false" />
|
||||
|
||||
<staticLogFileName value="false" />
|
||||
<rollingStyle value="Date" />
|
||||
<rollingStyleFrequency value="Once" />
|
||||
<datepattern value="dd.MM.yyyy-hh_mm_ss.fff'.log'" />
|
||||
|
||||
<layout type="log4net.Layout.PatternLayout">
|
||||
<conversionPattern value="%date [%thread] %logger - %message%newline" />
|
||||
</layout>
|
||||
</appender>
|
||||
|
||||
<!-- error log: only ERROR and FATAL subset of debug log -->
|
||||
<appender name="error-file" type="Orchard.Logging.OrchardFileAppender">
|
||||
<file value="App_Data/Logs/orchard-error-" />
|
||||
<!-- debug log: all messages, based on logger priority settings of namespaces above -->
|
||||
|
||||
<file value="App_Data/Logs/orchard-debug" />
|
||||
<appendToFile value="true" />
|
||||
|
||||
<!-- immediate flush on error log, to avoid data loss with sudden termination -->
|
||||
@@ -70,10 +54,29 @@
|
||||
<staticLogFileName value="false" />
|
||||
<rollingStyle value="Date" />
|
||||
<rollingStyleFrequency value="Once" />
|
||||
<datepattern value="dd.MM.yyyy-hh_mm_ss.fff'.log'" />
|
||||
<datepattern value="-dd.MM.yyyy-hh_mm_ss.fff'.log'" />
|
||||
|
||||
<layout type="log4net.Layout.PatternLayout">
|
||||
<conversionPattern value="%date [%thread] %logger - %message%newline" />
|
||||
</layout>
|
||||
</appender>
|
||||
|
||||
<appender name="error-file" type="Orchard.Logging.OrchardFileAppender">
|
||||
<!-- error log: only ERROR and FATAL subset of debug log -->
|
||||
|
||||
<file value="App_Data/Logs/orchard-error" />
|
||||
<appendToFile value="true" />
|
||||
|
||||
<!-- immediate flush on error log, to avoid data loss with sudden termination -->
|
||||
<immediateFlush value="true" />
|
||||
|
||||
<staticLogFileName value="false" />
|
||||
<rollingStyle value="Date" />
|
||||
<rollingStyleFrequency value="Once" />
|
||||
<datepattern value="-dd.MM.yyyy-hh_mm_ss.fff'.log'" />
|
||||
|
||||
<!-- only error and fatal messages end up in this target, even if child loggers accept lower priority -->
|
||||
<filter type="log4net.Filter.LevelRangeFilter">
|
||||
<!-- only error and fatal messages end up in this target, even if child loggers accept lower priority -->
|
||||
<levelMin value="ERROR" />
|
||||
</filter>
|
||||
|
||||
|
@@ -9,9 +9,9 @@ using Orchard.Core.Routable.Models;
|
||||
using Orchard.DisplayManagement;
|
||||
using Orchard.Themes;
|
||||
using Orchard.UI.Navigation;
|
||||
using Orchard.Settings;
|
||||
|
||||
namespace Orchard.Core.Containers.Controllers {
|
||||
using Orchard.Settings;
|
||||
|
||||
public class ItemController : Controller {
|
||||
private readonly IContentManager _contentManager;
|
||||
|
@@ -14,9 +14,9 @@ using Orchard.Localization;
|
||||
using Orchard.UI.Admin;
|
||||
using Orchard.UI.Navigation;
|
||||
using Orchard.UI.Notify;
|
||||
using Orchard.Settings;
|
||||
|
||||
namespace Orchard.Blogs.Controllers {
|
||||
using Orchard.Settings;
|
||||
|
||||
[ValidateInput(false), Admin]
|
||||
public class BlogAdminController : Controller, IUpdateModel {
|
||||
|
@@ -11,9 +11,9 @@ using Orchard.Logging;
|
||||
using Orchard.Services;
|
||||
using Orchard.Themes;
|
||||
using Orchard.UI.Navigation;
|
||||
using Orchard.Settings;
|
||||
|
||||
namespace Orchard.Blogs.Controllers {
|
||||
using Orchard.Settings;
|
||||
|
||||
[Themed]
|
||||
public class BlogController : Controller {
|
||||
|
@@ -165,7 +165,7 @@ namespace Orchard.Environment.Extensions {
|
||||
foreach(var dup in duplicates) {
|
||||
sb.Append(T("Extension '{0}' has been found from the following locations: {1}.\r\n", dup.Key, string.Join(", ", dup.Select(e => e.Location + "/" + e.Id))));
|
||||
}
|
||||
sb.Append(T("This issue can be usually by solved by removing or renaming the conflicting extension."));
|
||||
sb.Append(T("This issue can be usually solved by removing or renaming the conflicting extension."));
|
||||
Logger.Error(sb.ToString());
|
||||
throw new OrchardException(new LocalizedString(sb.ToString()));
|
||||
}
|
||||
|
Reference in New Issue
Block a user