Устранение неполадок интеграции

Ниже приведены некоторые распространенные проблемы и шаги по их устранению при интеграции коннектора API-концентратора.

Метаданные API не отображаются в API Hub

  • Время начальной синхронизации: запуск начальной синхронизации и появление данных API в API Hub может занять несколько часов. Рекомендуется подождать несколько часов.
  • Состояние экземпляра плагина: убедитесь, что экземпляр плагина в API-хабе не был удален или изменен.
  • Идентификатор шлюза: убедитесь, что в настройках коннектора концентратора API Apigee Edge for Private Cloud правильно настроен идентификатор шлюза.
  • Проверьте журналы: проверьте, зарегистрированы ли какие-либо ошибки в журналах службы коннектора Edge for Private Cloud API /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log .

Прокси-сервер развернут, но информация в API-центре неточная.

  • Задержка распространения: подождите несколько минут, пока информация о развернутом прокси-сервере распространится и отобразится в API-хабе.
  • Проверьте журналы: просмотрите журналы коннектора Edge for Private Cloud API на предмет сведений о загруженных прокси-серверах. Это поможет определить, успешно ли было выполнено обновление прокси-сервера для синхронизации.

Организация пользователя перестала синхронизироваться без внесения каких-либо изменений в коннектор API-концентратора.

  • Состояние экземпляра плагина (со стороны API-концентратора): проверьте, был ли соответствующий экземпляр плагина в API-концентраторе отозван, удалён или изменён. Любые изменения на стороне API-концентратора могут напрямую повлиять на синхронизацию через коннектор API-концентратора.
  • Проверьте журналы: проверьте журналы коннектора API-концентратора Edge for Private Cloud на наличие ошибок, предупреждений или проблем, которые могут указывать на сбой в процессе синхронизации. К ним могут относиться проблемы с подключением или аутентификацией в API-концентраторе.

API статуса позволяет напрямую узнать, какие организации согласились и активно синхронизируются.

Устранение неполадок на основе журналов

Где хранятся журналы коннектора API-концентратора?

/opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

Как получить информацию о включенных организациях?

Чтобы определить, какие организации в настоящее время включены и синхронизируются, вы можете использовать API статуса и просмотреть системные журналы.

  • Действие: Вызов конечной точки API статуса.
  • Ожидаемый результат: организации, подтвердившие подписку, будут перечислены в разделах apiSyncStatus и analyticsSyncStatus в ответе API. Организации с включённой синхронизацией метаданных будут отображаться в разделе apiSyncStatus , а организации с включённой синхронизацией во время выполнения — в разделе analyticsSyncStatus .
    {
     "apiSyncStatus": [
       {
         "organization": "foo",
         "phase": "Preparing", // ColdTransfer => Preparing
         "components": [
           "proxy": {
             "lastUpdated": "2025-04-16T00:56:45Z",
             "progress": {
               "totalItems": 100, // total proxies known to uapim connector
               "pendingItems": 90,  // pending proxies to upload
               "completedItems": 6, // completed proxies to upload
               "failedItems": 4 // proxies failed to upload
             }
           },
           "environment": { //environment upload status
             "lastUpdated": "2025-04-16T00:56:45Z",
             "progress": {
               "totalItems": 5, // total number of environments
               "pendingItems": 1, // pending environments to process
               "completedItems": 3, // completed environment processing
               "failedItems": 1 // failed environment processing
             }
           }]
       },
       {
         "organization": "bar",
         "phase": "Processing", // "Streaming" -> "Processing"
         "components": [
           "proxy": {
             "lastUpdated": "2025-04-16T00:56:45Z",
             "progress": {
               "totalItems": 110, // total proxies known to uapim connector
               "pendingItems": 16, // pending proxies to upload
               "completedItems": 3, // completed proxies to upload
               "failedItems": 1 // proxies failed to upload
             }
           },
           "environment": {
             "lastUpdated": "2025-04-16T00:56:45Z",
             "progress": {
               "totalItems": 5, // total number of environments
               "pendingItems": 3, // pending environments to process
               "completedItems": 1, // completed environment processing
               "failedItems": 1 // failed environment processing
             }
           }]
       },
       {
         "organization": "test",
         "phase": "Queued", // "Yet to start" -> "Queued"
         "lastUpdated": "2025-04-16T00:56:45Z"
       }
     ],
     "analyticsSyncStatus": [
       {
         "organization": "test",
         "environment": "dev",
         "failedItems": 2,
         "lastUpdated": "2025-04-16T00:56:45Z"
       },
       {
         "organization": "test",
         "environment": "prod",
         "failedItems": 4,
         "lastUpdated": "2025-04-16T00:56:45Z"
       }
     ]
    }
    
  • Проверка системных журналов: для более детального просмотра и подтверждения настройки синхронизации для отдельных организаций вы можете просмотреть системные журналы на предмет определенных записей.
    • Проверьте журналы:
      /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
    • Команды поиска: Используйте grep или аналогичные инструменты поиска журналов, чтобы найти следующие строки журнала:
      • Для синхронизации метаданных org metadata-org:
        grep "Setup metadata sync for organization: metadata-org"  /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
      • Пример фрагмента журнала:
        2025-07-10 08:47:09,901  main INFO  c.a.u.c.UAPIMConnectorServiceImpl - UAPIMConnectorServiceImpl.setupMetadataSync() : Setup metadata sync for organization: metadata-org
      • Найдите текст «Настройка синхронизации метаданных для организации», за которым следует название организации.
      • Для синхронизации данных времени выполнения org runtime-org:
        grep "Setup runtime data sync for organization: runtime-org" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
      • Пример фрагмента журнала:
        2025-07-10 08:47:09,902  main INFO  c.a.u.c.UAPIMConnectorServiceImpl - UAPIMConnectorServiceImpl.setupRuntimeSyncData() : Setup runtime data sync for organization: runtime-org
      • Найдите текст «Настройка синхронизации данных среды выполнения для организации», за которым следует название организации.

Как получить из журналов информацию обо всех (org,env), которые не удалось включить?

Чтобы получить информацию об организациях, которые не удалось включить, вы можете просмотреть системные журналы на предмет конкретных записей об ошибках.

  • Проверьте журналы: /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
  • Команды поиска: используйте grep или аналогичные инструменты поиска в журналах, чтобы найти строки журнала, указывающие на ошибку во время обновления статуса синхронизации метаданных.
    • Для неудачных обновлений статуса синхронизации метаданных для org/env failed-org/failed-env:
      grep "Error while updating metadata sync status for org: failed-org" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
    • Пример фрагмента журнала:
      2025-07-15 10:30:15,123 main ERROR c.a.u.c.UAPIMConnectorServiceImpl - UAPIMConnectorServiceImpl.updateMetadataSyncStatus() : Error while updating metadata sync status for org: failed-org
    • Найдите текст Error while updating metadata sync status for org/env: за которым следует организация и среда (например, failed-org/failed-env).

Как получить сводку об изменении состояния передачи организации из журналов?

Чтобы получить сводку об обновлении состояния передачи синхронизации (org, env), вы можете просмотреть системные журналы на наличие определенных записей.

  • Проверьте журналы: /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
  • Команды поиска Используйте grep или аналогичные инструменты поиска в журналах, чтобы найти строки журнала, указывающие на обновление статуса передачи для организации и среды.
    • Для обновления статуса перевода:
      grep "Transfer status is updated for org" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
    • Пример фрагмента журнала:
      2025-07-15 18:35:01,789 main INFO c.a.u.c.UAPIMConnectorServiceImpl - UAPIMConnectorServiceImpl.updateTransferStatus() : Transfer status is updated for org: org1 to BULK_TRANSFER
      2025-07-10 08:47:11,364  main INFO  c.a.u.m.UAPIMMetadataServiceImpl - UAPIMMetadataServiceImpl.updateEnvironmentStatus() : Transfer status is updated for org: org1 to STREAMING
    • Найдите точный текст «Статус передачи обновлен для org/env», за которым следует конкретная организация и среда (например, org1/prod), а также состояние.
  • Как просмотреть результаты по отдельным прокси?

    Чтобы просмотреть записи журнала, связанные со сбором и загрузкой протоданных отдельных прокси-серверов, вы можете выполнить поиск по определенным строкам журнала.

    • Расположение файла журнала: /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
    • Команды поиска: используйте grep или аналогичные инструменты поиска в журналах, чтобы найти строки журнала, указывающие на загрузку собранных proto-данных для конкретной организации и прокси-сервера.
      • Сценарий успеха: Прокси-прототип загружен в API Hub, в этом случае найдите текст «uploaded collect proto for org: {}, proxy: {}», grep "uploaded collect proto for org: your-org-name, proxy: your-proxy-name, with messageId:" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
      • Замените your -org-name на фактическое название организации, а your-proxy-name — на фактическое имя прокси-сервера, которое вас интересует. Пример фрагмента журнала:
        2025-07-10 08:47:11,362 main DEBUG c.a.u.m.UAPIMMetadataServiceImpl - UAPIMMetadataServiceImpl.generateCollectProto() : uploaded collect proto for org: org1, proxy: proxy1, with messageId: message_ids: "15569268426032329"

        Найдите текст «uploaded collect proto for org:», за которым следует название организации, затем «, proxy:», а затем имя прокси-сервера.

      • Сценарий сбоя: не удалось загрузить прокси-прототип в API Hub. В этом случае найдите текст «Не удалось опубликовать прототип сбора для организации: {}, прокси: {},» grep "Failed to publish collect proto for org: your-org-name, proxy: your-proxy-name, " /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

        Замените your-org-name на фактическое название организации, а your-proxy-name — на фактическое имя прокси-сервера, которое вас интересует.

        Пример фрагмента журнала:
        2025-07-10 08:47:11,362 main DEBUG c.a.u.m.UAPIMMetadataServiceImpl - UAPIMMetadataServiceImpl.generateCollectProto() : Failed to publish collect proto for org: org1, proxy: proxy1

        Найдите текст «failed to publish collect proto for org:», за которым следует название организации, затем «, proxy:», а затем имя прокси-сервера.

    Время выполнения/Аналитика

    Запись не удалось опубликовать в NFS

    Причина: использование NFS превышает 75%.

    Для проверки: grep "Diskspace usage is at more than 75% of the allocated MaxDiskSpace at" /opt/apigee/var/log/edge-message-processor/logs/system.log

    Причина: синхронизация времени выполнения коннектора API-концентратора не включена или неправильно настроена.

    Проверьте следующее в /opt/apigee/customer/application/message-processor.properties: conf_message-processor-communication_uapim.enabled.environments=

    Убедитесь, что указаны правильные организация и среда.

    conf_message-processor-communication_uapim.runtime.data.path=

    Убедитесь, что он указывает на правильный путь NFS.

    Как определить, были ли данные успешно опубликованы в NFS

    Записи хранятся по определенному пути NFS, например «/the/nfs/staging».

    Вы можете напрямую проверить содержимое этого каталога на наличие новых файлов. Наличие файлов свидетельствует об успешной публикации в NFS.

    Файл данных удален без обработки

    Причина: Имя файла не содержит допустимой информации об организации/среде.

    Журнал для проверки: grep "Skipped and Deleted file" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Файл удален из-за отсутствия конфигурации организации

    Причина: Конфигурация, специфичная для организации, не найдена.

    Журнал для проверки: grep "Deleted file .* due to missing org config" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Файл удален из-за недопустимой среды

    Причина: среда, проанализированная из имени файла, не существует в конфигурации организации.

    Журнал для проверки: grep "Deleted file .* due to invalid env" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Не удалось загрузить файл в Pub/Sub

    Причина: Не удалось создать издателя (например, неправильно настроена учетная запись службы или тема).

    Журнал для проверки: grep "Failed to create publisher for org" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Частичная загрузка – некоторые записи не удалось загрузить

    Причина: Некоторые записи в файле не удалось опубликовать.

    Журнал для проверки: grep "was not completely published" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Файл полностью обработан и удален

    Журнал для проверки: grep "File .* completely published to topic" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log