Chciałbym wygenerować plik dziennika zawierający wszystkie zapytania SQL wysłane przez ArcGIS Server (ArcSDE) do bazy danych Oracle. Czy jest na to sposób? Używam Oracle 11g i ArcGIS Server 10.0 w systemie Windows. ArcSDE jest używany w połączeniu bezpośrednim.
arcgis-10.0
arcgis-server
sql
oracle-11g
log
yo_haha
źródło
źródło
Odpowiedzi:
Istnieje wiele sposobów śledzenia dowolnego połączenia ArcSDE. Połączenia między aplikacją kliencką a klientem ArcSDE są rejestrowane w pliku śledzenia SDE, między klientem ArcSDE a serwerem w pliku przechwytywania SDE, serwer ArcSDE rejestruje określone zdarzenia w usłudze lub dziennik bezpośrednich połączeń, a połączenia z bazą danych są rejestrowane pliki dziennika DBMS.
Pliki śledzenia ArcSDE rejestrują każde wywołanie klienta ArcSDE. Te pliki są zwykle duże i głośne. Spójrz na SDETraceLoc i SDETraceMode w pomocy dbinit . Wartości te można również ustawić jako zmienne środowiskowe przed uruchomieniem aplikacji, działa to w przypadku aplikacji i bezpośrednich połączeń.
Pliki ArcSDE Intercept są zwykle bardziej pomocne. Pokażą, ile czasu spędza w jakim połączeniu. Uwaga: SDE działa na zasadzie strumieni. Niektóre polecenia (takie jak wstawianie, aktualizacje i usuwanie) ustawiają informacje w strumieniu, a następnie wykonują polecenie. Zwykle numer strumienia jest pierwszą liczbą całkowitą po poleceniu w pliku przechwytującym. Może to być mylące, jeśli masz wiele strumieni (widziałem do 26 strumieni). Możesz spojrzeć na SDEIntercept i SDEInterceptLoc w pomocy dbinit lub w tym artykule KB na temat plików SDE Intercept, aby uzyskać więcej informacji i przykładów.
Pliki dziennika usługi ArcSDE w folderze% SDE_HOME% \ etc lub pliki dziennika bezpośredniego połączenia w folderach% SDE_HOME% \ etc lub% TEMP% zawierają ogólne informacje o tym, co dzieje się z usługą lub połączeniem. Ilość rejestrowanych informacji można zwiększyć za pomocą zmiennej SDEVerbose ( pomoc dbinit ).
Pliki logów i śladów DBMS są bardzo przydatne. Ale dają tylko część obrazu. Ponadto niektóre bazy danych (np. Oracle) w rzeczywistości nie uwzględniają wszystkich typów błędów w śledzeniu DBMS. Istnieje wiele sposobów włączenia śledzenia SQL. Komentarz Devdatty powyżej prowadzi do dodatkowych informacji.
Inne linki: Głębsze kopanie - Rozwiązywanie problemów z błędami geoprzetwarzania podczas korzystania z danych ArcSDE
źródło