diff options
author | Corey Hulen <corey@hulen.com> | 2017-06-19 08:44:04 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-19 08:44:04 -0700 |
commit | 36f216cb7cb16958d98b3d77e121198596fd2213 (patch) | |
tree | ac2a5b79494749b3dffc2f5778092f2529c98d1a /app/admin.go | |
parent | fe48987a32fbd600458edd4e81318071ae558ba4 (diff) | |
download | chat-36f216cb7cb16958d98b3d77e121198596fd2213.tar.gz chat-36f216cb7cb16958d98b3d77e121198596fd2213.tar.bz2 chat-36f216cb7cb16958d98b3d77e121198596fd2213.zip |
PLT-6080 moving clustering to memberlist (#6499)
* PLT-6080 adding cluster discovery service
* Adding memberlist lib
* Adding memberlist lib
* WIP
* WIP
* WIP
* WIP
* Rolling back config changes
* Fixing make file
* Fixing config for cluster
* WIP
* Fixing system console for clustering
* Fixing default config
* Fixing config
* Fixing system console for clustering
* Tweaking hub setting
* Bumping up time
* merging vendor dir
* Updating vendor dir
* Fixing unit test
* Fixing bad merge
* Remove some testing code
* Moving comment
* PLT-6868 adding db ping retry
* Removing unused loc strings
* Adding defer to cancel
Diffstat (limited to 'app/admin.go')
-rw-r--r-- | app/admin.go | 44 |
1 files changed, 29 insertions, 15 deletions
diff --git a/app/admin.go b/app/admin.go index 103c4617b..4f8125106 100644 --- a/app/admin.go +++ b/app/admin.go @@ -19,12 +19,23 @@ import ( ) func GetLogs(page, perPage int) ([]string, *model.AppError) { - lines, err := GetLogsSkipSend(page, perPage) + var lines []string + if einterfaces.GetClusterInterface() != nil && *utils.Cfg.ClusterSettings.Enable { + lines = append(lines, "-----------------------------------------------------------------------------------------------------------") + lines = append(lines, "-----------------------------------------------------------------------------------------------------------") + lines = append(lines, einterfaces.GetClusterInterface().GetClusterId()) + lines = append(lines, "-----------------------------------------------------------------------------------------------------------") + lines = append(lines, "-----------------------------------------------------------------------------------------------------------") + } + + melines, err := GetLogsSkipSend(page, perPage) if err != nil { return nil, err } - if einterfaces.GetClusterInterface() != nil { + lines = append(lines, melines...) + + if einterfaces.GetClusterInterface() != nil && *utils.Cfg.ClusterSettings.Enable { clines, err := einterfaces.GetClusterInterface().GetLogs(page, perPage) if err != nil { return nil, err @@ -84,10 +95,14 @@ func InvalidateAllCaches() *model.AppError { InvalidateAllCachesSkipSend() if einterfaces.GetClusterInterface() != nil { - err := einterfaces.GetClusterInterface().InvalidateAllCaches() - if err != nil { - return err + + msg := &model.ClusterMessage{ + Event: model.CLUSTER_EVENT_INVALIDATE_ALL_CACHES, + SendType: model.CLUSTER_SEND_RELIABLE, + WaitForAllToSend: true, } + + einterfaces.GetClusterInterface().SendClusterMessage(msg) } return nil @@ -120,7 +135,8 @@ func ReloadConfig() { InitEmailBatching() } -func SaveConfig(cfg *model.Config) *model.AppError { +func SaveConfig(cfg *model.Config, sendConfigChangeClusterMessage bool) *model.AppError { + oldCfg := utils.Cfg cfg.SetDefaults() utils.Desanitize(cfg) @@ -132,7 +148,7 @@ func SaveConfig(cfg *model.Config) *model.AppError { return err } - if *utils.Cfg.ClusterSettings.Enable { + if *utils.Cfg.ClusterSettings.Enable && *utils.Cfg.ClusterSettings.ReadOnlyConfig { return model.NewLocAppError("saveConfig", "ent.cluster.save_config.error", nil, "") } @@ -149,14 +165,12 @@ func SaveConfig(cfg *model.Config) *model.AppError { } } - // oldCfg := utils.Cfg - // Future feature is to sync the configuration files - // if einterfaces.GetClusterInterface() != nil { - // err := einterfaces.GetClusterInterface().ConfigChanged(cfg, oldCfg, true) - // if err != nil { - // return err - // } - // } + if einterfaces.GetClusterInterface() != nil { + err := einterfaces.GetClusterInterface().ConfigChanged(cfg, oldCfg, sendConfigChangeClusterMessage) + if err != nil { + return err + } + } // start/restart email batching job if necessary InitEmailBatching() |