NetWorker: Fehlerbehebung bei hoher Speicher- oder CPU-Auslastung nach Prozess

Summary: Dieser Wissensdatenbank-Artikel bietet eine Übersicht über das Troubleshooting bei hoher Arbeitsspeicher- und/oder CPU-Auslastung durch einen Prozess.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

Beim Troubleshooting eines NetWorker-bezogenen Problems kann festgestellt werden, dass einer oder mehrere Prozesse große Mengen an Compute-Ressourcen verbrauchen. Betriebssystembefehle wie "top Manager" oder "Windows Task-Manager" können einen Point-in-Time-Einblick in die Systemnutzung geben. Wir können aber auch die Nutzung von Systemressourcen in einem bestimmten Zeitfenster erfassen und mit anderen Systemprotokollen vergleichen.

NetWorker-Protokolle und -Prozesse werden detailliert beschrieben unter:

Dieser Wissensdatenbank-Artikel beschreibt eine Methode zur Verwendung von Betriebssystemfunktionen und Protokollierung. 
HINWEIS: Der NetWorker-Support erstellt kein nutzerdefiniertes Scripting. Die in diesem Wissensdatenbank-Artikel bereitgestellten Skripte können verwendet werden und sind minimale Funktionen. Sie können diese Skripte als Vorlagen verwenden, um Ihre eigenen Skripte basierend auf umgebungsspezifischen Konfigurationen oder Troubleshooting-Einstellungen zu erstellen.

Nicht-skriptbasierter Ansatz: NetWorker: Anleitung zum Troubleshooting eines offensichtlichen Absturzes in NetWorker mithilfe des Dienstprogramms nsrwatch.


Microsoft Windows:

Auf Microsoft Windows-Systemen gibt es verschiedene grafische Tools wie den Task-Manager und den PerformancemonitorDieser Hyperlink führt Sie zu einer Website außerhalb von Dell Technologies., mit denen die Ressourcennutzung durch einen bestimmten Prozess überwacht werden kann. In diesem Wissensdatenbank-Artikel werden wir ein einfaches Batchskript vorstellen, das mit einem Zeitstempel ausgeführt werden kann und die CPU- und Speicherauslastung eines bestimmten Prozesses mit einem benutzerdefinierten Intervall anzeigt.

Zuerst müssen wir festlegen, welcher Prozess überwacht werden muss. Dies kann je nach Problem variieren. Die NetWorker-Prozesse und -Ports sollen dabei helfen, den Namen der Prozesse und ihre Aufgaben einzugrenzen. 

Sie können die Prozesse auf dem NetWorker-Server wie folgt identifizieren:

  • Task-Manager.
  • Aufgabenliste 
  • nsrrpcinfo -p localhost (erfordert ein erweitertes NetWorker-Server- oder NetWorker-Clientpaket).

1. Erstellen Sie ein .bat Skript, das Folgendes enthält:

@echo OFF
: x
wmic os get LocalDateTime /value >> performance_monitor.out
wmic path win32_perfformatteddata_perfproc_process where IDProcess="PID" get Name, PercentProcessorTime, PrivateBytes, IDProcess /format:list >> performance_monitor.out
timeout INTERVAL_IN_SECONDS
goto x

Dabei gilt:
PID = Prozess-ID des zu überwachenden Prozesses.
INTERVAL_IN_SECONDS = der numerische Wert, der angibt, wie viele Sekunden zwischen den einzelnen Ausführungen des Berichts liegen. 

2. Speichern Sie das Skript als process-monitor.bat an einem Speicherort Ihrer Wahl.
3. Öffnen Sie eine Administrator-Eingabeaufforderung und wechseln Sie mit cd zu dem Verzeichnis, in dem das Skript gespeichert wurde. 
4. Führen Sie das Skript aus. 

Beispiel für process-monitor.bat Ausführung

Dadurch wird die Datei process-monitor.out in dem Verzeichnis erstellt, in dem das Skript ausgeführt wurde. Die Datei enthält:

LocalDateTime=20240307112701.555000-300

IDProcess=6436
Name=nsrd
PercentProcessorTime=0
PrivateBytes=23605248


LocalDateTime=20240307112723.266000-300

IDProcess=6436
Name=nsrd
PercentProcessorTime=0
PrivateBytes=23605248


LocalDateTime=20240307112729.634000-300

IDProcess=6436
Name=nsrd
PercentProcessorTime=0
PrivateBytes=23605248


LocalDateTime=20240307112735.457000-300

IDProcess=6436
Name=nsrd
PercentProcessorTime=0
PrivateBytes=23670784

Wo:

LocalDateTime = Datum und Uhrzeit werden als JJJJMMTTDHHMMSS angezeigt.
IDProcess = die PID, die in das Skript eingegeben wurde.
Name = Name des Prozesses, mit dem die PID verknüpft ist.
PercentProcessorTime = Gibt die verstrichene Zeit zurück, die alle Threads dieses Prozesses den Prozessor verwendet haben, um Anweisungen in 100 Nanosekunden auszuführen.
PrivateBytes = Aktuelle Anzahl von Byte, die dieser Prozess im Arbeitsspeicher zugewiesen hat und die nicht mit anderen Prozessen geteilt werden können.

5. Um das Skript zu beenden, verwenden Sie STRG+C , wo Sie aufgefordert werden, das Skript zu beenden oder fortzusetzen.

Diese Werte sind nicht Teil eines NetWorker-Codes und werden im folgenden Microsoft-Artikel ausführlich beschrieben: https://learn.microsoft.com/en-us/previous-versions/aa394323(v=vs.85) Dieser Hyperlink führt Sie zu einer Website außerhalb von Dell Technologies.
 

Linux:

Auf Linux-Servern können Sie Tools wie topDieser Hyperlink führt Sie zu einer Website außerhalb von Dell Technologies. verwenden, um die Nutzung von Systemressourcen von Prozessen zu überwachen.  In diesem Wissensdatenbank-Artikel werden wir ein einfaches Shell-Skript vorstellen, das ausgeführt werden kann, um timestamp zu erstellen und die CPU- und Speicherauslastung eines bestimmten Prozesses mit einem benutzerdefinierten Intervall anzuzeigen.

1. Melden Sie sich über SSH beim NetWorker-Server an.
2. Wechseln Sie zum Root-Nutzer:

sudo su -

3. Rufen Sie die PID des NetWorker-Prozesses ab, den Sie überwachen möchten:

ps -ef | grep nsr

NetWorker-Prozesse und -Ports

4. Erstellen Sie eine .sh mit folgenden Elementen:

vi process_monitor.sh
#!/bin/bash
#Get Date
cat /proc/meminfo > /tmp/`hostname`_monitor-pid.out
cat /proc/cpuinfo >> /tmp/`hostname`_monitor-pid.out
#Monitor PID
while true; do
        echo "Press [CTRL+C] to stop the loop."
        DATE=$(date +%Y/%m/%d-%H:%M:%S)
        echo -e "\\n$DATE" >> /tmp/`hostname`_monitor-pid.out ; ps -p PID -o %cpu,%mem,cmd >> /tmp/`hostname`_monitor-pid.out
        # Wait 5 seconds (change as per your discretion)
        sleep 5
done

Dabei gilt:
PID = Prozess-ID des zu überwachenden Prozesses.
sleep 5 = Wartet 5 Sekunden und wird erneut ausgeführt, Sie können dieses Intervall nach eigenem Ermessen ändern.

5. Machen Sie das Skript ausführbar:

chmod +x process_monitor.sh

6. Führen Sie das Skript aus:

./process_monitor.sh
nve:~ # ./process_monitor.sh
Press [CTRL+C] to stop the loop.
Press [CTRL+C] to stop the loop.
Press [CTRL+C] to stop the loop.
Press [CTRL+C] to stop the loop.
Press [CTRL+C] to stop the loop.
Press [CTRL+C] to stop the loop.
Press [CTRL+C] to stop the loop.
^C
nve:~ #

7. Lassen Sie das Skript für den Zeitraum ausführen, für den Sie es überwachen möchten, oder reproduzieren Sie das Problem manuell, wenn eine vermutete Überauslastung der Ressource auftritt.
8. Um das Skript zu beenden, verwenden Sie STRG+C , wo Sie aufgefordert werden, das Skript zu beenden oder fortzusetzen.

HINWEIS: Das Skript kann mit nohup im Hintergrund ausgeführt werden. Zum Beispiel: nohup ./process_monitor.sh &. Das Skript wird im Hintergrund ausgeführt. Um das Skript zu beenden, müssen Sie die PID des Skripts 'ps -ef | grep process_monitor' abrufen und es dann mit 'kill -9 process_monitor_PID'9

beenden. Das Skript erstellt eine Ausgabedatei unter /tmp mit dem Hostnamen des Systems:
nve:~ # ls -l /tmp | grep monitor-pid
-rw------- 1 root      root      2030 Jun  3 12:29 nve_monitor-pid.out

Der Inhalt der Datei enthält einen Zeitstempel mit der CPU- und Arbeitsspeicherauslastung des im Skript angegebenen Prozesses.

nve:~ # tail -12 /tmp/nve_monitor-pid.out

2024/06/03-12:28:54
%CPU %MEM CMD
 0.0  0.3 /usr/sbin/nsrd

2024/06/03-12:29:02
%CPU %MEM CMD
 0.0  0.3 /usr/sbin/nsrd

2024/06/03-12:29:07
%CPU %MEM CMD
 0.0  0.3 /usr/sbin/nsrd

NetWorker (Linux): Kopieren von Dateien zu/von einem Linux NetWorker-Server.

Additional Information

Affected Products

NetWorker

Products

NetWorker Family, NetWorker Series
Article Properties
Article Number: 000222888
Article Type: How To
Last Modified: 15 Aug 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.