

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 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 查询数。

**查询**  
当前 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}"
        }
    ]
}
```