Konfigurowanie agenta agent dla Node.js

Aby agent mógł monitorować aplikację Node.js, należy dodać do niej moduł gromadzący dane i zrestartować ją.

Zanim rozpoczniesz

Zanim będzie można ponownie skonfigurować agenta w tej samej wersji, należy wyczyścić pliki modułu gromadzącego dane, które zostały utworzone w poprzedniej konfiguracji:
  1. Przejdź do katalogu katalog_instalacyjny/lx8266/nj/bin.
  2. Uruchom komendę ./uninstall.sh, aby usunąć istniejące pliki modułu gromadzącego dane.

O tym zadaniu

Agent Node.js to agent o jednej instancji. Agent ten rejestruje podwęzły dla każdej monitorowanej aplikacji Node.js. Struktura podwęzła jest następująca:

NJ:nazwa-hosta_port:NJA
Wskazówka: Jeśli jedna aplikacja Node.js nasłuchuje na wielu portach, zostanie użyty port o najniższym numerze.
Aby agent mógł monitorować aplikację Node.js, należy dodać do niej moduł gromadzący dane i zrestartować ją. Moduł gromadzący dane agenta gromadzi dane i przekazuje je do agenta Node.js. Obecnie dostępne są następujące moduły gromadzące dane agenta:
  • Moduł gromadzący dane zasobów gromadzi informacje na temat monitorowanych zasobów z aplikacji Node.js.
  • Moduł gromadzący dane diagnostyczne gromadzi dane diagnostyczne i dane monitorowania zasobów z aplikacji Node.js.
  • Moduł gromadzący dane śledzenia metod zbiera dane śledzenia metod, dane diagnostyczne i dane monitorowania zasobów aplikacji Node.js.

Procedura

  1. Upewnij się, że identyfikator użytkownika, który jest używany do uruchamiania i zatrzymywania serwera aplikacji, ma pełne uprawnienia do katalogu katalog_instalacyjny agenta.
  2. Przejdź do katalogu katalog_instalacyjny/bin i uruchom komendę:
    ./nodejs-agent.sh config
  3. Postępuj zgodnie z instrukcjami, aby określić wartości dla następujących opcji konfiguracyjnych:
    KNJ_NODEJS_RUNTIME_BIN_LOCATION
    Ścieżka katalogu bin środowiska Node.js. Domyślnym katalogiem jest /usr/local/bin.
    KNJ_NPM_RUNTIME_BIN_LOCATION
    Ścieżka katalogu bin zawierającego komendę npm. Domyślnym katalogiem jest /usr/local/bin.
    KNJ_NPM_LIB_LOCATION
    Ścieżka katalogu lib w globalnym katalogu instalacyjnym pakietu npm. Katalogiem domyślnym jest /usr/local/lib. Na przykład, jeśli pakiet npm został zainstalowany za pomocą komendy npm install -g, katalogiem instalacji jest /katalog_główny_nodejs/lib/node_modules oraz KNJ_NPM_LIB_LOCATION is /nodejs_home/lib.
    CP_PORT
    Port wykorzystywany przez agenta do nasłuchiwania danych od klientów gniazda. Wartość 0 oznacza, że używany jest port krótkotrwały. Wartość domyślna: 63336.
    Uwaga: Nie można użyć numeru portu, który jest już używany w systemie. Aby sprawdzić, czy port jest już używany, wpisz komendę netstat -apn | grep numer_portu.
  4. Uruchom agenta, wpisując następującą komendę:
    ./nodejs-agent.sh start
  5. Upewnij się, że agent dla Node.js został pomyślnie uruchomiony. Jeśli agent uruchomił się pomyślnie, tworzony jest katalog KNJ_NPM_LIB_LOCATION/node_modules/ibmapm.
  6. Na podstawie posiadanej oferty i wymagań należy wstawić jedną z następujących pozycji do pliku .js aplikacji Node.js w celu skonfigurowania modułu gromadzącego dane:
    Uwaga: Można dodać tylko jedną pozycję do aplikacji Node.js, aby włączyć gromadzenie danych agenta. W przypadku włączenia funkcji, które nie są uwzględnione w ofercie, może być wykonywana niepotrzebna praca, co zmniejsza wydajność działania aplikacji.
    • W przypadku posiadania wyłącznie możliwości monitorowania zasobów można dodać moduł gromadzący dane zasobów. W tym celu należy wstawić następujący wiersz na początku pliku aplikacji Node.js:
      require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm');
      Jeśli KNJ_NPM_LIB_LOCATION w danym środowisku ma wartość /usr/local/lib, należy wstawić:
      require('/usr/local/lib/node_modules/ibmapm');
    • W przypadku posiadania - oprócz możliwości monitorowania zasobów - funkcji diagnozowania, można dodać jeden z następujących modułów gromadzących dane agenta:
      • W celu dodania modułu gromadzącego dane śledzenia należy wstawić następujący wiersz na początku pliku aplikacji Node.js:
        require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm/methodtrace.js');
      • W celu dodania modułu gromadzącego dane diagnostyczne należy wstawić następujący wiersz na początku pliku aplikacji Node.js:
        require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm/deepdive.js');
      • W celu dodania modułu gromadzącego dane monitorowania należy wstawić następujący wiersz na początku pliku aplikacji Node.js:
        require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm');

      Aby zagwarantować najlepszą wydajność, moduł gromadzący dane śledzenia należy dodawać tylko na czas debugowania.

    Uwaga: Kod wtyczek zmienił się od produktu Cloud APM Marzec 2017. W przypadku aktualizowania agenta z wcześniejszej wersji, należy zaktualizować kod istniejących modułów gromadzących dane aplikacji w celu umożliwienia poprawnej pracy.
  7. Zrestartuj aplikację Node.js, aby włączyć moduł gromadzący dane agenta.

Wyniki

Pomyślnie skonfigurowano agenta dla Node.js.

Co dalej