0

次の形式の JSON データがあります。

[
{
    "_index": "servers",
    "_id": "server1",
    "_score": 1,
    "_source": {
        "list": {
            "key1": {
                "c1": {
                    "check_status": "PASSED",
                    "check_name": "c1",
                    "error_msg": "NOERRORS",
                    "check_state": "OK"
                },
                "c2": {
                    "check_status": "PASSED",
                    "check_name": "c2",
                    "error_msg": "NO ERRORS",
                    "check_state": "OK"
                }
            },
            "key2": {
                "c11": {
                    "check_status": "PASSED",
                    "check_name": "c11",
                    "error_msg": "NO ERRORS",
                    "check_state": "OK"
                },
                "c22": {
                    "check_status": "PASSED",
                    "check_name": "c22",
                    "error_msg": "NO ERRORS",
                    "check_state": "OK"
                }
            }
        },
        "Date Universal": "2015-10-19T10:14:03Z",
        "SERVER EXISTENCE": "active"
    }
},
{
    "_index": "servers",
    "_id": "server2",
    "_score": 1,
    "_source": {
        "list": {
            "key1": {
                "c1": {
                    "check_status": "PASSED",
                    "check_name": "c1",
                    "error_msg": "NOERRORS",
                    "check_state": "OK"
                },
                "c2": {
                    "check_status": "PASSED",
                    "check_name": "c2",
                    "error_msg": "NO ERRORS",
                    "check_state": "OK"
                }
            },
            "key2": {
                "c11": {
                    "check_status": "PASSED",
                    "check_name": "c11",
                    "error_msg": "NO ERRORS",
                    "check_state": "OK"
                },
                "c22": {
                    "check_status": "PASSED",
                    "check_name": "c22",
                    "error_msg": "NO ERRORS",
                    "check_state": "OK"
                }
            }
        },
        "Date Universal": "2015-10-19T10:14:03Z",
        "SERVER EXISTENCE": "active"
    }
}

]

私が探しているhtmlテーブルには、サーバーごとに1つのレコードが必要であり、テーブルの同じ行に特定のサーバーに存在する場合、すべてのエラーが表示されます。

ここでコード参照用に JSfiddle を作成しました。このフィドルは正確なスクリプトではありません。サーバー名やその他の情報をテーブルに引き出すことができます。しかし、チェックにループして、失敗したすべてのチェックを見つけることは、難しいことです。誰かが私を助けてくれますか??

サーバーごとにネストされた JSON オブジェクトの反復を示し、失敗したチェックと関連するエラーのみを出力として表に出力するフィドル出力を探しています。1,000 台のサーバーがあり、それぞれに key1 チェック 20 と key2 チェック 20 があります。コントローラー コードは次のようになります。

var app=angular.module('angmod', []);
app.controller('ctrl1',function($scope,$http,$interval){
load_data();
$interval(function(){
load_data();
},5000);
function load_data(){
   data=[{
"_index":"servers",
"_id":"server1",
"_score":1,
"_source":{
"list":{
"key1":{"c1"{"check_status":"PASSED","check_name":"c1","error_msg":"NOERRORS","check_state":"OK"},"c2":{"check_status":"PASSED","check_name":"c2","error_msg":"NO ERRORS","check_state":"OK"}},

"key2":{"c11":{"check_status":"PASSED","check_name":"c11","error_msg":"NO ERRORS","check_state":"OK"},"c22":{"check_status":"PASSED","check_name":"c22","error_msg":"NO ERRORS","check_state":"OK"}}
},

"Date Universal":"2015-10-19T10:14:03Z",
"SERVER EXISTENCE":"active"}
}],

"Date Universal":"2015-10-19T10:14:03Z",
"SERVER EXISTENCE":"active"}
},{"_index":"servers",

"_id":"server2",
"_score":1,
"_source":{
"list":{
"key1":{"c1"{"check_status":"PASSED","check_name":"c1","error_msg":"NOERRORS","check_state":"OK"},"c2":{"check_status":"PASSED","check_name":"c2","error_msg":"NO ERRORS","check_state":"OK"}},

"key2":{"c11":{"check_status":"PASSED","check_name":"c11","error_msg":"NO ERRORS","check_state":"OK"},"c22":{"check_status":"PASSED","check_name":"c22","error_msg":"NO ERRORS","check_state":"OK"}}
},

"Date Universal":"2015-10-19T10:14:03Z",
"SERVER EXISTENCE":"active"}
}]
  }]
$scope.qwe=data;
});
};
})

誰かがロジックを説明できますか???

4

0 に答える 0