

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# SPARQL 查詢狀態 API
<a name="sparql-api-status"></a>

若要取得 SPARQL 查詢的狀態，請使用 HTTP `GET` 或 `POST` 向 `https://your-neptune-endpoint:port/sparql/status` 端點提出請求。

## SPARQL 查詢狀態請求參數
<a name="sparql-api-status-get-request"></a>

**queryId (選用)**  
執行中 SPARQL 查詢的 ID。只顯示指定查詢的狀態。

## SPARQL 查詢狀態回應語法
<a name="sparql-api-status-get-response-syntax"></a>

```
{
    "acceptedQueryCount": integer,
    "runningQueryCount": integer,
    "queries": [
      {
        "queryId":"guid",
        "queryEvalStats":
          {
            "subqueries": integer,
            "elapsed": integer,
            "cancelled": boolean
          },
        "queryString": "string"
      }
    ]
}
```

## SPARQL 查詢狀態回應值
<a name="sparql-api-status-get-response-values"></a>

**acceptedQueryCount**  
自上次重新啟動 Neptune引擎以來接受的查詢數目。

**runningQueryCount**  
目前執行中的 SPARQL 查詢數。

**queries**  
目前 SPARQL 查詢的清單。

**queryId**  
查詢的 GUID ID。Neptune 會自動將此 ID 值指派給每個查詢，或者您也可以指派自己的 ID (請參閱 [將自訂 ID 注入至 Neptune Gremlin 或 SPARQL 查詢](features-query-id.md))。

**queryEvalStats**  
此查詢的統計資訊。

**subqueries**  
此查詢中的子查詢數。

**elapsed**  
到目前為止查詢已執行的毫秒數。

**cancelled**  
True 表示查詢已取消。

**queryString**  
提交的查詢。

## SPARQL 查詢狀態範例
<a name="sparql-api-status-get-example"></a>

下面是使用 `curl` 和 HTTP `GET` 的狀態命令範例。

```
curl https://your-neptune-endpoint:port/sparql/status
```

此輸出會顯示單一執行中查詢。

```
{
    "acceptedQueryCount":9,
    "runningQueryCount":1,
    "queries": [
        {
            "queryId":"fb34cd3e-f37c-4d12-9cf2-03bb741bf54f",
            "queryEvalStats":
                {
                    "subqueries": 0,
                    "elapsed": 29256,
                    "cancelled": false
                },
            "queryString": "SELECT ?s ?p ?o WHERE {?s ?p ?o}"
        }
    ]
}
```