public override ElasticResponse RefreshFromConnection(SearchClient cli) { var rawHealth = cli.GetClusterHealth(); if (rawHealth.HasData) { var health = rawHealth.Data; Name = health.ClusterName; TotalNodeCount = health.NumberOfNodes; DataNodeCount = health.NumberOfDataNodes; ActiveShards = health.ActiveShards; ActivePrimaryShards = health.ActivePrimaryShards; InitializingShards = health.InitializingShards; RelocatingShards = health.RelocatingShards; UnassignedShards = health.UnassignedShards; StringStatus = health.Status; Indices = health.Indices.Select(i => new NodeIndexInfo { Name = i.Key, StringStatus = i.Value.Status, NumberOfShards = i.Value.NumberOfShards, NumberOfReplicas = i.Value.NumberOfReplicas, ActiveShards = i.Value.ActiveShards, ActivePrimaryShards = i.Value.ActivePrimaryShards, InitializingShards = i.Value.InitializingShards, RelocatingShards = i.Value.RelocatingShards, UnassignedShards = i.Value.UnassignedShards, Shards = i.Value.Shards.Select(s => new NodeIndexShardInfo { Name = s.Key, StringStatus = s.Value.Status, PrimaryActive = s.Value.PrimaryActive, ActiveShards = s.Value.ActiveShards, InitializingShards = s.Value.InitializingShards, RelocatingShards = s.Value.RelocatingShards, UnassignedShards = s.Value.UnassignedShards }).ToList() }).OrderBy(i => { int j; return(int.TryParse(i.Name, out j) ? j : 0); }).ToList(); } else { Indices = new List <NodeIndexInfo>(); } return(rawHealth); }
public override ElasticResponse RefreshFromConnection(SearchClient cli) { var rawHealth = cli.GetClusterHealth(); if (rawHealth.HasData) { var health = rawHealth.Data; Name = health.ClusterName; TotalNodeCount = health.NumberOfNodes; DataNodeCount = health.NumberOfDataNodes; ActiveShards = health.ActiveShards; ActivePrimaryShards = health.ActivePrimaryShards; InitializingShards = health.InitializingShards; RelocatingShards = health.RelocatingShards; UnassignedShards = health.UnassignedShards; StringStatus = health.Status; Indices = health.Indices.Select(i => new NodeIndexInfo { Name = i.Key, StringStatus = i.Value.Status, NumberOfShards = i.Value.NumberOfShards, NumberOfReplicas = i.Value.NumberOfReplicas, ActiveShards = i.Value.ActiveShards, ActivePrimaryShards = i.Value.ActivePrimaryShards, InitializingShards = i.Value.InitializingShards, RelocatingShards = i.Value.RelocatingShards, UnassignedShards = i.Value.UnassignedShards, Shards = i.Value.Shards.Select(s => new NodeIndexShardInfo { Name = s.Key, StringStatus = s.Value.Status, PrimaryActive = s.Value.PrimaryActive, ActiveShards = s.Value.ActiveShards, InitializingShards = s.Value.InitializingShards, RelocatingShards = s.Value.RelocatingShards, UnassignedShards = s.Value.UnassignedShards }).ToList() }).OrderBy(i => { int j; return int.TryParse(i.Name, out j) ? j : 0; }).ToList(); } else { Indices = new List<NodeIndexInfo>(); } return rawHealth; }