Rozwiązywanie problemów z integracją

Oto kilka typowych problemów i sposobów ich rozwiązywania w przypadku integracji z łącznikiem centrum interfejsów API.

Metadane interfejsu API nie są widoczne w centrum interfejsów API

  • Czas pierwszej synchronizacji: rozpoczęcie pierwszej synchronizacji i wyświetlenie danych interfejsu API w centrum interfejsów API może potrwać kilka godzin. Zalecamy odczekanie kilku godzin.
  • Stan instancji wtyczki: sprawdź, czy instancja wtyczki w centrum interfejsów API nie została usunięta ani zmieniona.
  • Identyfikator bramy: sprawdź, czy w ustawieniach łącznika centrum interfejsów API Apigee Edge dla chmury prywatnej jest prawidłowo skonfigurowany identyfikator bramy.
  • Sprawdź logi: sprawdź, czy w logach usługi łącznika centrum interfejsów API Edge for Private Cloud /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log nie ma żadnych błędów.

Wdrożono serwer proxy, ale informacje w centrum interfejsów API są nieprawidłowe

  • Opóźnienie propagacji: odczekaj kilka minut, aż wdrożone informacje o serwerze proxy zostaną rozpowszechnione i odzwierciedlone w centrum interfejsów API.
  • Sprawdź logi: przejrzyj logi łącznika centrum interfejsów API Edge for Private Cloud, aby uzyskać szczegółowe informacje o przesłanych serwerach proxy. Może to pomóc w określeniu, czy aktualizacja serwera proxy została pomyślnie przetworzona na potrzeby synchronizacji.

Synchronizacja organizacji użytkownika została zatrzymana bez wprowadzania zmian w łączniku centrum interfejsów API

  • Stan instancji wtyczki (po stronie centrum interfejsów API): sprawdź, czy powiązana instancja wtyczki w centrum interfejsów API została wycofana, usunięta lub zmieniona. Wszelkie zmiany w centrum interfejsów API mogą bezpośrednio wpływać na synchronizację z łącznika centrum interfejsów API.
  • Sprawdź logi: przejrzyj logi łącznika centrum interfejsów API Edge for Private Cloud pod kątem błędów, ostrzeżeń lub problemów, które mogą wskazywać na zakłócenie procesu synchronizacji. Mogą to być problemy z połączeniem lub uwierzytelnianiem w centrum interfejsów API.

Interfejs API stanu umożliwia bezpośrednie sprawdzenie, które organizacje wyraziły zgodę na synchronizację i aktywnie ją przeprowadzają.

Rozwiązywanie problemów na podstawie logów

Gdzie są przechowywane logi złącza centrum API?

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

Jak uzyskać informacje o włączonych organizacjach?

Aby sprawdzić, które organizacje są obecnie włączone i synchronizowane, możesz użyć interfejsu API stanu i sprawdzić dzienniki systemowe.

  • Działanie: wywołaj punkt końcowy interfejsu API stanu.
  • Oczekiwane dane wyjściowe: organizacje, które wyraziły zgodę, będą wymienione w sekcjach apiSyncStatusanalyticsSyncStatus w odpowiedzi interfejsu API. Organizacje z włączoną synchronizacją metadanych będą wyświetlane w sekcji apiSyncStatus, a organizacje z włączoną synchronizacją w czasie działania – w sekcji 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"
       }
     ]
    }
    
  • Sprawdzanie dzienników systemowych: aby uzyskać bardziej szczegółowy widok i potwierdzić konfigurację synchronizacji w przypadku poszczególnych organizacji, możesz sprawdzić dzienniki systemowe pod kątem konkretnych wpisów.
    • Sprawdź logi:
      /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
    • Polecenia wyszukiwania: użyj grep lub podobnych narzędzi do wyszukiwania logów, aby znaleźć te wiersze logów:
      • W przypadku synchronizacji metadanych organizacji org metadata-org:
        grep "Setup metadata sync for organization: metadata-org"  /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
      • Przykład fragmentu logu:
        2025-07-10 08:47:09,901  main INFO  c.a.u.c.UAPIMConnectorServiceImpl - UAPIMConnectorServiceImpl.setupMetadataSync() : Setup metadata sync for organization: metadata-org
      • Znajdź tekst Skonfiguruj synchronizację metadanych dla organizacji:, a następnie nazwę organizacji.
      • W przypadku synchronizacji danych w czasie działania organizacji runtime-org:
        grep "Setup runtime data sync for organization: runtime-org" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
      • Przykład fragmentu logu:
        2025-07-10 08:47:09,902  main INFO  c.a.u.c.UAPIMConnectorServiceImpl - UAPIMConnectorServiceImpl.setupRuntimeSyncData() : Setup runtime data sync for organization: runtime-org
      • Znajdź tekst Skonfiguruj synchronizację danych środowiska wykonawczego dla organizacji:, a następnie nazwę organizacji.

Jak uzyskać z logów informacje o wszystkich parach (organizacja, środowisko), których nie udało się włączyć?

Aby uzyskać informacje o organizacjach, których nie udało się włączyć, możesz sprawdzić dzienniki systemowe pod kątem konkretnych wpisów o błędach.

  • Sprawdź logi: /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
  • Polecenia wyszukiwania: użyj narzędzi do wyszukiwania w dziennikach, np. grep, aby znaleźć wiersze dziennika wskazujące błąd podczas aktualizacji stanu synchronizacji metadanych.
    • W przypadku nieudanych aktualizacji stanu synchronizacji metadanych w organizacji lub środowisku: 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
    • Przykład fragmentu logu:
      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
    • Poszukaj tekstu Error while updating metadata sync status for org/env:, a następnie nazwy organizacji i środowiska (np. failed-org/failed-env).

Jak uzyskać podsumowanie zmiany stanu przeniesienia organizacji z logów?

Aby uzyskać podsumowanie informacji o tym, kiedy stan transferu synchronizacji (organizacja, środowisko) jest aktualizowany, możesz sprawdzić dzienniki systemowe pod kątem określonych wpisów.

  • Sprawdź logi: /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
  • Polecenia wyszukiwania: użyj narzędzi do wyszukiwania w logach, np. grep, aby znaleźć wiersze logów wskazujące aktualizację stanu przenoszenia w przypadku organizacji i środowiska.
    • Informacje o stanie przeniesienia:
      grep "Transfer status is updated for org" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
    • Przykład fragmentu logu:
      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
    • Wyszukaj dokładny tekst „Transfer status is updated for org/env” (Zaktualizowano stan przenoszenia w przypadku org/env), a następnie konkretną organizację i środowisko (np. org1/prod) oraz stan.
  • Jak wyświetlić wyniki poszczególnych serwerów proxy?

    Aby wyświetlić wpisy w dzienniku związane z gromadzeniem i przesyłaniem danych protokołu poszczególnych serwerów proxy, możesz wyszukać konkretne wiersze dziennika.

    • Lokalizacja pliku dziennika: /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log
    • Polecenia wyszukiwania: użyj narzędzi do wyszukiwania logów, np. grep, aby znaleźć wiersze logów wskazujące przesyłanie zebranych danych protokołu dla konkretnej organizacji i serwera proxy.
      • Scenariusz sukcesu: protokół serwera proxy jest przesyłany do API Hub. W tym przypadku wyszukaj tekst „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
      • Zastąp -org-name rzeczywistą nazwą organizacji, a ciąg your-proxy-name rzeczywistą nazwą serwera proxy, który Cię interesuje. Przykładowy fragment dziennika:
        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"

        Znajdź tekst „uploaded collect proto for org: ” (przesłano protokół zbierania danych dla organizacji: ) z nazwą organizacji, a potem „, proxy: ” (serwer proxy: ) z nazwą serwera proxy.

      • Scenariusz błędu: nie udało się przesłać proto serwera proxy do centrum interfejsów API. W takim przypadku wyszukaj tekst „Failed to publish collect proto for org: {}, proxy: {}," 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

        Zastąp your-org-name rzeczywistą nazwą organizacji, a your-proxy-name – rzeczywistą nazwą serwera proxy, która Cię interesuje.

        Przykładowy fragment dziennika:
        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

        Poszukaj tekstu „failed to publish collect proto for org: ” (nie udało się opublikować protokołu zbierania dla organizacji:), po którym następuje nazwa organizacji, a następnie „, proxy: ” (serwer proxy:), po którym następuje nazwa serwera proxy.

    Środowisko wykonawcze/statystyki

    Nie udało się opublikować nagrania w NFS

    Przyczyna: wykorzystanie NFS przekracza 75%.

    Aby to zrobić: grep "Diskspace usage is at more than 75% of the allocated MaxDiskSpace at" /opt/apigee/var/log/edge-message-processor/logs/system.log

    Przyczyna: synchronizacja środowiska wykonawczego łącznika centrum interfejsów API nie jest włączona lub jest nieprawidłowo skonfigurowana

    Sprawdź te kwestie w /opt/apigee/customer/application/message-processor.properties::conf_message-processor-communication_uapim.enabled.environments=

    Sprawdź, czy wyświetlona jest właściwa organizacja i środowisko.

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

    Upewnij się, że wskazuje on prawidłową ścieżkę NFS.

    Jak sprawdzić, czy dane zostały opublikowane w NFS

    Rekordy są przechowywane w określonej ścieżce NFS, np. „/the/nfs/staging”.

    Możesz bezpośrednio sprawdzić zawartość tego katalogu, aby znaleźć nowo utworzone pliki. Obecność plików oznacza, że publikowanie w NFS się powiodło.

    Plik danych został usunięty bez przetwarzania

    Przyczyna: nazwa pliku nie zawierała prawidłowych informacji o organizacji lub środowisku.

    Dziennik do sprawdzenia: grep "Skipped and Deleted file" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Plik został usunięty z powodu braku konfiguracji organizacji

    Przyczyna: nie znaleziono konfiguracji specyficznej dla organizacji.

    Dziennik do sprawdzenia: grep "Deleted file .* due to missing org config" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Plik został usunięty z powodu nieprawidłowego środowiska

    Przyczyna: środowisko przeanalizowane na podstawie nazwy pliku nie istnieje w konfiguracji organizacji.

    Dziennik do sprawdzenia: grep "Deleted file .* due to invalid env" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Nie udało się przesłać pliku do Pub/Sub

    Przyczyna: nie udało się utworzyć wydawcy (np. z powodu nieprawidłowo skonfigurowanego konta usługi lub tematu).

    Log to Check: grep "Failed to create publisher for org" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Przesłano częściowo – nie udało się przesłać niektórych rekordów

    Przyczyna: nie udało się opublikować niektórych rekordów w pliku.

    Log to Check: grep "was not completely published" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log

    Plik został w pełni przetworzony i usunięty

    Dziennik do sprawdzenia: grep "File .* completely published to topic" /opt/apigee/var/log/edge-uapim-connector/edge-uapim-connector.log