protected void btnLoggingSave_Click(object sender, EventArgs e) { if (!Page.IsValid || !IsUserAuthorized(Authorization.EDIT)) { return; } nbLoggingMessage.Visible = true; var logConfig = new RockLogSystemSettings { LogLevel = rblVerbosityLevel.SelectedValue.ConvertToEnum <RockLogLevel>(RockLogLevel.Off), DomainsToLog = cblDomainsToLog.SelectedValues, MaxFileSize = txtMaxFileSize.Text.AsInteger(), NumberOfLogFiles = txtFilesToRetain.Text.AsInteger() }; Rock.Web.SystemSettings.SetValue(SystemSetting.ROCK_LOGGING_SETTINGS, logConfig.ToJson()); RockLogger.Log.ReloadConfiguration(); ShowHideEditForm(false, logConfig); nbLoggingMessage.NotificationBoxType = NotificationBoxType.Success; nbLoggingMessage.Title = string.Empty; nbLoggingMessage.Text = "Setting saved successfully."; }
private void BindLoggingSettingsView(RockLogSystemSettings rockConfig) { if (rockConfig == null) { rockConfig = Rock.Web.SystemSettings.GetValue(SystemSetting.ROCK_LOGGING_SETTINGS).FromJsonOrNull <RockLogSystemSettings>(); } if (rockConfig == null) { return; } litVerbosityLevel.Text = rockConfig.LogLevel.ToString(); litDomains.Text = "<div class='col-sm-3'>" + rockConfig.DomainsToLog.JoinStrings("</div><div class='col-sm-3'>") + "</div>"; }
private void ShowHideEditForm(bool showEditForm, RockLogSystemSettings rockConfig) { if (showEditForm && IsUserAuthorized(Authorization.EDIT)) { pnlEditSettings.Visible = true; pnlReadOnlySettings.Visible = false; HideSecondaryBlocks(true); BindLoggingSettingsEdit(); } else { pnlEditSettings.Visible = false; pnlReadOnlySettings.Visible = true; HideSecondaryBlocks(false); BindLoggingSettingsView(rockConfig); } }
public static void SaveRockLogConfiguration(List <string> domainsToLog = null, RockLogLevel logLevel = RockLogLevel.Off, int maxFileSize = 0, int maxFiles = 0) { if (domainsToLog == null) { domainsToLog = new List <string> { RockLogDomains.Other }; } var logConfig = new RockLogSystemSettings { LogLevel = logLevel, DomainsToLog = domainsToLog, MaxFileSize = maxFileSize, NumberOfLogFiles = maxFiles }; Rock.Web.SystemSettings.SetValue(SystemSetting.ROCK_LOGGING_SETTINGS, logConfig.ToJson()); }
private void AddRockLogSystemSettings() { var defaultRockLogSystemSettings = new RockLogSystemSettings { DomainsToLog = new System.Collections.Generic.List <string>(), LogLevel = RockLogLevel.Off, NumberOfLogFiles = 20, MaxFileSize = 20 }; var serializedRockLog = defaultRockLogSystemSettings.ToJson(); RockMigrationHelper.AddGlobalAttribute(Rock.SystemGuid.FieldType.TEXT, Rock.Model.Attribute.SYSTEM_SETTING_QUALIFIER, string.Empty, SystemSetting.ROCK_LOGGING_SETTINGS, "Rock Logging System Settings", 0, serializedRockLog, SystemGuid.Attribute.DEFINED_VALUE_LOG_SYSTEM_SETTINGS, SystemSetting.ROCK_LOGGING_SETTINGS); }