Sie müssen einen Agentendatenkollektor zu Ihrer Node.js-Anwendung hinzufügen und die Anwendung erneut starten, bevor der Agent mit der Überwachung Ihrer Anwendung beginnen kann.
Vorbereitende Schritte
Bevor Sie die Agenteneinstellungen in derselben Version rekonfigurieren, führen Sie die folgenden Schritte aus, um die Datenkollektordateien zu bereinigen, die von der vorherigen Konfiguration erstellt wurden:
- Wechseln Sie in das Verzeichnis
installationsverzeichnis/lx8266/nj/bin.
- Führen Sie den Befehl
./uninstall.sh aus, um vorhandene Datenkollektordateien zu entfernen.
Informationen zu diesem Vorgang
Node.js Agent ist ein Einzelinstanzenagent. Er registriert Unterknoten für jede überwachte
Node.js-Anwendung. Der Unterknoten hat die folgende Struktur:
NJ:hostname_port:NJA
Tipp: Falls eine Node.js-Anwendung an mehreren Portnummern empfangsbereit ist, wird die niedrigste Portnummer verwendet.
Sie müssen einen Agentendatenkollektor zu Ihrer Node.js-Anwendung hinzufügen und die Anwendung erneut starten, bevor der Agent mit der Überwachung Ihrer Anwendung beginnen kann. Die Agentendatenkollektoren erfassen Daten, die an Node.js Agent weitergeleitet werden. Gegenwärtig werden die folgenden Agentendatenkollektoren bereitgestellt:
- Der Ressourcendatenkollektor erfasst Ressourcenüberwachungsdaten in Ihren Node.js-Anwendungen.
- Der Diagnosedatenkollektor erfasst Diagnosedaten und Ressourcenüberwachungsdaten in Ihren Node.js-Anwendungen.
- Der Methodentrace-Datenkollektor erfasst Methodentraces, Diagnosedaten und Ressourcenüberwachungsdaten aus Ihren Node.js-Anwendungen.
Vorgehensweise
-
Stellen Sie sicher, dass die Benutzer-ID, die zur Ausführung des Anwendungsservers verwendet
wird, über vollständige Berechtigungen für das Verzeichnis installationsverzeichnis des Agenten verfügt.
-
Wechseln Sie in das Verzeichnis installationsverzeichnis/bin
und führen Sie den folgenden Befehl aus:
-
Folgen Sie der Bedienerführung und geben Sie Werte für die folgenden Konfigurationsoptionen an:
- KNJ_NODEJS_RUNTIME_BIN_LOCATION
- Das Verzeichnis für den Ordner bin der Node.js-Laufzeit. Das Standardverzeichnis ist
/usr/local/bin.
- KNJ_NPM_RUNTIME_BIN_LOCATION
- Das Verzeichnis für den Ordner bin des Befehls npm. Das Standardverzeichnis ist
/usr/local/bin.
- KNJ_NPM_LIB_LOCATION
- Das Verzeichnis für den Ordner lib des globalen
Installationsverzeichnisses für das Paket 'npm'. Das Standardverzeichnis ist
/usr/local/lib. Wenn Sie das Paket 'npm' beispielsweise mit dem Befehl
npm install -g installieren, wird das Paket im Verzeichnis /nodejs_home/lib/node_modules installiert und KNJ_NPM_LIB_LOCATION ist /nodejs_home/lib.
- CP_PORT
- Der Port, an dem der Agent für Daten von Socket-Clients empfangsbereit
ist. Der Wert
0 gibt an, dass ein ephemerer Port verwendet wird. Der Standardwert ist 63336.
Anmerkung: Verwenden Sie keine Portnummer die in Ihrem System bereits verwendet wird. Sie können den
Befehl netstat -apn | grep portnummer ausführen, um zu prüfen,
ob der Port bereits im Gebrauch ist.
-
Führen Sie den folgenden Befehl aus, um den Agenten zu starten:
-
Überprüfen Sie, ob
Node.js Agent
erfolgreich gestartet wurde. Bei einem erfolgreichen Start des Agenten wird der Ordner KNJ_NPM_LIB_LOCATION/node_modules/ibmapm erstellt.
-
Fügen Sie auf Basis Ihres Produktangebots und Ihrer Anforderungen einen der folgenden Einträge in die .js-Datei der Node.js-Anwendung ein, um die Agentendatenkollektoren zu konfigurieren:
Anmerkung: Es kann nur ein Eintrag zur Node.js-Anwendung hinzugefügt werden, um die Funktionalität des Agentendatenkollektors zu aktivieren. Wenn Sie Funktionalitäten aktivieren, die in Ihrem Angebot nicht
enthalten sind, kann dies zu unnötigem Systemaufwand führen, was die Effizienz der
Anwendungsausführung verringert.
- Wenn Sie nur über die Funktionalität zur Ressourcenüberwachung verfügen, können Sie den
Ressourcendatenkollektor hinzufügen. Um diesen Kollektor hinzuzufügen, müssen Sie die folgende Zeile am Anfang der Node.js-Anwendungsdatei einfügen:
require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm');
Wenn der Wert für
KNJ_NPM_LIB_LOCATION in Ihrer Umgebung
/usr/local/lib lautet, sieht die Zeile wie folgt aus:
require('/usr/local/lib/node_modules/ibmapm');
- Wenn Sie zusätzlich zu den Überwachungsfunktionen auf Ressourcenebene auch über Diagnosefunktionen verfügen, können Sie einen der folgenden Agentendatenkollektoren hinzufügen:
- Fügen Sie die folgende Zeile am Anfang der Node.js-Anwendungsdatei ein, um den Datenkollektor für den Methodentrace hinzuzufügen:
require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm/methodtrace.js');
- Fügen Sie die folgende Zeile am Anfang der Node.js-Anwendungsdatei ein, um den Diagnosedatenkollektor hinzuzufügen:
require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm/deepdive.js');
- Fügen Sie die folgende Zeile am Anfang der Node.js-Anwendungsdatei ein, um den Datenkollektor für die Ressourcenüberwachung hinzuzufügen:
require('KNJ_NPM_LIB_LOCATION/node_modules/ibmapm');
Um die beste Leistung sicherzustellen,
sollten Sie den Datenkollektor für den Methodentrace nur zum Debugging hinzufügen.
Anmerkung: Der Code der Plug-ins wurde ab Cloud APM im März 2017 geändert. Wenn Sie ein Upgrade des Agenten von einer älteren
Version durchführen, müssen Sie den Code der vorhandenen Datenkollektoren in Ihren Anwendungen
aktualisieren, damit die Überwachungsfunktionen ordnungsgemäß ausgeführt werden.
-
Starten Sie die Node.js-Anwendung erneut, um den Agentendatenkollektor zu aktivieren.
Ergebnisse
Sie haben Node.js Agent erfolgreich konfiguriert.