public static void MonitorZooKeeperState() { if (_client == null) { return; } _client.MonitorZooKeeperState(); }
/// <summary> /// 定时比较本地配置与配置中心配置的版本值 /// </summary> private static void MonitorDisconfItemVersion() { try { IList <ConfigMetadataApiResult> changedList = new List <ConfigMetadataApiResult>(); IList <ConfigMetadataApiResult> list = _disconfWebApi.GetConfigMetadatas(); if (list == null || list.Count <= 0) { return; } foreach (ConfigMetadataApiResult item in list) { if (item == null) { continue; } if (!ConfigStorage.ContainsKey(item.Name)) { ConfigStorageItem configStorageItem = CreateConfigStorageItem(item.Name, item.Type, item.UpdateTime); if (!ConfigStorage.ContainsKey(configStorageItem.Name)) { ConfigStorage.Add(configStorageItem.Name, configStorageItem); changedList.Add(item); } } else { ConfigStorageItem configStorageItem = ConfigStorage[item.Name]; if (configStorageItem != null && configStorageItem.Version != item.UpdateTime) { changedList.Add(item); LogManager.GetLogger().Info(string.Format("ChangeItem:{0},Version_Old:{1},Version_New:{2}", item.Name, configStorageItem.Version, item.UpdateTime)); } } } StringBuilder sbChanged = new StringBuilder(); foreach (ConfigMetadataApiResult item in changedList) { if (item == null) { continue; } ReloadConfigItem(item); sbChanged.Append(item.Name).Append(" , "); } if (!DisconfClientSettings.DisableZooKeeper) { _zooKeeperClient.MonitorZooKeeperState(); } LogManager.GetLogger().Info(string.Format("DisconfClient.ConfigStorageManager.MonitorDisconfItemVersion,changed:{0}.items:{1}", changedList.Count, sbChanged)); } catch (Exception ex) { try { _disconfServerIsActive = false; LogManager.GetLogger().Error("定时比较本地配置与配置中心配置的版本值时出现异常!", ex); } catch { // ignored } } }