allow system log to be cleared
This commit is contained in:
parent
2a12744cd5
commit
db73052ee5
@ -156,6 +156,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<br /><br />
|
||||||
|
<button type="button" class="btn btn-danger" @onclick="ClearLog">@Localizer["Clear"]</button>
|
||||||
</TabPanel>
|
</TabPanel>
|
||||||
</TabStrip>
|
</TabStrip>
|
||||||
<br /><br />
|
<br /><br />
|
||||||
@ -222,24 +224,39 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
private async Task SaveConfig()
|
private async Task SaveConfig()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var settings = new Dictionary<string, object>();
|
var settings = new Dictionary<string, object>();
|
||||||
settings.Add("DetailedErrors", _detailederrors);
|
settings.Add("DetailedErrors", _detailederrors);
|
||||||
settings.Add("Logging:LogLevel:Default", _logginglevel);
|
settings.Add("Logging:LogLevel:Default", _logginglevel);
|
||||||
settings.Add("Logging:LogLevel:Notify", _notificationlevel);
|
settings.Add("Logging:LogLevel:Notify", _notificationlevel);
|
||||||
settings.Add("UseSwagger", _swagger);
|
settings.Add("UseSwagger", _swagger);
|
||||||
settings.Add("PackageService", _packageservice);
|
settings.Add("PackageService", _packageservice);
|
||||||
await SystemService.UpdateSystemInfoAsync(settings);
|
await SystemService.UpdateSystemInfoAsync(settings);
|
||||||
AddModuleMessage(Localizer["Success.UpdateConfig.Restart"], MessageType.Success);
|
AddModuleMessage(Localizer["Success.UpdateConfig.Restart"], MessageType.Success);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
await logger.LogError(ex, "Error Saving Configuration");
|
await logger.LogError(ex, "Error Saving Configuration");
|
||||||
AddModuleMessage(Localizer["Error.UpdateConfig"], MessageType.Error);
|
AddModuleMessage(Localizer["Error.UpdateConfig"], MessageType.Error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async Task ClearLog()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
await SystemService.UpdateSystemInfoAsync("Log", "Clear");
|
||||||
|
_log = string.Empty;
|
||||||
|
AddModuleMessage(Localizer["Success.ClearLog"], MessageType.Success);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
await logger.LogError(ex, "Error Clearing Log");
|
||||||
|
AddModuleMessage(Localizer["Error.ClearLog"], MessageType.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private async Task RestartApplication()
|
private async Task RestartApplication()
|
||||||
{
|
{
|
||||||
|
@ -285,4 +285,13 @@
|
|||||||
<data name="Log.HelpText" xml:space="preserve">
|
<data name="Log.HelpText" xml:space="preserve">
|
||||||
<value>System log information for current day</value>
|
<value>System log information for current day</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Clear" xml:space="preserve">
|
||||||
|
<value>Clear</value>
|
||||||
|
</data>
|
||||||
|
<data name="Success.ClearLog" xml:space="preserve">
|
||||||
|
<value>System Log Has Been Successfully Cleared</value>
|
||||||
|
</data>
|
||||||
|
<data name="Error.ClearLog" xml:space="preserve">
|
||||||
|
<value>Ann Error Occurred Clearing The System Log</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
@ -84,7 +84,7 @@ namespace Oqtane.Controllers
|
|||||||
{
|
{
|
||||||
foreach(KeyValuePair<string, object> kvp in settings)
|
foreach(KeyValuePair<string, object> kvp in settings)
|
||||||
{
|
{
|
||||||
_configManager.AddOrUpdateSetting(kvp.Key, kvp.Value, false);
|
UpdateSetting(kvp.Key, kvp.Value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,7 +93,24 @@ namespace Oqtane.Controllers
|
|||||||
[Authorize(Roles = RoleNames.Host)]
|
[Authorize(Roles = RoleNames.Host)]
|
||||||
public void Put(string key, object value)
|
public void Put(string key, object value)
|
||||||
{
|
{
|
||||||
_configManager.AddOrUpdateSetting(key, value, false);
|
UpdateSetting(key, value);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void UpdateSetting(string key, object value)
|
||||||
|
{
|
||||||
|
switch (key)
|
||||||
|
{
|
||||||
|
case "Log":
|
||||||
|
string path = Path.Combine(_environment.ContentRootPath, "Content", "Log", "error.log");
|
||||||
|
if (System.IO.File.Exists(path))
|
||||||
|
{
|
||||||
|
System.IO.File.Delete(path);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
_configManager.AddOrUpdateSetting(key, value, false);
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,10 +20,10 @@ namespace Oqtane.Migrations.Tenant
|
|||||||
if (ActiveDatabase.Name != "Sqlite")
|
if (ActiveDatabase.Name != "Sqlite")
|
||||||
{
|
{
|
||||||
var folderEntityBuilder = new FolderEntityBuilder(migrationBuilder, ActiveDatabase);
|
var folderEntityBuilder = new FolderEntityBuilder(migrationBuilder, ActiveDatabase);
|
||||||
folderEntityBuilder.AddBooleanColumn("IsDeleted");
|
folderEntityBuilder.AddBooleanColumn("IsDeleted", true);
|
||||||
|
|
||||||
var fileEntityBuilder = new FileEntityBuilder(migrationBuilder, ActiveDatabase);
|
var fileEntityBuilder = new FileEntityBuilder(migrationBuilder, ActiveDatabase);
|
||||||
fileEntityBuilder.AddBooleanColumn("IsDeleted");
|
fileEntityBuilder.AddBooleanColumn("IsDeleted", true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -58,7 +58,7 @@ namespace Oqtane.Models
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Deprecated - not used
|
/// Deprecated - not used
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool IsDeleted { get; set; }
|
public bool? IsDeleted { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Object reference to the <see cref="Folder"/> object.
|
/// Object reference to the <see cref="Folder"/> object.
|
||||||
|
@ -62,7 +62,7 @@ namespace Oqtane.Models
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Deprecated - not used
|
/// Deprecated - not used
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool IsDeleted { get; set; }
|
public bool? IsDeleted { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// TODO: todoc what would this contain?
|
/// TODO: todoc what would this contain?
|
||||||
|
Reference in New Issue
Block a user