I have a cluster with status "red"
$ curl -s http://127.0.0.1:9200/_cluster/health | jq .
{
  "active_shards_percent_as_number": 99.90479817212491,
  "task_max_waiting_in_queue_millis": 0,
  "number_of_in_flight_fetch": 0,
  "number_of_pending_tasks": 0,
  "delayed_unassigned_shards": 0,
  "unassigned_shards": 4,
  "initializing_shards": 1,
  "cluster_name": "adzunalogs",
  "status": "red",                                  <=========== oops
  "timed_out": false,
  "number_of_nodes": 3,
  "number_of_data_nodes": 3,
  "active_primary_shards": 2624,
  "active_shards": 5247,
  "relocating_shards": 1
}
and some indexes with UNASSIGNED DANGLING_INDEX_IMPORTED 
curl -s -XGET localhost:9200/_cat/shards?h=index,shard,prirep,state,unassigned.reason| grep UNASSIGNED
logstash-2016.08.23 3 p UNASSIGNED DANGLING_INDEX_IMPORTED 
logstash-2016.08.23 3 r UNASSIGNED DANGLING_INDEX_IMPORTED 
logstash-2016.08.23 4 p UNASSIGNED DANGLING_INDEX_IMPORTED 
logstash-2016.08.23 4 r UNASSIGNED DANGLING_INDEX_IMPORTED 
All other are "green"
curl -s http://127.0.0.1:9200/_cluster/health?level=indices | jq .
...
    "logstash-2016.08.23": {
      "unassigned_shards": 4,
      "initializing_shards": 0,
      "relocating_shards": 0,
      "active_shards": 6,
      "active_primary_shards": 3,
      "number_of_replicas": 1,
      "number_of_shards": 5,
      "status": "red"
    },
...
More details on the failing indices
$ curl -s -XGET localhost:9200/_cluster/health?level=shards | jq . | less
    "logstash-2016.08.23": {
      "shards": {
        "4": {
          "unassigned_shards": 2,
          "initializing_shards": 0,
          "relocating_shards": 0,
          "active_shards": 0,
          "primary_active": false,
          "status": "red"
        },
        "3": {
          "unassigned_shards": 2,
          "initializing_shards": 0,
          "relocating_shards": 0,
          "active_shards": 0,
          "primary_active": false,
          "status": "red"
        },
$ curl -s 'localhost:9200/_cat/allocation?v'
shards disk.indices disk.used disk.avail disk.total disk.percent host          ip            node       
  1749          2tb     2.3tb      1.1tb      3.5tb           66 IP1   IP1   node1   
  1749        1.8tb       2tb      1.4tb      3.5tb           58 IP2    IP2    node2
  1750        1.8tb       2tb      1.4tb      3.5tb           58 IP3    IP3 node3
     4                                                                                       UNASSIGNED 
What would be the process of further debugging this?
In Cluster Health | Elasticsearch: The Definitive Guide [2.x] | Elastic I read
Once you know the index that is having problems, other APIs that we discuss in this chapter will tend to be more helpful.
but I am not sure where to look at for the other APIs.
How to resolve the unassigned shards says that rerouting can fix this but I am not sure if there are any implications.
Edit1: fixed the quote
Edit2: add health?level=shards output