Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Симптом
При использовании скрипта apigee-provision для создания новой организации иногда скрипт завершается с сообщением об ошибке. После этой ошибки, если вы попытаетесь просмотреть панель мониторинга Edge UI или любую другую аналитическую панель, вы увидите сообщение об ошибке «Время ожидания отчета для вновь созданной организации истекло» .
Сообщение об ошибке
При запуске скрипта apigee-provision для создания новой организации может появиться следующее сообщение об ошибке:
!!!! Error !!!!
HTTP STATUS CODE: 400
{
"code" : "dataapi.service.PGFoundInMultipleGroups",
"message" : "dataapi.service.PGFoundInMultipleGroups",
"contexts" : [ ]
}
Даже если вы получите эту ошибку, вы сможете продолжить работу с только что созданной организацией после завершения выполнения скрипта инициализации. Однако при попытке просмотра панели мониторинга Edge UI вы увидите следующее сообщение об ошибке для только что созданной организации:
The report timed out
Try again with a smaller date range or a larger aggregation interval.
Вот скриншот, демонстрирующий ошибку:

Возможные причины
| Причина | Описание | Инструкции по устранению неполадок, применимые для |
| Настройка нескольких групп AX | Для одного и того же набора серверов Postgres было создано несколько аналитических групп. | Пользователи частного облака Edge |
Причина: Настройка нескольких групп AX
Диагноз
Выполните следующий 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 queue stats на серверах Qpid и убедитесь, что для конкретной аналитической группы, определенной на шаге №2, не поступают сообщения.
qpid-stat -qПример статистики очереди Qpid
Приведенная ниже статистика очереди Qpid указывает на отсутствие сообщений в очереди конкретной аналитической группы из приведенного выше примера (axgroup-001):
очередь дур автодел исключая сообщение msgIn msgOut байты байтыВ байтыВыход минусы связывать 140995fe-71a7-4000-a1f4-71b7a951da7f:0.0 Я Я 0 0 0 0 0 0 1 2 ax-q-axgroup-001-consumer-group-001 Я 0 0 0 0 0 0 12 2 ax-q-axgroup-001-consumer-group-001-dl Я 0 0 0 0 0 0 0 2 ax-q-axgroup001-consumer-group-001 Я 0 241K 241K 0 21,7 г 21,7 г 12 2 ax-q-axgroup001-consumer-group-001-dl Я 323 323 0 52,4 м 52,4 м 0 0 2 Поскольку для конкретной аналитической группы axgroup-001 не поступает никаких сообщений/трафика, в панели мониторинга Edge UI или на аналитических панелях отображается ошибка «Время ожидания отчета истекло».
Разрешение
Для решения этой проблемы удалите axgroup , которая не имеет никаких областей действия и не получает трафик.
Для удаления axgroup выполните следующие действия:
Шаг 1: Удалите потребителей для конкретной группы осей.
Для удаления каждого из потребителей из
axgroupиспользуйте следующий API управления: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, указав UUID каждого потребителя в отдельном вызове API.
В приведенном выше примере следующий 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: Удалите группы потребителей.
Для удаления групп потребителей из конкретной
axgroupиспользуйте следующий API управления: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: Удалите серверы qpid из группы axgroup.
Для удаления
qpid-serversиз конкретнойaxgroupиспользуйте следующий API управления.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.
Пример:
Для удаления сервера Qpid с UUID 7794c428-e553-4ed2-843d-69f93bbec8a3 в данном примере используйте следующий API:
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: Удалите серверы PostgreSQL из группы axgroup.
Для удаления сервера 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, если у вас настроены главный сервер и подчиненный сервер Postgres, используйте следующий API управления.
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"Пример:
В приведенном выше примере есть главный и подчиненный серверы PostgreSQL, поэтому для удаления серверов PostgreSQL можно использовать следующий API:
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 и предоставьте собранную информацию.
- Архитектурные параметры вашей установки частного облака (количество хостов, количество каждого компонента).
Результат выполнения следующих команд:
Аналитическая группа
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/analytics/groups/axСтатистика очереди Qpid на каждой из машин Qpid.
qpid-stat -qСтатус аналитики
curl -u sysadminEmail:sysadminPwd http://{mgmt-server-host}:8080/v1/organizations/{org-name}/environments/{environment-name}/provisioning/axstatus