您正在查看 Apigee Edge 文档。
前往 Apigee X 文档。 信息
问题
当您使用 apigee-provision 脚本创建新组织时,有时脚本会退出并显示错误消息。出现此错误后,如果您尝试查看 Edge 界面信息中心或任何分析信息中心,您会发现新创建的组织的错误消息为“报告超时”。
错误消息
运行 apigee-provision 脚本以创建新组织时,您可能会看到以下错误消息:
!!!! Error !!!!
HTTP STATUS CODE: 400
{
"code" : "dataapi.service.PGFoundInMultipleGroups",
"message" : "dataapi.service.PGFoundInMultipleGroups",
"contexts" : [ ]
}
即使您收到此错误,也可以在预配脚本退出后对新创建的组织进行操作。不过,当您尝试查看 Edge 界面信息中心时,会看到新创建的组织的以下错误消息:
The report timed out
Try again with a smaller date range or a larger aggregation interval.
以下屏幕截图显示了该错误:

可能的原因
| 原因 | 说明 | 适用的问题排查说明 |
| 设置多个 AX 群组 | 已创建多个具有相同 Postgres 服务器集的分析组。 | Edge Private Cloud 用户 |
原因:设置了多个 AX 群组
诊断
执行以下 Analytics Groups 管理 API,并确定输出是否显示了多个已定义的分析组。例如:
curl -u adminEmail:adminPwd http://<ms_ip>:8080/v1/analytics/groups/ax显示两个分析组的输出示例
{ "name":"axgroup-001", "properties":{ }, "scopes":[ ], "uuids":{ "qpid-server":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups":[ { "name":"consumer-group-001", "consumers":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties":{ } } ], "data-processors":{ } }, { "name":"axgroup001", "properties":{ "consumer-type":"ax" }, "scopes":[ "017pdspoint~dev", "010test~dev", "019charmo~dev", "009gcisearch1~dev", "000fj~trial-fjwan", "009dekura~dev", "008pisa~dev", "004fjadrms~dev", "018k5billing~dev", "004study14~dev", "001teama~dev", "005specdb~dev", "test~dev", "000fj~prod-fjwan", "012pjweb~dev", "020workflow~dev", "007ikou~prod-fjwan", "003asano~dev", "013mims~dev", "006studyhas~dev", "006efocus~dev", "002wfproto~dev", "008murahata~dev", "016mediaapi~dev", "015skillnet~dev", "014aclmanager~dev", "010fjppei~dev", "000fj~trial", "003esupport~dev", "000fj~prod", "005ooi~dev", "test~elb1", "007fjauth~dev", "011osp~dev", "002study~dev", "999test~dev" ], "uuids":{ "qpid-server":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "aries-datastore":[ ], "postgres-server":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "dw-server":[ ] }, "consumer-groups":[ { "name":"consumer-group-001", "consumers":[ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores":[ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties":{ } } ], "data-processors":{ } }
此输出显示了两个分析组 axgroup-001 和 axgroup001。
检查以确保所有分析组都已定义范围。
在上面显示的示例分析组输出中,分析组 axgroup-001 未定义任何范围,但仍将 Postgres 服务器定义为数据存储区。
在 Qpid 服务器上执行以下 Qpid 队列统计信息命令,并验证是否没有针对第 2 步中确定的特定分析组的消息。
qpid-stat -qQpid 队列统计信息示例
以下 Qpid 队列统计信息表明,上述示例中引用的特定分析组队列 (axgroup-001) 没有收到任何消息:
queue dur autoDel excl msg msgIn msgOut 字节 bytesIn bytesOut 缺点 绑定 140995fe-71a7-4000-a1f4-71b7a951da7f:0.0 Y Y 0 0 0 0 0 0 1 2 ax-q-axgroup-001-consumer-group-001 Y 0 0 0 0 0 0 12 2 ax-q-axgroup-001-consumer-group-001-dl Y 0 0 0 0 0 0 0 2 ax-q-axgroup001-consumer-group-001 Y 0 241K 241K 0 21.7g 21.7g 12 2 ax-q-axgroup001-consumer-group-001-dl Y 323 323 0 52.4m 52.4m 0 0 2 由于没有针对特定分析组 axgroup-001 的消息/流量,因此您会在 Edge 界面信息中心或分析信息中心中看到“报告超时”错误。
分辨率
如需解决此问题,请删除没有任何范围且未获得任何流量的 axgroup。
请按照以下步骤删除 axgroup:
第 1 步:删除特定 axgroup 的使用方。
使用以下管理 API 从
axgroup中移除每个消费者:curl -v -u admin@email.com:password -X DELETE -H 'Accept:application/json' -H 'Content-Type:application/json' 'http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/consumer-groups/{consumer-group-name}/consumers/{uuid-of the consumer}'如果有多个消费者,请重复上述 API 调用,并在单独的 API 调用中提及每个消费者的 UUID。
对于上述示例,以下 API 会移除 UUID 为
5c1e9690-7b58-499a-a4bb-d54454474b8f:的消费者curl -v -X DELETE -H 'Accept:application/json' -H 'Content-Type:application/json' 'http://localhost:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/5c1e9690-7b58-499a-a4bb-d54454474b8f' { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }重新运行同一 API,以删除当前示例中 UUID 为 7794c428-e553-4ed2-843d-69f93bbec8a3 的其他消费者。
第 2 步:移除使用方群组
使用以下管理 API 从特定
axgroup中移除消费群组:curl -v -u admin@email.com:password -X DELETE 'http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/consumer-groups/{consumer-group-name}'示例:
以下 API 会删除使用方群组名称 consumer-group-001::
curl -v -X DELETE 'http://localhost:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001' { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
第 3 步:从 axgroup 中删除 qpid-servers
使用以下管理 API 从特定
axgroup中删除qpid-servers。curl -X DELETE -u admin@email.com "http://localhost:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={qpid-server-uuid}type=qpid-server" -H "Content-type: application/json"如果有多个 Qpid 服务器,请重新运行同一 API 调用。
示例:
在当前示例中,使用以下 API 删除 UUID 为 7794c428-e553-4ed2-843d-69f93bbec8a3 的 Qpid 服务器:
curl -X DELETE "http://localhost:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=7794c428-e553-4ed2-843d-69f93bbec8a3&type=qpid-server" -H "Content-type: application/json" { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f" ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } }
第 4 步:从 axgroup 中删除 postgres 服务器
如果只有一个 Postgres 服务器,请使用以下管理 API 删除该服务器:
curl -v -X DELETE -H 'Accept:application/json' "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={postgres-server-uuid}&type=postgres-server&force=true"如果您设置了主服务器和 Postgres 从服务器,请使用以下管理 API 删除 Postgres 服务器
curl -v -X DELETE -H 'Accept:application/json' "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}/servers?uuid={postgres-master-uuid,postgres-slave-uuid}&type=postgres-server&force=true"示例:
在上述示例中,存在主 Postgres 服务器和从 Postgres 服务器,因此您可以使用以下 API 删除 Postgres 服务器:
curl -v -X DELETE -H 'Accept:application/json' "http://localhost:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=3b28b790-ec4e-45c5-a8d0-6d6f2088da65,750cd8ba-1799-4dfb-8c74-548010e95e5e&type=postgres-server&force=true" { "name" : "axgroup-001", "properties" : { }, "scopes" : [ ], "uuids" : { "qpid-server" : [ ], "postgres-server" : [ ] }, "consumer-groups" : [ ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
第 5 步:移除分析组
使用以下管理 API 移除分析组:
curl -v -X DELETE "http://{mgmt-server-host}:8080/v1/analytics/groups/ax/{axgroup-name}"示例:
curl -v -X DELETE "http://localhost:8080/v1/analytics/groups/ax/axgroup-001" { "properties" : { }, "scopes" : [ ], "uuids" : { }, "consumer-groups" : [ ], "data-processors" : { } * Connection #0 to host localhost left intact * Closing connection #0 }
第 6 步:检查群组是否已完全移除
使用以下管理 API 检查特定分析组是否已完全移除:
curl -v -u admin@email.com -X GET "http://{mgmt-server-host}:8080/v1/analytics/groups/ax示例:
curl localhost:8080/v1/analytics/groups/ax [ { "name" : "axgroup001", "properties" : { "consumer-type" : "ax" }, "scopes" : [ "017pdspoint~dev", "010test~dev", "019charmo~dev", "009gcisearch1~dev", "000fj~trial-fjwan", "009dekura~dev", "008pisa~dev", "004fjadrms~dev", "018k5billing~dev", "004study14~dev", "001teama~dev", "005specdb~dev", "test~dev", "000fj~prod-fjwan", "012pjweb~dev", "020workflow~dev", "007ikou~prod-fjwan", "003asano~dev", "013mims~dev", "006studyhas~dev", "006efocus~dev", "002wfproto~dev", "016mediaapi~dev", "015skillnet~dev", "014aclmanager~dev", "010fjppei~dev", "000fj~trial", "003esupport~dev", "000fj~prod", "005ooi~dev", "test~elb1", "007fjauth~dev", "011osp~dev", "002study~dev" ], "uuids" : { "qpid-server" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "aries-datastore" : [ ], "postgres-server" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "dw-server" : [ ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "5c1e9690-7b58-499a-a4bb-d54454474b8f", "7794c428-e553-4ed2-843d-69f93bbec8a3" ], "datastores" : [ "3b28b790-ec4e-45c5-a8d0-6d6f2088da65:750cd8ba-1799-4dfb-8c74-548010e95e5e" ], "properties" : { } } ], "data-processors" : { } } ]请注意,上述输出中没有与特定分析组 axgroup-001 相关的信息。这可确认 axgroup-001 已被完全移除。
第 7 步:重启进程
Qpid 和 Postgres 机器上的以下进程:
- 重启 apigee-qpidd。
- 重启 edge-qpid-server。
- 重启 edge-postgres-server。
- 重新启动 apigee-postgresql。
第 8 步:验证
验证数据是否显示在分析信息中心内。
如果问题仍然存在,请前往必须收集的诊断信息。
必须收集的诊断信息
如果按照上述说明操作后问题仍然存在,请收集以下诊断信息。请与 Apigee Edge 支持团队联系,并分享收集到的信息。
- 私有云安装的架构设置(设置了多少主机,每个组件的数量)。
以下命令的输出:
Analytics Group
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/analytics/groups/ax每个 Qpid 机器上的 Qpid 队列统计信息
qpid-stat -qGoogle Analytics 状态
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/organizations/{org-name}/environments/{environment-name}/provisioning/axstatus