Filippo Giunchedi has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/190475

Change subject: es-tool: output cluster status during fast-restart
......................................................................

es-tool: output cluster status during fast-restart

also add a 'status' subcommand (output can be improved)

Change-Id: Ie5582416f6cc71e36199a391ef008bdec5a4ad51
---
M modules/elasticsearch/files/es-tool
1 file changed, 20 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/75/190475/1

diff --git a/modules/elasticsearch/files/es-tool 
b/modules/elasticsearch/files/es-tool
index 31ed715..10ff906 100755
--- a/modules/elasticsearch/files/es-tool
+++ b/modules/elasticsearch/files/es-tool
@@ -16,6 +16,20 @@
     return es.cluster.health()["status"]
 
 
+def cluster_status(columns=None):
+    es = Elasticsearch(args.server)
+    cluster_health = es.cluster.health()
+    if columns is None:
+        columns = sorted(cluster_health)
+    values = [cluster_health[x] for x in columns]
+
+    column_fmt = ' '.join('{:>}' for x in columns)
+    value_fmt = ' '.join('{:>%s}' % len(x) for x in columns)
+
+    yield column_fmt.format(*columns)
+    yield value_fmt.format(*values)
+
+
 def set_setting(setting, value, settingtype="transient"):
         es = Elasticsearch(args.server)
         res = es.cluster.put_settings(
@@ -136,9 +150,12 @@
 
     # Wait a bit
     time.sleep(5)
-    printu("Waiting for green (you can ctrl+c here if you have to)...")
+    print "Waiting for green (you can ctrl+c here if you have to)...\n"
     while cluster_health() != "green":
-        time.sleep(1)
+        print '\n'.join(cluster_status(columns=('status',
+                                                'initializing_shards',
+                                                'relocating_shards')))
+        time.sleep(60)
     print "ok"
 
     return os.EX_OK
@@ -188,6 +205,7 @@
     "start-replication": es_start_replication,
     "stop-replication": es_stop_replication,
     "unban-node": es_unban_node,
+    "status": lambda: '\n'.join(cluster_status()),
 }
 
 # main()

-- 
To view, visit https://gerrit.wikimedia.org/r/190475
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie5582416f6cc71e36199a391ef008bdec5a4ad51
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Filippo Giunchedi <fgiunch...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to