Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Azure Logic Apps (Zużycie + Standardowa)
W tym wieloczęściowym przewodniku z instrukcjami pokazano, jak uzyskać dostęp do serwera SAP z przepływu pracy w usłudze Azure Logic Apps przy użyciu łącznika SAP. Za pomocą operacji łącznika SAP można tworzyć zautomatyzowane procesy uruchamiane przez zdarzenia na serwerze SAP lub w innych systemach oraz wykonywać akcje zarządzające zasobami na serwerze SAP.
Przepływy pracy aplikacji logiki Standard i Zużycie oferują łącznik zarządzany SAP hostowany i uruchamiany w środowisku wielodzierżawowym platformy Azure. Standardowe przepływy pracy oferują również wbudowany łącznik SAP hostowany i uruchamiany w jednodzierżawowej usłudze Azure Logic Apps. Aby uzyskać więcej informacji, zobacz Dokumentację techniczną łącznika.
Uwaga / Notatka
Ten przewodnik udostępnia linki do witryny internetowej SAP: do notatek pomocy technicznej SAP i artykułów w bazie wiedzy. W większości przypadków musisz zalogować się, aby uzyskać dostęp do pełnej zawartości.
Zgodność z oprogramowaniem SAP
Łącznik SAP jest zgodny z następującymi typami systemów SAP:
Lokalne i oparte na chmurze systemy SAP oparte na HANA, takie jak S/4 HANA.
Klasyczne lokalne systemy SAP, takie jak R/3 i ECC.
Oprogramowanie SAP musi obsługiwać wersję systemu SAP, z którą chcesz się połączyć. W przeciwnym razie wszelkie problemy, które mogą wystąpić, mogą nie być możliwe do rozwiązania. Aby uzyskać więcej informacji na temat wersji systemu SAP i informacji o konserwacji, zobacz macierz dostępności produktu SAP (PAM).
Łącznik SAP obsługuje następujące typy integracji komunikatów i danych z systemów opartych na oprogramowaniu SAP NetWeaver:
Dokument pośredni (IDoc)
Interfejs programowania aplikacji biznesowych (BAPI)
Zdalne wywołanie funkcji (RFC) i transakcyjne RFC (tRFC)
Łącznik SAP używa biblioteki SAP .NET Connector (NCo).
Aby użyć operacji łącznika SAP, musisz najpierw uwierzytelnić połączenie i mieć następujące opcje:
Możesz podać nazwę użytkownika i hasło.
Łącznik SAP obsługuje uwierzytelnianie za pomocą protokołu SAP Secure Network Communications (SNC).
Możesz użyć SNC dla jednokrotnego logowania (SSO) w SAP NetWeaver lub do zabezpieczeń oferowanych przez produkty zewnętrzne. Jeśli zdecydujesz się używać SNC, zapoznaj się z wymaganiami wstępnymi SNC.
Dokumentacja techniczna łącznika
Łącznik SAP ma różne wersje na podstawie typu aplikacji logiki i środowiska hosta.
Aplikacja logiki | Środowisko | Wersja łącznika |
---|---|---|
Konsumpcja | Wielodostępna usługa Azure Logic Apps | Łącznik zarządzany, który jest wyświetlany w galerii łączników w obszarze filtra Udostępniony. Aby uzyskać więcej informacji, zapoznaj się z następującą dokumentacją: - Odniesienie do konektora zarządzanego SAP - Łączniki zarządzane w usłudze Azure Logic Apps |
Norma | Jednodzierżawowe Azure Logic Apps i środowisko App Service Environment w wersji 3 (tylko plany Windows) | Łącznik zarządzany, który jest wyświetlany w galerii łączników w obszarze środowisko uruchomieniowe>, oraz wbudowany łącznik, który jest wyświetlany w galerii łączników pod filtrem Wbudowany i jest oparty na dostawcy usług. Wbudowany łącznik może bezpośrednio uzyskiwać dostęp do sieci wirtualnych platformy Azure za pomocą parametrów połączenia bez lokalnej bramy danych. Aby uzyskać więcej informacji, zapoznaj się z następującą dokumentacją: - Odniesienie do konektora zarządzanego SAP - Dokumentacja wbudowanego łącznika SAP - Łączniki zarządzane w usłudze Azure Logic Apps - Wbudowane łączniki w usłudze Azure Logic Apps |
Różnice łączników
Wbudowany łącznik SAP znacznie różni się od łącznika zarządzanego sap w następujący sposób:
Połączenia lokalne nie wymagają lokalnej bramy danych.
Zamiast tego wbudowany łącznik SAP komunikuje się bezpośrednio z serwerem SAP w zintegrowanej sieci wirtualnej, co eliminuje przeskoki, opóźnienia i punkty awarii bramy sieciowej. Upewnij się, że przekazujesz lub wdrażasz nidystrybuowalne biblioteki klienckie SAP w ramach aplikacji przepływu pracy logicznej. Aby uzyskać więcej informacji, zobacz wymagania wstępne w tym przewodniku.
Standardowe przepływy pracy aplikacji logiki wymagają biblioteki klienta SAP NCo 3.1, a nie systemu SAP NCo 3.0. Aby uzyskać więcej informacji, zobacz Wymagania wstępne.
Domyślnie wbudowane operacje łącznika SAP są bezstanowe. Można jednak włączyć tryb stanowy (koligację) dla tych operacji.
W trybie stanowym wbudowany łącznik SAP obsługuje konfiguracje wysokiej dostępności i skalowania w poziomie. Dla porównania, łącznik zarządzany przez SAP ma ograniczenia dotyczące lokalnej bramki danych, której użycie ogranicza się do jednego wystąpienia dla wyzwalaczy i do klastrów tylko w trybie awaryjnym dla akcji. Aby uzyskać więcej informacji, zobacz Łącznik zarządzany przez SAP — znane problemy i ograniczenia.
Obsługiwane są rozmiary ładunków do 100 MB, więc nie musisz używać identyfikatora URI obiektu blob dla dużych żądań.
Konkretne działania są dostępne dla wywołania BAPI, wywołania RFC i wysyłania IDoc. Te dedykowane akcje zapewniają lepsze środowisko dla stanowych interfejsów BAPI, transakcji RFC i deduplikacji IDoc i nie używają starszego modelu obsługi komunikatów protokołu SOAP Windows Communication Foundation (WCF).
Akcja Wywołaj interfejs BAPI zawiera maksymalnie dwie odpowiedzi z zwróconym kodem JSON:
Odpowiedź XML z bazy danych BAPI.
Zatwierdzenie BAPI lub wycofanie BAPI, jeśli włączysz opcję Automatyczne zatwierdzanie.
Ta funkcja rozwiązuje problem z łącznikiem zarządzanym przez oprogramowanie SAP, w którym wynik z zachowania automatycznego zatwierdzania jest dyskretny i widoczny tylko za pośrednictwem dzienników.
Standardowe przepływy pracy aplikacji logiki udostępniają ustawienia aplikacji, w których można określić osobiste środowisko zabezpieczeń (PSE) i hasło PSE.
Ta zmiana uniemożliwia przekazywanie wielu plików PSE, które nie są obsługiwane i powoduje błędy połączenia SAP. W przepływach pracy aplikacji logicznych typu Consumption, zarządzany łącznik SAP pozwala na określenie tych wartości za pomocą parametrów połączenia, co umożliwia przesyłanie wielu plików PSE, jednak ta funkcjonalność nie jest obsługiwana, przez co dochodzi do błędów połączenia w SAP.
Dłuższy limit czasu w porównaniu z łącznikiem zarządzanym przez SAP.
Wbudowany łącznik SAP natywnie działa w środowisku uruchomieniowym usługi Azure Logic Apps, w przeciwieństwie do łącznika zarządzanego SAP działającego w udostępnionej, globalnej, wielodostępnej infrastrukturze platformy Azure. Ta różnica w projekcie oznacza, że można zmienić domyślną wartość limitu czasu dla zasobu standardowej aplikacji logiki przy użyciu ustawień host.json o nazwie Runtime.FlowRunRetryableActionJobCallback.ActionJobExecutionTimeout i functionTimeout.
Możliwość dostosowania wartości limitu czasu oznacza, że można użyć wbudowanego łącznika SAP as-is dla długotrwałych żądań synchronicznych. W przeciwnym razie te żądania muszą używać schematu działania dla żądań opartych na webhookach, które są długotrwałe, w łączniku zarządzanym przez SAP, który ma znacznie krótszy, dwuminutowy limit czasu dla żądań synchronicznych.
Gdzie znaleźć
guid
itId
parametryParametry XML dla
guid
itId
nie są już dostępne w ładunkach wejściowych i wyjściowych XML. Zamiast tego parametry można znaleźć jako jawne parametry w projektancie przepływu pracy na karcie Parametry i jako dynamiczne wyrażenia wyjściowe.Obsługa pustych elementów XML
Wbudowany łącznik SAP: pusty element XML jest traktowany jako parametr SAP z jawną pustą wartością lub wartością domyślną. Aby pominąć wysyłanie parametru do systemu SAP, wystarczy usunąć pusty element z ładunku wejściowego.
Łącznik zarządzany SAP: Pusty element XML jest interpretowany jako brakujący parametr i nie jest wysyłany do funkcji SAP.
Przykład
Załóżmy, że masz następujący ładunek wejściowy SAP RFC:
<RfcName> <Parameter></Parameter> </RfcName>
We wbudowanym łączniku SAP, wywołanie SAP RFC zawiera parametr jako wyraźną pustą wartość ("").
W zarządzanym łączniku SAP wywołanie SAP RFC całkowicie pomija parametr.
Przycinanie znaków odstępów
Wbudowany łącznik SAP automatycznie przycina znaki odstępów w elementach XML.
Załóżmy na przykład, że masz następujące dane wejściowe:
<RfcName> <Parameter> </Parameter> </RfcName>
W wywołaniu funkcji SAP RFC znak odstępu w wartości Parametr jest traktowany jako pusty ciąg ('') i jest usuwany. Aby upewnić się, że wywołanie zachowuje spacje dokładnie tak, jak podano w ładunku, dołącz atrybut
xml:space="preserve"
do elementu, aby był zgodny ze specyfikacją W3C 2.10 White Space Handling, na przykład:<RfcName> <Parameter xml:space="preserve"> </Parameter> </RfcName>
Weryfikowanie formatu IDoc
Wbudowany łącznik SAP: ściśle weryfikuje ładunek wejściowy względem
IDoc Format
określonego w danych wejściowych akcji. Jeśli istnieje niezgodność między podanąIDoc Format
i wejściowym strukturą IDoc XML, wbudowany łącznik zgłasza błąd.Łącznik zarządzany przez oprogramowanie SAP: bezpośrednio wywnioskuje format IDoc z ładunku wejściowego, co zapewnia większą elastyczność, nie wymagając dokładnie pasującego formatu.
Obsługa segmentów grup XML usługi BizTalk
Wbudowany łącznik SAP: ściśle jest zgodny ze schematem zdefiniowanym przez generator schematów.
Segment kończący się
GRP
(segment grupy) musi definiować wszystkie segmenty podrzędne tylko jeden raz na wystąpienie.Aby reprezentować wiele zestawów segmentów podrzędnych, utwórz wiele wystąpień segmentu grupy, aby każde wystąpienie zawierało własny indywidualny zestaw segmentów podrzędnych.
Zarządzany łącznik SAP: umożliwia wielokrotne powtórzenia elementów podrzędnych w ramach pojedynczego segmentu grupy. Te powtórzenia są interpretowane jako liczne wystąpienia segmentu grupy.
Przykładowe zachowanie
W następującej strukturze pojedynczy segment grupy definiuje wiele sekwencji elementów podrzędnych, które są odrzucane przez wbudowany łącznik SAP:
<ns2:E2EDKT1002GRP> <ns2:E2EDKT1002> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT1002</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDID>FD</ns2:TDID> </ns2:E2EDKT1002> <ns2:E2EDKT2001> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT2001</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDLINE>CRSD</ns2:TDLINE> </ns2:E2EDKT2001> <ns2:E2EDKT1002> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT1002</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDID>DTP</ns2:TDID> </ns2:E2EDKT1002> <ns2:E2EDKT2001> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT2001</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDLINE>OriginalRelease:0|</ns2:TDLINE> <ns2:TDFORMAT>/</ns2:TDFORMAT> </ns2:E2EDKT2001> </ns2:E2EDKT1002GRP>
Zamiast tego użyj struktury łącznika SAP, w którym każda
E2EDKT1002GRP
instancja grupy zawiera tylko jedną sekwencję segmentów podrzędnych.<ns2:E2EDKT1002GRP> <ns2:E2EDKT1002> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT1002</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDID>FD</ns2:TDID> </ns2:E2EDKT1002> <ns2:E2EDKT2001> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT2001</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDLINE>CRSD</ns2:TDLINE> </ns2:E2EDKT2001> </ns2:E2EDKT1002GRP> <ns2:E2EDKT1002GRP> <ns2:E2EDKT1002> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT1002</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDID>DTP</ns2:TDID> </ns2:E2EDKT1002> <ns2:E2EDKT2001> <ns2:DATAHEADERCOLUMN_SEGNAM>E2EDKT2001</ns2:DATAHEADERCOLUMN_SEGNAM> <ns2:TDLINE>OriginalRelease:0|</ns2:TDLINE> <ns2:TDFORMAT>/</ns2:TDFORMAT> </ns2:E2EDKT2001> </ns2:E2EDKT1002GRP>
Zachowanie wbudowanego wyzwalacza
Konstrukcja przestrzeni nazw
Wyzwalacz konstruuje przestrzeń nazw w ładunku wyzwalacza SAP przy użyciu numeru wersji z metadanych IDoc, który jest pobierany przed przeanalizowaniem elementu IDoc (BizTalk XML lub zwykłego kodu XML). Aby zastąpić to źródło i zamiast tego użyć numeru wersji wydania z rekordu kontrolnego, przejdź do projektanta przepływu pracy i w parametrach wejściowych wyzwalacza ustaw właściwość EnforceControlRecordNamespace na wartość true.
Obsługa pustych elementów
Domyślnie wyzwalacz SAP nie zawiera pustych elementów w ładunku wyjściowym. Aby uwzględnić puste elementy w danych wyjściowych wyzwalacza, przejdź do projektanta przepływu pracy, a w parametrach wejściowych wyzwalacza ustaw właściwość EnableEmptyXmlNode na true.
Wbudowana akcja Generowanie schematu
Możesz wybrać spośród wielu typów operacji, takich jak BAPI, IDoc, RFC i tRFC, w przeciwieństwie do tego samego działania w zarządzanym łączniku SAP, który używa parametru SapActionUris i umożliwia wybór z systemu plików.
Możesz bezpośrednio podać nazwę parametru jako wartość niestandardową. Można na przykład określić parametr nazwa RFC z akcji Wywołaj RFC . Dla porównania, w zarządzanym łączniku SAP należy podać złożoną nazwę parametru Identyfikator URI akcji.
Z założenia ta akcja nie obsługuje generowania wielu schematów dla RFC, BAPIs lub IDoców w jednym wykonaniu akcji, co obsługuje łącznik zarządzany przez SAP. Ta zmiana możliwości zapobiega teraz próbom wysyłania dużej ilości zawartości w jednym wywołaniu.
Parametry łącznika
Oprócz prostych danych wejściowych, takich jak ciągi i liczby, łącznik SAP akceptuje następujące parametry tabeli (Type=ITAB
):
- Parametry kierunku tabeli, zarówno dane wejściowe, jak i wyjściowe, dla starszych wersji SAP.
- Zmiany parametrów, które zastępują parametry kierunku tabeli dla nowszych wydań SAP.
- Hierarchiczne parametry tabeli.
Znane problemy i ograniczenia
Łącznik zarządzany przez oprogramowanie SAP
Obecnie łącznik SAP nie obsługuje ciągów routera SAP. Lokalna brama danych musi istnieć w sieci wirtualnej, w której brama może bezpośrednio uzyskać dostęp do systemu SAP, z którym chcesz się połączyć.
Ogólnie rzecz biorąc, wyzwalacz SAP nie obsługuje klastrów bram danych. W niektórych scenariuszach przełączenia awaryjnego węzeł bramy danych, który komunikuje się z systemem SAP, może różnić się od aktywnego węzła, co powoduje nieoczekiwane zachowanie.
W przypadku scenariuszy wysyłania komunikatów obsługiwane są klastry bramy danych w trybie failover.
Akcje stanowe SAP nie obsługują klastrów bramy danych w trybie balansowania obciążenia. Komunikacja stanowa musi pozostać w tym samym węźle klastra bramy danych. Użyj bramy danych w trybie nieklastrowym lub w klastrze skonfigurowanym tylko do przełączania awaryjnego. Na przykład ten scenariusz dotyczy następujących akcji:
- Wszystkie akcje określające wartość identyfikatora sesji
- [BAPI] Zatwierdzanie transakcji
- [BAPI] Wycofywanie transakcji
- [BAPI — RFC] Zamknij sesję stanową
- [BAPI — RFC] Utwórz sesję stanową
W akcji o nazwie [BAPI] Wywołaj metodę w systemie SAP funkcja automatycznego zatwierdzania nie zatwierdza zmian BAPI, jeśli w obiekcie CallBapiResponse zwróconym przez akcję istnieje co najmniej jedno ostrzeżenie. Aby zatwierdzić zmiany BAPI pomimo wszelkich ostrzeżeń, wykonaj następujące kroki:
- Utwórz sesję jawnie przy użyciu akcji o nazwie [BAPI — RFC] Utwórz sesję stanową.
- W akcji o nazwie [BAPI] Wywołaj metodę w systemie SAP wyłącz opcję Automatyczne zatwierdzanie .
- Wywołaj akcję [BAPI] o nazwie Zatwierdź transakcję .
Połączenia oparte na adresach IP z serwerem SAP Message Server (konfiguracja z równoważeniem obciążenia)
Jeśli określisz adres IP, aby nawiązać połączenie z serwerem komunikatów SAP, na przykład moduł równoważenia obciążenia, połączenie może nadal zakończyć się niepowodzeniem z komunikatem o błędzie podobnym do "nazwa hosta SAPDBSERVER01.example.com nieznana". Serwer komunikatów instruuje łącznik SAP, aby używał nazwy hosta do połączenia z tylnym serwerem aplikacji SAP lub z serwerem znajdującym się za modułem równoważenia obciążenia. Jeśli usługa DNS nie może rozpoznać nazwy hosta, połączenie zakończy się niepowodzeniem.
W przypadku tego problemu istnieją następujące obejścia lub rozwiązania:
Upewnij się, że klient tworzący połączenie, taki jak komputer z lokalną bramą danych dla łącznika SAP, może rozpoznać nazwy hostów zwracane przez serwer komunikatów.
W transakcji o nazwie RZ11 zmień lub dodaj ustawienie SAP o nazwie ms/lg_with_hostname=0.
Kontekst lub tło problemu
SAP zaktualizował swój łącznik .NET (NCo) do wersji 3.1, co zmieniło sposób, w jaki łącznik żąda połączeń z serwerami wewnętrznymi za pomocą serwerów komunikatów. Łącznik używa teraz nowego interfejsu API do rozpoznawania serwera aplikacji przez serwer komunikatów, chyba że wymusisz użycie poprzedniego interfejsu API za pomocą ustawienia o nazwie ms/lg_with_hostname=0
. Aby uzyskać więcej informacji, zobacz Artykuł bazy wiedzy SAP 3305039 — ustawienie adresu IP SMLG nie jest brane pod uwagę podczas logowania do grupy logowania.
Wymagania wstępne
Konto i subskrypcja platformy Azure. Jeśli nie masz jeszcze subskrypcji platformy Azure, utwórz bezpłatne konto platformy Azure.
Serwer aplikacji SAP lub serwer komunikatów SAP, do którego chcesz uzyskać dostęp z usługi Azure Logic Apps.
Skonfiguruj serwer SAP i konto użytkownika, aby umożliwić korzystanie z RFC.
Aby uzyskać więcej informacji, w tym obsługiwanych typów kont użytkowników i minimalną wymaganą autoryzację dla każdego typu akcji (RFC, BAPI, IDoc), zobacz SAP Uwaga: 460089 — minimalne profile autoryzacji dla zewnętrznych programów RFC.
Konto użytkownika SAP wymaga dostępu do
RFC_METADATA
grupy funkcji i odpowiednich modułów funkcji dla następujących operacji:Operacji Dostęp do modułów funkcji Akcje RFC RFC_GROUP_SEARCH
iDD_LANGU_TO_ISOLA
Akcje BAPI BAPI_TRANSACTION_COMMIT
,BAPI_TRANSACTION_ROLLBACK
,RPY_BOR_TREE_INIT
,SWO_QUERY_METHODS
iSWO_QUERY_API_METHODS
Akcje IDoc IDOCTYPES_LIST_WITH_MESSAGES
,IDOCTYPES_FOR_MESTYPE_READ
,INBOUND_IDOCS_FOR_TID
,OUTBOUND_IDOCS_FOR_TID
,GET_STATUS_FROM_IDOCNR
iIDOC_RECORD_READ
Akcja odczytu tabeli SAP RFC BBP_RFC_READ_TABLE
lubRFC_READ_TABLE
.Udzielanie ścisłego minimalnego dostępu do serwera SAP dla połączenia SAP RFC_METADATA_GET
iRFC_METADATA_GET_TIMESTAMP
Obieg pracy aplikacji logicznej, z którego chcesz uzyskać dostęp do serwera SAP.
Aby zapoznać się z przepływem pracy typu Zużycie w wielodostępowym środowisku Azure Logic Apps, zobacz Wielodostępne wymagania wstępne.
Aby uzyskać standardowy przepływ pracy w usłudze Azure Logic Apps typu jednodzierżawowej, zobacz Wymagania wstępne dotyczące jednej dzierżawy.
Domyślnie wbudowane operacje łącznika SAP są bezstanowe. Aby uruchomić te operacje w trybie stanowym, zobacz Włączanie trybu stanowego dla wbudowanych łączników bezstanowych.
Komunikacja stanowa musi pozostać z tym samym wystąpieniem przepływu pracy podczas przetwarzania. Standardowa aplikacja logiki może użyć skalowania w poziomie, aby rozłożyć obciążenie na wiele wystąpień przepływu pracy w razie potrzeby. To wymaganie dotyczy następujących rodzajów operacji:
Wszystkie akcje, które określają wartość identyfikatora sesji , takie jak [BAPI] Zatwierdzanie transakcji.
Wszystkie akcje, które określają wartość identyfikatora transakcji , z wyjątkiem następujących akcji: [IDOC - RFC] Potwierdź identyfikator transakcji i [IDoc] Pobierz listę IDoc dla transakcji.
Odpowiadanie na serwer SAP
Aby użyć wyzwalacza łącznika zarządzanego lub wbudowanego SAP noszącego nazwę Po odebraniu komunikatu, wykonaj następujące zadania:
Skonfiguruj uprawnienia zabezpieczeń bramy SAP lub listę kontroli dostępu (ACL). W oknie dialogowym Monitor bramy (T-Code SMGW), w którym są wyświetlane pliki secinfo i reginfo, otwórz menu Goto i wybierz Expert Functions>External Security>Maintenance of ACL Files.
Wymagane jest następujące ustawienie uprawnień:
P TP=LOGICAPP HOST=<on-premises-gateway-server-IP-address> ACCESS=*
Ten wiersz ma następujący format:
P TP=<trading-partner-identifier-(program-name)-or-*-for-all-partners> HOST=<comma-separated-list-with-external-host-IP-or-network-names-that-can-register-the-program> ACCESS=<*-for-all-permissions-or-a-comma-separated-list-of-permissions>
Jeśli nie skonfigurujesz uprawnień zabezpieczeń bramy SAP Gateway, może zostać wyświetlony następujący błąd:
Rejestracja tp Microsoft.PowerBI.EnterpriseGateway z hosta <host-name> nie jest dozwolona
Aby uzyskać więcej informacji, zobacz artykuł bazy wiedzy SAP 1850230 — GW: "Rejestracja identyfikatora< programu tp >jest niedozwolona".
Skonfiguruj rejestrowanie zabezpieczeń bramy SAP, aby ułatwić znajdowanie problemów z listą kontroli dostępu (ACL). Aby uzyskać więcej informacji, zobacz artykuł pomocy SAP dotyczący konfigurowania rejestrowania bramy.
W oknie dialogowym Konfiguracja połączeń RFC (T-Code SM59) utwórz połączenie RFC z typem TCP/IP . Upewnij się, że Typ aktywacji jest ustawiony na Zarejestrowany program serwera. Ustaw dla połączenia RFC wartość Typ komunikacji z systemem docelowym na Unicode.
Jeśli używasz tego wyzwalacza SAP z parametrem Format IDOC ustawionym na FlatFile wraz z akcją Dekoduj plik prosty, musisz użyć
early_terminate_optional_fields
właściwości w schemacie pliku prostego, ustawiając wartość natrue
.To wymaganie jest konieczne, ponieważ rekord danych IDoc pliku prostego wysyłany przez system SAP w wywołaniu
IDOC_INBOUND_ASYNCHRONOUS
tRFC nie jest wypełniony do pełnej długości pola SDATA. Usługa Azure Logic Apps udostępnia oryginalne dane IDoc w formie płaskich plików, bez wypełnienia, tak jak zostały odebrane z oprogramowania SAP. Ponadto po połączeniu tego wyzwalacza SAP z akcją Dekoduj plik prosty schemat dostarczony do akcji musi być zgodny.W przepływach pracy Zużycie i Standardowa, wyzwalacz zarządzany przez SAP o nazwie Po odebraniu komunikatu używa tej samej lokalizacji identyfikatora URI, aby zarówno odnawiać, jak i anulować subskrypcję webhook. Operacja odnawiania używa metody HTTP
PATCH
, podczas gdy operacja anulowania subskrypcji używa metody HTTPDELETE
. To zachowanie może spowodować, że operacja odnowienia będzie wyświetlana jako operacja anulowania subskrypcji w historii wyzwalacza, ale operacja jest nadal odnawiana, ponieważ wyzwalacz używaPATCH
jako metody HTTP, a nieDELETE
.W przypadku standardowych przepływów pracy wbudowany wyzwalacz SAP o nazwie Po odebraniu komunikatu używa zamiast tego wyzwalacza usługi Azure Functions i pokazuje tylko rzeczywiste wywołania zwrotne z systemu SAP.
W przypadku wyzwalacza wbudowanego łącznika SAP o nazwie Po odebraniu komunikatu należy włączyć integrację sieci wirtualnej i porty prywatne, wykonując kroki opisane w temacie Włączanie trybu stanowego dla bezstanowych wbudowanych łączników w usłudze Azure Logic Apps. W przeciwnym razie bez tych wymagań akcja o nazwie Odpowiadanie na serwer SAP może nie mieć stanu niezbędnego do prawidłowego działania.
Aby uruchomić wyzwalacz lokalnie, możesz uruchomić przepływ pracy w programie Visual Studio Code. Aby uzyskać więcej informacji na temat wymagań dotyczących konfiguracji programu Visual Studio Code, zobacz Create Standard workflows in Azure Logic Apps with Visual Studio Code (Tworzenie standardowych przepływów pracy w usłudze Azure Logic Apps za pomocą programu Visual Studio Code). Należy również skonfigurować następujące zmienne środowiskowe na komputerze, na którym jest instalowany program Visual Studio Code:
- WEBSITE_PRIVATE_IP: ustaw tę wartość zmiennej środowiskowej na 127.0.0.1 jako adres localhost.
- WEBSITE_PRIVATE_PORTS: ustaw tę wartość zmiennej środowiskowej na dwa wolne i użyteczne porty na komputerze lokalnym, oddzielając wartości przecinkami (,), na przykład 8080 8088.
Zawartość komunikatu do wysłania na serwer SAP, na przykład przykładowy plik IDoc. Ta zawartość musi być w formacie XML i zawierać przestrzeń nazw akcji SAP , której chcesz użyć. Dokumenty IDoc można wysłać za pomocą prostego schematu pliku, opakowując je w kopertę XML.
W przypadku scenariuszy, w których chcesz wysyłać IDocs z przepływu pracy aplikacji Logic Apps do systemu SAP, zmień tryb przetwarzania SAP z domyślnego ustawienia Wyzwalacz natychmiast na Wyzwalacz według programu w tle, aby przepływ pracy nie przekroczył limitu czasu.
Jeśli system SAP jest obciążony, kolejkowany dokument IDoc wywołuje limit czasu. Przykładowy scenariusz polega na tym, że przepływ pracy wysyła partię dokumentów IDocs jednocześnie do systemu SAP. Domyślny tryb przetwarzania powoduje, że system SAP blokuje wywołanie przychodzące dla transmisji IDoc do momentu, gdy przetwarzanie IDoc zostanie zakończone. W usłudze Azure Logic Apps akcje przepływu pracy mają domyślnie 2-minutowy limit czasu.
Aby zmienić tryb przetwarzania systemu SAP, wykonaj następujące kroki:
W rozwiązaniu SAP znajdź profil partnera SAP i otwórz ustawienia Profile partnerów . Możesz użyć kodu transakcji we20 (T-Code) z prefiksem /n .
Na karcie Opcje ruchu przychodzącego w obszarze Przetwarzanie według modułu funkcji zmień ustawienie na Wyzwalanie według programu w tle z Wyzwalania natychmiastowego.
Ustawienie Wyzwalacz przez program w tle umożliwia natychmiastowe zakończenie wywołania tRFC transportu IDoc, zamiast blokować połączenie do czasu zakończenia przetwarzania IDoc. To ustawienie działa jednak tylko wtedy, gdy dokument IDoc nie zawiera segmentu nadpisującego zachowanie ekspresowe, zgodnie z artykułem bazy wiedzy SAP o numerze 1777090 — dokumenty IDoc są przetwarzane natychmiast, pomimo wybrania opcji „Wyzwalaj przez program w tle” w WE20.
Aby uzyskać więcej informacji, zobacz następujące zasoby:
Wymagania wstępne dotyczące łączności sieciowej
System SAP wymaga łączności sieciowej z hosta biblioteki łącznika SAP .NET Connector (NCo):
W przypadku przepływów pracy w aplikacjach logiki zużyciowej w wielodostępnej usłudze Azure Logic Apps lokalna brama danych hostuje bibliotekę łącznika SAP .NET Connector (NCo). Jeśli używasz lokalnego klastra bramy danych, wszystkie węzły klastra wymagają łączności sieciowej z systemem SAP.
W przypadku standardowych przepływów pracy aplikacji logiki w usłudze Azure Logic Apps z jedną dzierżawą zasób aplikacji logiki hostuje bibliotekę łącznika SAP .NET Connector (NCo). Dlatego zasób aplikacji logiki musi włączyć integrację z siecią wirtualną, a ta sieć wirtualna musi mieć łączność sieciową z systemem SAP.
Wymagana przez system łączność sieciowa sap obejmuje następujące serwery i usługi:
SAP Application Server, Dispatcher service (dla wszystkich typów logowania)
System SAP może zawierać wiele serwerów aplikacji SAP. Host biblioteki programu SAP .NET Connector (NCo) wymaga dostępu do każdego serwera i ich usług.
SAP Message Server, usługa komunikatów (dla grupy typu logowania)
Serwer komunikatów i usługa będą przekierowywać do jednej lub więcej usług Dispatchera serwerów aplikacyjnych. Host biblioteki programu SAP .NET Connector (NCo) wymaga dostępu do każdego serwera i ich usług.
Serwer Gateway SAP, usługa Gateway
SAP Gateway Server, zabezpieczona usługa Gateway
Wymagana przez system łączność sieciowa SAP obejmuje również ten serwer i usługę do użycia z protokołem Secure Network Communications (SNC).
Przekierowywanie żądań z serwera aplikacji, usługi dyspozytora do serwera bramy, usługa bramy odbywa się automatycznie w bibliotece łącznika SAP .NET Connector (NCo). To przekierowanie występuje nawet wtedy, gdy w parametrach połączenia są udostępniane tylko informacje o Serwerze Aplikacji i usłudze Dyspozytora.
Jeśli używasz modułu równoważenia obciążenia przed systemem SAP, musisz przekierować wszystkie usługi do odpowiednich serwerów.
Aby uzyskać więcej informacji na temat usług i portów SAP, zobacz Tcp/IP Ports of All SAP Products (Porty TCP/IP wszystkich produktów SAP).
Uwaga / Notatka
Upewnij się, że włączono łączność sieciową na hoście biblioteki łącznika SAP .NET Connector (NCo) i że wymagane porty są otwarte w zaporach i grupach zabezpieczeń sieci. W przeciwnym razie występują błędy, takie jak partner nie został osiągnięty ze składnika NI (interfejs sieciowy) i tekst błędu, taki jak WSAECONNREFUSED: Odmowa połączenia.
Wymagania wstępne dotyczące biblioteki klienta SAP NCo
Aby użyć łącznika SAP, musisz zainstalować bibliotekę klienta NCo łącznika SAP dla platformy Microsoft .NET 3.1. Poniższa lista zawiera opis wymagań wstępnych dotyczących biblioteki klienta SAP NCo na podstawie przepływu pracy, w którym jest używany łącznik SAP:
Wersja:
W przypadku przepływów pracy aplikacji logiki typu Consumption, które korzystają z lokalnej bramy danych, upewnij się, że masz zainstalowaną najnowszą 64-bitową wersję programu SAP Connector dla platformy Microsoft .NET 3.1.3.0 dla systemu Windows 64-bitowego (x64). Brama danych działa tylko w systemach 64-bitowych. Zainstalowanie nieobsługiwanej wersji 32-bitowej powoduje wystąpienie błędu "nieprawidłowego obrazu".
W przypadku przepływów pracy aplikacji logiki Standard można zainstalować najnowszą 64-bitową lub 32-bitową wersję dla łącznika SAP Connector (NCo 3.1) dla platformy Microsoft .NET 3.1.3.0 skompilowanego za pomocą programu .NET Framework 4.6.2. Upewnij się jednak, że zainstalujesz wersję zgodną z konfiguracją w zasobie aplikacji logicznej w warstwie Standardowej. Aby sprawdzić wersję używaną przez aplikację logiki, wykonaj następujące kroki:
W witrynie Azure Portal otwórz zasób standardowej aplikacji logiki.
W menu zasobów aplikacji logiki w obszarze Ustawienia wybierz pozycję Konfiguracja.
Na stronie Konfiguracja wybierz kartę Ustawienia ogólne. W obszarze Ustawienia platformy sprawdź, czy wartość platformy jest ustawiona na wartość 64-bitowa, czy 32-bitowa.
Upewnij się, że zainstalowano wersję łącznika SAP Connector (NCo 3.1) dla Microsoft .NET 3.1.3.0 skompilowaną z użyciem .NET Framework 4.6.2, która odpowiada konfiguracji Twojej platformy.
Z domyślnego folderu instalacyjnego biblioteki klienta skopiuj pliki zestawu (.dll) do innej lokalizacji w zależności od scenariusza w następujący sposób. Lub opcjonalnie, jeśli używasz tylko zarządzanego łącznika SAP, wybierz pozycję Rejestracja w globalnej pamięci podręcznej zestawów podczas instalacji biblioteki klienta SAP NCo. Wbudowany łącznik SAP obecnie nie obsługuje rejestracji GAC.
W przypadku przepływu pracy konsumpcyjnego, który działa w usłudze multitenant Azure Logic Apps i korzysta z lokalnej bramy danych, skopiuj następujące pliki zestawu (.dll) do folderu instalacyjnego lokalnej bramy danych, na przykład C:\Program Files\On-Premises Data Gateway. Biblioteka klienta OPROGRAMOWANIA SAP NCo 3.0 zawiera następujące zestawy:
- libicudecnumber.dll
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
Pamiętaj, aby skopiować pliki zestawu do folderu instalacyjnego bramy danych. W przeciwnym razie połączenie SAP może zakończyć się niepowodzeniem z komunikatem o błędzie . Sprawdź informacje o koncie i/lub uprawnienia i spróbuj ponownie. Dalsze problemy można rozwiązać przy użyciu przeglądarki dziennika powiązań zestawów platformy .NET. To narzędzie umożliwia sprawdzenie, czy pliki zestawów znajdują się w prawidłowej lokalizacji.
W przypadku przepływów pracy Standard skopiuj te pliki zestawu (.dll) do lokalizacji, z której można przekazać je do zasobu aplikacji logiki w portalu Azure lub do lokalnego projektu aplikacji logiki w Visual Studio Code. Biblioteka klienta SAP NCo 3.1 zawiera następujące zestawy:
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
Istnieją następujące relacje między biblioteką klienta SAP NCo, programem .NET Framework, środowiskiem uruchomieniowym platformy .NET i bramą danych:
Zarówno adapter SAP firmy Microsoft, jak i usługa serwera bramy używają platformy .NET Framework 4.7.2.
Funkcja SAP NCo dla programu .NET Framework 4.0 współpracuje z procesami, które używają środowiska uruchomieniowego .NET 4.0 do 4.8.
Funkcja SAP NCo dla programu .NET Framework 2.0 współpracuje z procesami, które używają środowiska uruchomieniowego .NET 2.0 do 3.5, ale nie działają już z najnowszą bramą.
Wymagania wstępne SNC
W przypadku przepływów pracy konsumpcyjnych w wielodostępnych usłudze Azure Logic Apps, które korzystają z lokalnej bramy sieciowej i opcjonalnie SNC, należy również skonfigurować następujące ustawienia.
Upewnij się, że wersja biblioteki SNC i jej zależności są zgodne ze środowiskiem SAP. Aby rozwiązać problemy ze zgodnością biblioteki, możesz użyć lokalnej bramy danych i dzienników bramy danych.
Upewnij się, że skopiowano następujące pliki zestawu (.dll) znajdujące się w folderze biblioteki klienta SAP NCo 3.0 do folderu instalacyjnego bramy danych typu lokalnego, na przykład C:\Program Files\On-Premises Data Gateway.
- libicudecnumber.dll
- rscp4n.dll
- sapnco.dll
- sapnco_utils.dll
W przypadku narzędzia SAPGENPSE należy w szczególności użyć sapgenpse.exe.
Jeśli dostarczasz osobiste środowisko zabezpieczeń (PSE) wraz z połączeniem, nie musisz kopiować ani konfigurować PSE i SECUDIR dla lokalnej bramy danych.
Jeśli włączysz SNC za pośrednictwem zewnętrznego produktu zabezpieczeń, takiego jak sapseculib, Kerberos lub NTLM, upewnij się, że biblioteka SNC istnieje na tym samym komputerze co instalacja bramy danych. W tym zadaniu skopiuj pliki binarne biblioteki SNC do tego samego folderu co instalacja bramy danych na komputerze lokalnym, na przykład C:\Program Files\On-Premises Data Gateway.
Uwaga / Notatka
Na komputerze z instalacją bramy danych i biblioteką SNC nie ustawiaj zmiennych środowiskowych dla SNC_LIB i SNC_LIB_64. W przeciwnym razie te zmienne mają pierwszeństwo przed wartością biblioteki SNC przekazywaną przez łącznik.
Aby użyć SNC z logowaniem jednokrotnym (SSO), upewnij się, że usługa bramy sieciowej jest uruchomiona jako użytkownik mapowany na użytkownika SAP. Aby zmienić domyślne konto dla konta usługi bramy, wybierz pozycję Zmień konto i wprowadź poświadczenia użytkownika.
Aby uzyskać więcej informacji na temat włączania protokołu SNC, zobacz Włączanie bezpiecznej komunikacji sieciowej (SNC).
Wymagania wstępne dotyczące środowiska usługi Azure Logic Apps
W przypadku przepływu pracy typu Consumption w środowisku wielodostępnym Azure Logic Apps zarządzany łącznik SAP integruje się z systemami SAP za pośrednictwem lokalnej bramy danych. Na przykład w scenariuszach, w których przepływ pracy wysyła komunikat do systemu SAP, brama danych działa jako klient RFC i przekazuje żądania odebrane z przepływu pracy do systemu SAP. Podobnie w scenariuszach, w których przepływ pracy odbiera komunikat z systemu SAP, brama danych działa jako serwer RFC, który odbiera żądania od systemu SAP i przekazuje je do przepływu pracy.
Na komputerze hosta lub maszynie wirtualnej, która istnieje w tej samej sieci wirtualnej co system SAP, z którym nawiązujesz połączenie, pobierz i zainstaluj lokalną bramę danych.
Brama danych ułatwia bezpieczny dostęp do lokalnych danych i zasobów. Upewnij się, że używasz obsługiwanej wersji bramy. Jeśli wystąpi problem z bramą, spróbuj przeprowadzić uaktualnienie do najnowszej wersji, co może obejmować aktualizacje w celu rozwiązania problemu.
W portalu Azure utwórz zasób bramy Azure dla instalacji lokalnej bramy danych.
Na tym samym komputerze lokalnym co instalacja lokalnej bramy danych pobierz i zainstaluj najnowszą bibliotekę klienta SAP NCo.
Dla komputera hosta z instalacją lokalnej bramy danych skonfiguruj rozpoznawanie nazw hostów sieciowych i nazw usług.
Aby używać nazw hostów lub nazw usług dla połączeń z Azure Logic Apps, należy skonfigurować rozpoznawanie nazw dla każdego serwera aplikacji SAP, serwera komunikatów i serwera bramy razem z ich usługami.
W pliku%windir%\System32\drivers\etc\hosts lub na serwerze DNS dostępnym dla komputera hosta na potrzeby instalacji lokalnej bramy danych skonfiguruj rozpoznawanie nazw hosta sieciowego.
W pliku%windir%\System32\drivers\etc\services skonfiguruj rozpoznawanie nazw usług.
Jeśli nie zamierzasz używać nazw hostów sieciowych ani nazw usług dla połączenia, możesz zamiast tego użyć adresów IP hosta i numerów portów usług.
Jeśli nie masz wpisu DNS dla systemu SAP, w poniższym przykładzie przedstawiono przykładowy wpis dla pliku hosts:
10.0.1.9 sapserver # SAP single-instance system host IP by simple computer name 10.0.1.9 sapserver.contoso.com # SAP single-instance system host IP by fully qualified DNS name
Na poniższej liście przedstawiono przykładowy zestaw wpisów dla plików usług:
sapdp00 3200/tcp # SAP system instance 00 dialog (application) service port sapgw00 3300/tcp # SAP system instance 00 gateway service port sapmsDV6 3601/tcp # SAP system ID DV6 message service port
Włączanie bezpiecznej komunikacji sieciowej (SNC)
Dla przepływu pracy typu Consumption uruchamianego w wielodostępnych Azure Logic Apps, można włączyć SNC do uwierzytelniania, co ma zastosowanie tylko przy użyciu bramy danych. Przed rozpoczęciem upewnij się, że zostały spełnione wszystkie niezbędne wymagania wstępne i wymagania wstępne SNC.
Aby uzyskać więcej informacji na temat usługi SNC, zobacz Artykuł Getting started with SAP SNC for RFC integrations - SAP blog (Wprowadzenie do integracji oprogramowania SAP SNC na potrzeby integracji RFC — blog SAP).
W portalu Azure otwórz aplikację logiki Consumption i przepływ pracy w projektancie.
Dodaj operację łącznika zarządzaną przez SAP lub edytuj połączenie dla istniejącej operacji.
W polu Informacje o połączeniu SAP podaj wymagane informacje.
Uwaga / Notatka
W przypadku typu uwierzytelnianiapodstawowa jest obecnie jedyną dostępną opcją. Pola Nazwa użytkownika sap i hasło SAP są opcjonalne. Jeśli nie podasz nazwy użytkownika i hasła, łącznik używa certyfikatu klienta podanego w późniejszym kroku na potrzeby uwierzytelniania.
Aby włączyć funkcję SNC, w polu Informacje o połączeniu SAP wybierz pozycję Użyj SNC i podaj odpowiednie wymagane informacje:
Parametr Opis Biblioteka SNC Wprowadź jedną z następujących wartości:
— Nazwa biblioteki SNC, na przykład sapsnc.dll
- Ścieżka względna do lokalizacji instalacji NCo, na przykład .\security\sapsnc.dll
- Ścieżka bezwzględna do lokalizacji instalacji NCo, na przykład c:\security\sapsnc.dllSNC - logowanie jednokrotne Wybierz pozycję Zaloguj się przy użyciu tożsamości SNC lub Zaloguj się przy użyciu nazwy użytkownika/hasła podanego na poziomie RFC.
Zazwyczaj tożsamość SNC jest używana do uwierzytelniania wywołującego. Zamiast tego możesz przeprowadzić uwierzytelnianie przy użyciu nazwy użytkownika i hasła, ale ta wartość parametru jest nadal szyfrowana.SNC Moja nazwa W większości przypadków można pominąć tę wartość. Zainstalowane rozwiązanie SNC zwykle zna własną nazwę SNC. W przypadku, gdy rozwiązanie obsługuje wiele tożsamości, może być konieczne określenie tożsamości do użycia dla tego konkretnego miejsca docelowego lub serwera. Nazwa partnera SNC Wprowadź nazwę zaplecza SNC, na przykład p:CN=DV3, OU=LA, O=MS, C=US. Jakość ochrony SNC Wybierz jakość usługi do użycia na potrzeby komunikacji SNC z tym konkretnym miejscem docelowym lub serwerem. System zaplecza definiuje wartość domyślną. Produkt zabezpieczający używany dla SNC definiuje maksymalną wartość. Certyfikat SNC Wprowadź klucz publiczny zakodowany w formacie base64 dla certyfikatu, który ma być używany do identyfikowania klienta w oprogramowaniu SAP.
Uwaga: pamiętaj, aby postępować zgodnie z poniższymi wskazówkami:
— Nie dołączaj nagłówka ani stopki PEM.
— Nie wprowadzaj klucza prywatnego dla certyfikatu klienta tutaj. Środowisko zabezpieczeń osobistych (PSE) musi zawierać pasujący klucz prywatny dla tego certyfikatu i może zawierać inne certyfikaty prywatne. Aby uzyskać więcej informacji, zobacz następny parametr.PSE Wprowadź swoje osobiste środowisko zabezpieczeń SNC (PSE) jako plik binarny zakodowany w formacie base64.
— Twój PSE musi zawierać klucz prywatny certyfikatu klienta, którego odcisk palca jest zgodny z kluczem publicznym certyfikatu klienta w parametrze certyfikatu SNC.
— Mimo że program PSE może zawierać wiele certyfikatów klienta, aby użyć różnych certyfikatów klienta, zamiast tego utwórz oddzielne przepływy pracy.Aby zakończyć tworzenie połączenia, wybierz pozycję Utwórz nowe.
Jeśli parametry są poprawne, zostanie utworzone połączenie. Jeśli wystąpił problem z parametrami, w oknie dialogowym tworzenia połączenia zostanie wyświetlony komunikat o błędzie. Aby rozwiązać problemy z parametrami połączenia, możesz użyć lokalnej instalacji bramy danych oraz lokalnych dzienników tej bramy.
Konwertowanie binarnego pliku PSE na format zakodowany w formacie base64
Użyj skryptu programu PowerShell, na przykład:
Param ([Parameter(Mandatory=$true)][string]$psePath, [string]$base64OutputPath) $base64String = [convert]::ToBase64String((Get-Content -path $psePath -Encoding byte)) if ($base64OutputPath -eq $null) { Write-Output $base64String } else { Set-Content -Path $base64OutputPath -Value $base64String Write-Output "Output written to $base64OutputPath" }
Zapisz skrypt jako plik pseConvert.ps1 , a następnie wywołaj skrypt, na przykład:
.\pseConvert.ps1 -psePath "C:\Temp\SECUDIR\request.pse" -base64OutputPath "connectionInput.txt" Output written to connectionInput.txt
Jeśli nie podasz parametru ścieżki wyjściowej, dane wyjściowe skryptu w konsoli zawierają podziały wierszy. Usuń podziały wierszy w parametrach wejściowych połączenia zakodowanych w formacie base 64.
Konfigurowanie i testowanie wysyłania dokumentów IDocs z oprogramowania SAP do przepływu pracy
Aby wysłać dokumenty IDocs z systemu SAP do przepływu pracy aplikacji Logic Apps, wykonaj następujące kroki, aby skonfigurować i przetestować konfigurację SAP z tym przepływem pracy. Te kroki dotyczą tylko testowania, ponieważ środowiska produkcyjne wymagają innego skonfigurowania.
Aby wysłać dokumenty IDocs z systemu SAP do przepływu pracy, należy skonfigurować minimalną konfigurację, wykonując następujące kroki:
- Utwórz miejsce docelowe RFC.
- Utwórz połączenie z usługą Advanced Business Application Programming (ABAP).
- Utwórz port odbiorcy.
- Utwórz port nadawcy.
- Utwórz partnera systemu logicznego.
- Utwórz profil partnera.
- Testowanie wysyłania komunikatów.
Utwórz miejsce docelowe RFC
To miejsce docelowe identyfikuje przepływ pracy aplikacji logicznej jako port odbiorczy.
W systemie SAP otwórz ustawienia Konfiguracja połączeń RFC . Możesz użyć kodu transakcji sm59 (T-Code) z prefiksem /n .
Wybierz Połączenia TCP/IP>Utwórz.
Utwórz nowe miejsce docelowe RFC z następującymi ustawieniami:
W polu Miejsce docelowe RFC wprowadź nazwę.
Na karcie Ustawienia techniczne w polu Typ aktywacji wybierz pozycję Zarejestrowany program serwera.
W polu Identyfikator programu wprowadź wartość. Na serwerze SAP wyzwalacz przepływu pracy jest rejestrowany przy użyciu tego identyfikatora.
Ważne
W identyfikatorze programu SAP jest uwzględniana wielkość liter. Upewnij się, że stale używasz tego samego formatu zapisu dla identyfikatora programu podczas konfigurowania przepływu pracy i serwera SAP. W przeciwnym razie podczas próby wysłania dokumentu IDoc do systemu SAP mogą wystąpić następujące błędy w monitorze tRFC (T-Code SM58):
- Nie można odnaleźć IDOC_INBOUND_ASYNCHRONOUS funkcji
- Klient RFC bez protokołu ABAP (typ partnera) nie jest obsługiwany
Aby uzyskać więcej informacji z oprogramowania SAP, zobacz następujące uwagi:
Na karcie Unicode w polu Typ komunikacji z systemem docelowym wybierz pozycję Unicode.
Uwaga / Notatka
Biblioteki klienckie SAP .NET obsługują tylko kodowanie znaków Unicode. Jeśli otrzymasz błąd Nieobsługiwany klient RFC spoza ABAP (typ partnera) podczas wysyłania dokumentu IDoc z oprogramowania SAP do usługi Azure Logic Apps, sprawdź, czy wartość Typ komunikacji z systemem docelowym jest ustawiona na Unicode.
Zapisz zmiany.
Zarejestruj nowy identyfikator programu w usłudze Azure Logic Apps, tworząc przepływ pracy aplikacji logiki rozpoczynający się od wyzwalacza zarządzanego SAP o nazwie Po odebraniu komunikatu.
W ten sposób, gdy zapisujesz przepływ pracy, usługa Azure Logic Apps rejestruje identyfikator programu w bramie SAP Gateway.
W historii wyzwalacza przepływu pracy sprawdź stan rejestracji w dziennikach lokalnej bramy danych dla SAP Adaptera, jeśli ma to zastosowanie, oraz w dziennikach śledzenia bramy SAP Gateway.
W monitorze bramy SAP Gateway (T-Code SMGW) w sekcji Logged-On Klienci nowa rejestracja jest wyświetlana jako Zarejestrowany serwer.
Aby przetestować połączenie, w obszarze nowego miejsca docelowego RFC wybierz pozycję Test połączenia.
Tworzenie połączenia ABAP
Ten punkt docelowy identyfikuje system SAP jako port wysyłający.
W systemie SAP otwórz ustawienia Konfiguracja połączeń RFC . Możesz użyć kodu transakcji sm59 (T-Code) z prefiksem /n .
Wybierz Połączenia ABAP>Utwórz.
W polu Miejsce docelowe RFC wprowadź identyfikator testowego systemu SAP.
W obszarze Ustawienia techniczne pozostaw host docelowy pusty, aby utworzyć połączenie lokalne z systemem SAP.
Zapisz zmiany.
Aby przetestować połączenie, wybierz pozycję Test połączenia.
Tworzenie portu nadawcy
W systemie SAP otwórz ustawienia Porty w przetwarzaniu IDOC. Możesz użyć kodu transakcji we21 (T-Code) z prefiksem /n .
Wybierz Porty>Transakcyjny RFC>Utwórz.
W wyświetlonym polu ustawień wybierz własną nazwę portu.
W przypadku portu testowego wprowadź nazwę rozpoczynającą się od SAP. Zapisz zmiany.
Wszystkie nazwy portów nadawcy muszą zaczynać się od liter SAP, na przykład SAPTEST.
W ustawieniach nowego portu nadawcy dla miejsca docelowego RFC wprowadź identyfikator połączenia ABAP.
Zapisz zmiany.
Tworzenie portu odbiorcy
W systemie SAP otwórz ustawienia Porty w przetwarzaniu IDOC. Możesz użyć kodu transakcji we21 (T-Code) z prefiksem /n .
Wybierz Porty>Transakcyjny RFC>Utwórz.
W wyświetlonym polu ustawień wybierz własną nazwę portu. W przypadku portu testowego wprowadź nazwę. Zapisz zmiany.
W ustawieniach nowego portu odbiorcy dla miejsca docelowego RFC wprowadź identyfikator dla testowego miejsca docelowego RFC.
Zapisz zmiany.
Utwórz partnera systemu logicznego
W systemie SAP otwórz ustawienia Widok zmiany "Systemy logiczne": Przegląd. Możesz użyć kodu transakcji bd54 (T-Code).
Zaakceptuj wyświetlony następujący komunikat ostrzegawczy: Przestroga: Tabela jest międzykliencka
Nad listą zawierającą istniejące systemy logiczne wybierz pozycję Nowe wpisy.
W przypadku nowego systemu logicznego wprowadź identyfikator Log.System i krótki opis nazwy . Zapisz zmiany.
Po wyświetleniu monitu o Workbench utwórz nowe żądanie, podając opis, lub jeśli zostało już utworzone żądanie, pomiń ten krok.
Po utworzeniu żądania aplikacji Workbench połącz to żądanie z żądaniem aktualizacji tabeli. Aby potwierdzić, że tabela została zaktualizowana, zapisz zmiany.
Tworzenie profilów partnerów
W przypadku środowisk produkcyjnych należy utworzyć następujące dwa profile partnerów:
- Jeden profil nadawcy, który jest Twoją organizacją i systemem SAP.
- Jeden profil odbiorcy, który jest zasobem aplikacji logicznej i elementem przepływu pracy.
W systemie SAP otwórz ustawienia Profile partnerskie . Możesz użyć kodu transakcji we20 (T-Code) z prefiksem /n .
W obszarze Profile partnerów wybierz pozycję Typ partnera LS>Utwórz.
Utwórz nowy profil partnera przy użyciu następujących ustawień:
Ustawienia Opis Partner Nr. Wprowadź identyfikator partnera systemu logicznego. Partn. Typ Wprowadź LS. Agent Wprowadź identyfikator konta użytkownika SAP do użycia podczas rejestrowania identyfikatorów programu dla usługi Azure Logic Apps lub innych systemów innych niż SAP. Zapisz zmiany.
Jeśli nie utworzono partnera systemu logicznego, zostanie wyświetlony błąd Wprowadź prawidłowy numer partnera.
W ustawieniach profilu partnera w obszarze parametry wychodzące, wybierz Utwórz parametr wychodzący.
Utwórz nowy parametr wychodzący z następującymi ustawieniami:
Wprowadź typ komunikatu, na przykład CREMAS.
Wprowadź identyfikator portu odbiorcy.
Wprowadź rozmiar IDoc dla Rozmiar pakietu. Ewentualnie, aby wysłać dokumenty IDoc pojedynczo z systemu SAP, wybierz pozycję Przekaż dokument IDoc natychmiast.
Zapisz zmiany.
Testowanie wysyłania komunikatów
W oprogramowaniu SAP otwórz ustawienia narzędzia testowego do przetwarzania IDoc . Możesz użyć kodu transakcji we19 (T-Code) z prefiksem /n .
W obszarze Szablon do testowania wybierz pozycję Za pośrednictwem typu komunikatu. Wprowadź typ wiadomości, na przykład CREMAS. Wybierz pozycję Utwórz.
Potwierdź komunikat Jakiego typu IDoc?, klikając Kontynuuj.
Wybierz węzeł EDIDC . Wprowadź odpowiednie wartości dla portów odbiorcy i nadawcy. Wybierz pozycję Kontynuuj.
Wybierz pozycję Standardowe przetwarzanie wychodzące.
Aby rozpocząć przetwarzanie danych wychodzących IDoc, wybierz pozycję Kontynuuj.
Po zakończeniu przetwarzania narzędzia zostanie wyświetlony komunikat IDoc wysłany do systemu SAP lub zewnętrznego programu .
Aby sprawdzić błędy przetwarzania, użyj kodu transakcji sm58 (T-Code) z prefiksem /n .
Tworzenie przepływów pracy dla typowych scenariuszy SAP
Aby skorzystać z przewodnika dotyczącego tworzenia przepływów pracy dla typowych obciążeń integracji SAP, zapoznaj się z następującymi krokami:
- Odbieranie komunikatu z oprogramowania SAP
- Odbieranie pakietów IDoc z oprogramowania SAP
- Wysyłanie dokumentów IDocs do systemu SAP
- Generowanie schematów dla artefaktów w oprogramowaniu SAP
Tworzenie przepływów pracy dla zaawansowanych scenariuszy SAP
- Zmienianie nagłówków języka na potrzeby wysyłania danych do systemu SAP
- Potwierdzanie transakcji oddzielnie i unikanie zduplikowanych dokumentów IDoc
Znajdowanie rozszerzonych dzienników błędów (tylko łącznik zarządzany)
Jeśli używasz łącznika zarządzanego sap, możesz znaleźć pełne komunikaty o błędach, sprawdzając rozszerzone dzienniki adaptera SAP. Można również włączyć rozszerzony plik dziennika dla łącznika SAP.
W przypadku wersji bramy danych lokalnie instalowanej od kwietnia 2020 r. i starszych, dzienniki są domyślnie wyłączone.
W przypadku lokalnych wersji bramy danych z czerwca 2020 r. i nowszych można włączyć dzienniki bramy w ustawieniach aplikacji.
Domyślny poziom rejestrowania to Ostrzeżenie.
Jeśli włączysz dodatkowe rejestrowanie w ustawieniach diagnostycznych lokalnej aplikacji bramy danych, poziom rejestrowania zostanie zwiększony do informacji.
Aby zwiększyć poziom rejestrowania do Verbose, zaktualizuj następujące ustawienie w pliku konfiguracji. Zazwyczaj plik konfiguracji znajduje się w lokalizacji
C:\Program Files\On-premises data gateway\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config
.<setting name="SapTraceLevel" serializeAs="String"> <value>Verbose</value> </setting>
Konfigurowanie rozszerzonego rejestrowania SAP w lokalnej bramie danych na miejscu (tylko zarządzany łącznik)
Jeśli używasz lokalnej bramy danych dla usługi Azure Logic Apps, możesz skonfigurować rozszerzony plik dziennika dla łącznika SAP. Możesz użyć swojej lokalnej bramy danych do przekierowania zdarzeń śledzenia zdarzeń systemu Windows (ETW) do rotacyjnych plików dziennika, które są zawarte w plikach rejestrowania bramy .zip.
Wszystkie dzienniki konfiguracji i usługi bramy można wyeksportować do pliku .zip z ustawień aplikacji bramy.
Uwaga / Notatka
Rozszerzone rejestrowanie może wpływać na wydajność pracy, gdy zawsze jest włączone. Najlepszym rozwiązaniem jest wyłączenie rozszerzonych plików dziennika po zakończeniu analizowania i rozwiązywania problemu.
Przechwytywanie zdarzeń ETW
Opcjonalnie zaawansowane zadanie rejestrowania umożliwia bezpośrednie przechwytywanie zdarzeń ETW, a następnie korzystanie z danych w usłudze Azure Diagnostics w usłudze Event Hubs lub zbieranie danych w dziennikach usługi Azure Monitor. Aby uzyskać więcej informacji, zapoznaj się z najlepszymi rozwiązaniami dotyczącymi zbierania i przechowywania danych.
Aby pracować z wynikowymi plikami ETL, możesz użyć narzędzia PerfView lub napisać własny program. W poniższym przewodniku jest używany element PerfView:
W menu PerfView wybierz pozycję Zbieraj>Zbieraj, aby przechwycić zdarzenia.
W parametrze dodatkowego dostawcy wprowadź
*Microsoft-LobAdapter
aby określić dostawcę SAP do przechwytywania zdarzeń Adaptera SAP. Jeśli nie określisz tych informacji, dane śledzenia obejmują tylko ogólne zdarzenia ETW.Zachowaj inne ustawienia domyślne. Jeśli chcesz, możesz zmienić nazwę pliku lub lokalizację w parametrze Plik danych .
Wybierz Rozpocznij zbieranie, aby rozpocząć śledzenie.
Po odtworzeniu problemu lub zebraniu wystarczającej ilości danych analizy wybierz pozycję Zatrzymaj zbieranie.
Aby udostępnić dane innej osobie, takiej jak inżynierowie pomocy technicznej platformy Azure, skompresuj plik ETL.
Aby wyświetlić zawartość śladu:
W aplikacji PerfView wybierz pozycję Plik>Otwórz i wybierz wygenerowany plik ETL.
Na pasku bocznym Narzędzia PerfView, sekcja Zdarzenia znajdująca się pod twoim plikiem ETL.
W zakładce Filtruj filtruj według
Microsoft-LobAdapter
, aby wyświetlić tylko odpowiednie zdarzenia i procesy bramy.
Testowanie przepływu pracy
W zależności od tego, czy masz przepływ pracy typu zużycie w usłudze Azure Logic Apps w trybie wielodostępności, czy standardowy przepływ pracy w usłudze Azure Logic Apps w środowisku z jedną dzierżawą, wykonaj odpowiednie kroki.
Jeśli zasób aplikacji logicznej typu Consumption nie jest jeszcze włączony, w menu aplikacji logicznej wybierz Przegląd. Na pasku narzędzi wybierz pozycję Włącz.
Na pasku narzędzi projektanta wybierz pozycję Uruchom>, aby ręcznie uruchomić przepływ pracy.
Aby wyzwolić przepływ pracy, wyślij komunikat z systemu SAP.
Wróć do strony Przegląd aplikacji logiki. W obszarze Historia przebiegów znajdź wszystkie nowe uruchomienia dla przepływu pracy.
Otwórz najnowszy przebieg, który pokazuje przebieg ręczny. Znajdź i przejrzyj sekcję danych wyjściowych wyzwalacza.
Włącz rejestrowanie i śledzenie biblioteki klienta SAP (NCo) (tylko wewnętrzny łącznik)
Jeśli musisz zbadać wszelkie problemy z tym składnikiem, możesz skonfigurować niestandardowe śledzenie NCo oparte na plikach tekstowych, którego może zażądać od Ciebie pomoc techniczna SAP lub Microsoft. Domyślnie ta funkcja jest wyłączona, ponieważ włączenie tego śledzenia może negatywnie wpłynąć na wydajność i szybko zapełniać miejsce do magazynowania hosta aplikacji.
Tę funkcję śledzenia można kontrolować na poziomie aplikacji, dodając następujące ustawienia:
W witrynie Azure Portal otwórz zasób standardowej aplikacji logiki.
W menu aplikacji logiki w obszarze Ustawienia wybierz pozycję Zmienne środowiskowe , aby przejrzeć ustawienia aplikacji.
Na stronie Zmienne środowiskowe na karcie Ustawienia aplikacji dodaj następujące ustawienia aplikacji:
SAP_RFC_TRACE_DIRECTORY: katalog, w którym mają być przechowywane pliki śledzenia NCo, na przykład C:\home\LogFiles\NCo.
SAP_RFC_TRACE_LEVEL: Poziom śledzenia NCo z poziomem 4 jako sugerowaną wartością dla typowego szczegółowego rejestrowania. Pomoc techniczna SAP lub Microsoft może zażądać ustawienia innego poziomu śledzenia.
Uwaga / Notatka
W przypadku standardowych przepływów pracy aplikacji logiki korzystających ze środowiska uruchomieniowego w wersji 1.69.0 lub nowszej można włączyć rejestrowanie dla wielu poziomów śledzenia, oddzielając każdy poziom śledzenia przecinkiem (,).
Aby znaleźć wersję uruchomieniową przepływu pracy, wykonaj następujące kroki:
- W witrynie Azure Portal w menu przepływu pracy wybierz pozycję Przegląd.
- W sekcji Podstawy znajdź właściwość Wersja środowiska uruchomieniowego .
SAP_CPIC_TRACE_LEVEL: Wspólny interfejs programowania dla komunikacji (CPI-C) poziom śledzenia z Szczegółowy jako sugerowana wartość dla typowego szczegółowego rejestrowania. Pomoc techniczna SAP lub Microsoft może zażądać ustawienia innego poziomu śledzenia.
Aby uzyskać więcej informacji na temat dodawania ustawień aplikacji, zobacz Edytowanie ustawień hosta i aplikacji dla standardowych przepływów pracy aplikacji logiki.
Zapisz zmiany. Ten krok powoduje ponowne uruchomienie aplikacji.
Dostępne poziomy śledzenia
Poziomy śledzenia NCo
Wartość | Opis |
---|---|
Poziom 1 | Poziom śledzenia wywołań funkcji zdalnych. |
Poziom 2 | Poziom śledzenia wywołań funkcji zdalnych i publicznych wywołań metod interfejsu API. |
Poziom3 | Poziom śledzenia wywołań funkcji zdalnych, wywołań metod publicznego interfejsu API i wewnętrznych wywołań metod interfejsu API. |
Poziom 4 | Poziom śledzenia wywołań funkcji zdalnych, wywołań metod publicznego interfejsu API, wewnętrznych wywołań metod interfejsu API, zrzutów heksadecymalnych dla protokołu RFC i informacji związanych z siecią. |
Blokowanie | Zapisuje dane w plikach śledzenia, które pokazują, kiedy wątki żądają, uzyskują i zwalniają blokady obiektów. |
Metadane | Śledzi metadane związane ze zdalnym wywołaniem funkcji dla każdego wywołania. |
Żaden | Poziom tłumienia wszystkich wyjściowych danych śledzenia. |
ParametrData | Śledzi dane kontenera wysyłane i odbierane podczas każdego wywołania funkcji zdalnej. |
Wydajność | Zapisuje dane w plikach śledzenia, które mogą pomóc w analizowaniu problemów z wydajnością. |
PublicAPI | Śledzi większość metod publicznego interfejsu API, z wyjątkiem metod typu getter, setter lub metod powiązanych. |
InternalAPI | Śledzi większość metod wewnętrznego API, z wyjątkiem metod pobierających (getters), ustawiających (setters) lub powiązanych. |
RemoteFunctionCall | Śledzi zdalne wywołania funkcji. |
RfcData | Śledzi bajty wysyłane i odbierane podczas każdego wywołania funkcji zdalnej. |
Dostawca sesji | Śledzi wszystkie metody aktualnie używanej implementacji ISessionProvider. |
UstawWartość | Zapisuje informacje w plikach śledzenia dotyczących wartości ustawionych dla parametrów funkcji lub pól struktur lub tabel. |
Poziomy śledzenia CPIC
Wartość | Opis |
---|---|
Wyłączony | Brak rejestrowania |
Podstawowy | Rejestrowanie podstawowe |
Pełne informacje | Pełne rejestrowanie |
VerboseWithData | Szczegółowe logowanie ze wszystkimi zrzutami odpowiedzi serwera |
Wyświetl ślad
W menu zasobów standardowej aplikacji logiki w obszarze Narzędzia programistyczne wybierz pozycję Narzędzia> zaawansowanePrzejdź.
Na pasku narzędzi Kudu wybierz Debug Console>CMD.
Przejdź do folderu ustawienia aplikacji o nazwie $SAP_RFC_TRACE_DIRECTORY.
Zostanie wyświetlony nowy folder o nazwie NCo lub dowolna użyta nazwa folderu dla wartości ustawienia aplikacji C:\home\LogFiles\NCo, który został ustawiony wcześniej.
Otwórz folder $SAP_RFC_TRACE_DIRECTORY zawierający następujące pliki:
Dzienniki śledzenia NCo: plik o nazwie dev_nco_rfc.log, jeden lub wiele plików o nazwie nco_rfc_NNNN.log i jeden lub wiele plików o nazwie nco_rfc_NNNN.trc plików, gdzie NNNN jest identyfikatorem wątku.
Dzienniki śledzenia CPIC: jeden lub wiele plików o nazwie nco_cpic_NNNN.trc, w których NNNN jest identyfikatorem wątku.
Aby wyświetlić zawartość w pliku dziennika lub śledzenia, wybierz przycisk Edytuj obok pliku.
Uwaga / Notatka
Jeśli pobierasz plik dziennika lub śledzenia, który jest aktualnie używany lub otwarty przez przepływ pracy aplikacji logiki, pobrany plik może być pusty.
Włączanie śledzenia SAP Common Crypto Library (CCL) (tylko dla wbudowanego łącznika)
Jeśli musisz rozwiązać wszelkie problemy z biblioteką kryptograficzną podczas korzystania z uwierzytelniania SNC, możesz skonfigurować dostosowane śledzenie CCL oparte na plikach tekstowych. Możesz użyć dzienników CCL do rozwiązywania problemów z uwierzytelnianiem przez SNC lub udostępnić je pomocy technicznej firmy Microsoft lub SAP, jeśli zostaniesz poproszony. Domyślnie ta funkcja jest wyłączona, ponieważ włączenie tego śledzenia może negatywnie wpłynąć na wydajność i szybko zapełniać miejsce do magazynowania hosta aplikacji.
Tę funkcję śledzenia można kontrolować na poziomie aplikacji, dodając następujące ustawienia:
W witrynie Azure Portal otwórz zasób standardowej aplikacji logiki.
W menu zasobów standardowej aplikacji logiki w obszarze Narzędzia programistyczne wybierz pozycję Narzędzia> zaawansowanePrzejdź.
Na pasku narzędzi Kudu wybierz Debug Console>CMD.
Przejdź do lokalizacji w folderze C:\home\site\wwwroot i utwórz plik tekstowy, na przykład: CCLPROFILE.txt.
Aby uzyskać więcej informacji na temat parametrów rejestrowania, zobacz artykuł bazy wiedzy SAP 3192871 — Jak sprawdzić informacje o wersji biblioteki CommonCryptoLib w systemie ABAP. Poniższy przykład zawiera przykładową konfigurację śledzenia:
ccl/trace/directory=C:\home\LogFiles\CCLLOGS ccl/trace/level=4 ccl/trace/rotatefilesize=10000000 ccl/trace/rotatefilenumber=10
W menu aplikacji logiki w obszarze Ustawienia wybierz pozycję Zmienne środowiskowe , aby przejrzeć ustawienia aplikacji.
Na stronie Zmienne środowiskowe na karcie Ustawienia aplikacji dodaj następujące ustawienie aplikacji:
CCL_PROFILE: katalog, w którym utworzono CCLPROFILE.txt , na przykład C:\home\site\wwwroot\CCLPROFILE.txt.
Zapisz zmiany. Ten krok powoduje ponowne uruchomienie aplikacji.
Wyświetl ślad
W menu zasobów standardowej aplikacji logiki w obszarze Narzędzia programistyczne wybierz pozycję Narzędzia> zaawansowanePrzejdź.
Na pasku narzędzi Kudu wybierz Debug Console>CMD.
Przejdź do folderu dla parametru $ccl/trace/directory , który pochodzi z pliku CCLPROFILE.txt .
Zazwyczaj pliki śledzenia mają nazwy sec-Microsoft.Azure.Work-$processId.trc i sec-sapgenpse.exe-$processId.trc.
Przepływ pracy aplikacji logicznej wykonuje uwierzytelnianie SNC w formie procesu dwuetapowego:
Przepływ pracy aplikacji logiki wywołuje sapgenpse.exe w celu wygenerowania pliku cred_v2 z pliku PSE.
Ślady związane z tym krokiem można znaleźć w pliku o nazwie sec-sapgenpse.exe-$processId.trc.
Przepływ pracy aplikacji logiki uwierzytelnia dostęp do serwera SAP, korzystając z wygenerowanego pliku cred_v2, przy czym biblioteka klienta SAP wywołuje wspólną bibliotekę kryptograficzną.
Ślady związane z tym krokiem można znaleźć w pliku o nazwie sec.Microsoft.Azure.Work-$processId.trc.
Wysyłanie telemetrii SAP z lokalnej bramy danych do Azure Application Insights.
Począwszy od aktualizacji z sierpnia 2021 r. dla lokalnej bramy danych, operacje łącznika SAP mogą wysyłać dane telemetryczne z biblioteki klienta SAP NCo oraz ślady z adaptera Microsoft SAP do Application Insights. Ta funkcja jest funkcją w usłudze Azure Monitor. Dane telemetryczne obejmują przede wszystkim następujące dane:
- Metryki i ślady oparte na metrykach i monitorach rozwiązania SAP NCo
- Ślady z adaptera SAP firmy Microsoft
Metryki i ślady z biblioteki klienta SAP NCo
Metryki oparte na technologii SAP NCo są wartościami liczbowymi, które mogą lub nie mogą się różnić w danym okresie na podstawie użycia i dostępności zasobów w lokalnej bramie danych. Możesz użyć tych metryk, aby lepiej zrozumieć kondycję systemu i utworzyć alerty dotyczące następujących działań:
- Spadek kondycji systemu
- Zdarzenia nietypowe
- Duże obciążenie systemu
Te informacje są wysyłane do tabeli usługi Application Insights o nazwie customMetrics. Domyślnie metryki są wysyłane w 30-sekundowych odstępach czasu.
Ślady oparte na oprogramowaniu SAP NCo obejmują informacje tekstowe używane z metrykami. Te informacje są wysyłane do tabeli usługi Application Insights o nazwie traces. Domyślnie ślady są wysyłane w 10-minutowych odstępach czasu.
Metryki i ślady rozwiązania SAP NCo są oparte na metrykach rozwiązania SAP NCo, w szczególności na następujących klasach NCo:
- RfcDestinationMonitor
- Monitor Połączeń RFC
- RfcServerMonitor
- RfcRepositoryMonitor
Aby uzyskać więcej informacji na temat metryk, które udostępnia każda klasa, zobacz dokumentację rozwiązania SAP NCo.
Konfigurowanie telemetrii SAP dla usługi Application Insights
Przed wysłaniem telemetrii SAP na potrzeby instalacji bramy do usługi Application Insights należy utworzyć i skonfigurować zasób usługi Application Insights. Aby uzyskać więcej informacji, zapoznaj się z następującą dokumentacją:
Aby włączyć wysyłanie danych telemetrycznych SAP do usługi Application Insights, wykonaj następujące kroki:
Pobierz pakiet NuGet dla Microsoft.ApplicationInsights.EventSourceListener.dll z tej lokalizacji: https://www.nuget.org/packages/Microsoft.ApplicationInsights.EventSourceListener/2.14.0.
Dodaj pobrany plik do katalogu instalacyjnego lokalnej bramy danych, na przykład C:\Program Files\On-Premises Data Gateway.
W katalogu instalacyjnym lokalnej bramy danych sprawdź, czy plik Microsoft.ApplicationInsights.dll ma ten sam numer wersji co dodany plik Microsoft.ApplicationInsights.EventSourceListener.dll . Brama obecnie używa wersji 2.14.0.
W pliku ApplicationInsights.config dodaj swój klucz instrumentacji usługi Application Insights, usuwając komentarz z wiersza zawierającego element
<InstrumentationKey></InstrumentationKey>
. Zastąp symbol zastępczy your-Application-Insights-instrumentation-key swoim kluczem, na przykład:<?xml version="1.0" encoding="utf-8"?> <ApplicationInsights schemaVersion="2014-05-30" xmlns="http://schemas.microsoft.com/ApplicationInsights/2013/Settings"> <!-- Uncomment this element and insert your Application Insights key to receive ETW telemetry about your gateway <InstrumentationKey>*your-instrumentation-key-placeholder*</InstrumentationKey> --> <TelemetryModules> <Add Type="Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule, Microsoft.ApplicationInsights"> <IsHeartbeatEnabled>false</IsHeartbeatEnabled> </Add> <Add Type="Microsoft.ApplicationInsights.EventSourceListener.EventSourceTelemetryModule, Microsoft.ApplicationInsights.EventSourceListener"> <Sources> <Add Name="Microsoft-LobAdapter" Level="Verbose" /> </Sources> </Add> </TelemetryModules> </ApplicationInsights>
W pliku ApplicationInsights.config można zmienić wymaganą wartość śladów
Level
dla operacji łącznika SAP, na przykład zgodnie z wymaganiami:<Add Type="Microsoft.ApplicationInsights.EventSourceListener.EventSourceTelemetryModule, Microsoft.ApplicationInsights.EventSourceListener"> <Sources> <Add Name="Microsoft-LobAdapter" Level="Verbose" /> </Sources> </Add>
Aby uzyskać więcej informacji, zapoznaj się z następującą dokumentacją:
Level
wartości: Enum typu EventLevel
Po zastosowaniu zmian uruchom ponownie lokalną usługę bramy danych.
Przeglądanie metryk w usłudze Application Insights
Po uruchomieniu operacji SAP w przepływie pracy aplikacji Logic Apps, możesz przejrzeć dane telemetryczne wysłane do usługi Application Insights.
W witrynie Azure Portal otwórz zasób usługi Application Insights.
W menu zasobów w obszarze Monitorowanie wybierz pozycję Dzienniki.
Poniższy zrzut ekranu przedstawia witrynę Azure Portal, na której zostanie otwarta strona Dzienniki zasobu usługi Application Insights:
Na stronie Dzienniki można utworzyć zapytanie korzystające z języka KQL (Kusto Query Language) na podstawie określonych wymagań.
Możesz użyć wzorca zapytania podobnego do następującego przykładowego zapytania:
customMetrics | extend DestinationName = tostring(customDimensions["DestinationName"]) | extend MetricType = tostring(customDimensions["MetricType"]) | where customDimensions contains "RfcDestinationMonitor" | where name contains "MaxUsedCount"
Po uruchomieniu zapytania przejrzyj wyniki.
Poniższy zrzut ekranu przedstawia tabelę wyników metryk przykładowego zapytania:
Kolumna Opis MaxUsedCount "Maksymalna liczba połączeń klientów, które były jednocześnie używane przez monitorowaną lokalizację docelową", zgodnie z opisem w dokumentacji rozwiązania SAP NCo. Możesz użyć tej wartości, aby zrozumieć liczbę jednocześnie otwartych połączeń. valueCount Pokazuje 2 dla każdego odczytu, ponieważ metryki są generowane w 30-sekundowych odstępach czasu. Usługa Application Insights agreguje te metryki o minutę. DestinationName Zawiera ciąg znaków, który jest wewnętrzną nazwą adaptera SAP firmy Microsoft. Aby lepiej zrozumieć ten punkt docelowy wywołania funkcji zdalnej (RFC), użyj tej wartości z
traces
, na przykład:customMetrics | extend DestinationName = tostring(customDimensions["DestinationName"]) | join kind=inner (traces | extend DestinationName = tostring(customDimensions["DestinationName"]), AppServerHost = tostring(customDimensions["AppServerHost"]), SncMode = tostring(customDimensions["SncMode"]), SapClient = tostring(customDimensions["Client"]) | where customDimensions contains "RfcDestinationMonitor" ) on DestinationName , $left.DestinationName == $right.DestinationName | where customDimensions contains "RfcDestinationMonitor" | where name contains "MaxUsedCount" | project AppServerHost, SncMode, SapClient, name, valueCount, valueSum, valueMin, valueMax
Możesz również tworzyć wykresy metryk lub alerty, korzystając z tych funkcji w usłudze Application Insights, na przykład:
Ślady z adaptera SAP firmy Microsoft
Możesz użyć śladów wysyłanych z adaptera SAP firmy Microsoft do analizy poproblemowej i znalezienia wszelkich istniejących błędów w systemie wewnętrznym, które mogą, ale nie muszą ujawniać się w wyniku operacji łącznika SAP. Te ślady zostały message
ustawione na wartość "n\a"
, ponieważ pochodzą z wcześniejszej struktury źródła zdarzeń, która poprzedza usługę Application Insights, na przykład:
traces
| where message == "n/a"
| where severityLevel > 0
| extend ActivityId = tostring(customDimensions["ActivityId"])
| extend fullMessage = tostring(customDimensions["fullMessage"])
| extend shortMessage = tostring(customDimensions["shortMessage"])
| where ActivityId contains "8ad5952b-371e-4d80-b355-34e28df9b5d1"
Poniższy zrzut ekranu przedstawia tabelę wyników śledzenia przykładowego zapytania: