NetWorker: Rozwiązywanie problemów z wysokim użyciem pamięci lub procesora według procesów

Summary: Ten artykuł bazy wiedzy zawiera omówienie sposobów rozwiązywania problemów z wysokim użyciem pamięci i/lub procesora przez proces.

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

Podczas rozwiązywania problemu związanego z NetWorker można stwierdzić, że jeden lub więcej procesów zużywa duże ilości zasobów obliczeniowych. Polecenia systemu operacyjnego, takie jak top lub Windows Task Manager, mogą zapewniać wgląd w użycie systemu z określonego punktu w czasie; Możemy jednak również rejestrować wykorzystanie zasobów systemowych w danym oknie i porównywać je z innymi dziennikami systemowymi.

Dzienniki i procesy NetWorker są szczegółowo opisane w sekcji:

Ten artykuł bazy wiedzy zawiera metodę korzystania z funkcji systemu operacyjnego i rejestrowania. 
UWAGA: Pomoc techniczna NetWorker nie tworzy niestandardowych skryptów. Skrypty podane w tym artykule bazy wiedzy mogą być używane do funkcji minimalnych. Skryptów tych można używać jako szablonów do tworzenia własnych skryptów na podstawie konfiguracji specyficznych dla środowiska lub preferencji rozwiązywania problemów.

Podejście nieskryptowe: NetWorker: Jak rozwiązać problem z widocznym zawieszeniem w NetWorker za pomocą narzędzia nsrwatch.


Microsoft Windows:

W systemach Microsoft Windows dostępnych jest kilka narzędzi graficznych, takich jak Menedżer zadań i MonitorKliknięcie tego hiperłącza powoduje wyświetlenie strony spoza witryny Dell Technologies. wydajności, które umożliwiają monitorowanie wykorzystania zasobów przez określony proces. W tym artykule bazy wiedzy omówimy prosty skrypt wsadowy, który można uruchomić z sygnaturą czasową i pokazać użycie procesora i pamięci przez określony proces w interwale zdefiniowanym przez użytkownika.

Najpierw musimy określić, jaki proces musi być monitorowany. Może się to różnić w zależności od problemu. Procesy i porty NetWorker powinny pomóc zawęzić nazwy procesów i ich działania. 

Procesy na serwerze NetWorker można zidentyfikować za pomocą:

  • Menedżer zadań.
  • Lista zadań 
  • nsrrpcinfo -p localhost (wymaga serwera NetWorker lub rozszerzonego pakietu klienckiego NetWorker).

1. Utwórz skrypt .bat zawierający następujące elementy:

@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

Gdzie:
PID = Identyfikator procesu, który chcesz monitorować.
INTERVAL_IN_SECONDS = wartość liczbowa, która określa, ile sekund upłynęło między kolejnymi uruchomieniami raportu. 

2. Zapisz skrypt jako process-monitor.bat w wybranej lokalizacji.
3. Otwórz wiersz poleceń administratora i przejdź do katalogu, w którym zapisano skrypt. 
4. Uruchom skrypt. 

process-monitor.bat przykład uruchomienia

Spowoduje to utworzenie pliku process-monitor.out w katalogu, z którego został uruchomiony skrypt. Plik zawiera:

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

Gdzie:

LocalDateTime = Czy data i godzina są wyświetlane jako RRRRMMDDHHMMSS.
IDProcess = identyfikator PID wprowadzony do skryptu.
Nazwa = nazwa procesu, z którym powiązany jest PID.
PercentProcessorTime = Zwraca czas, w którym wszystkie wątki tego procesu używały procesora do wykonywania instrukcji w ciągu 100 nanosekund.
PrivateBytes = Bieżąca liczba bajtów przydzielonych przez ten proces w pamięci, która nie może być współużytkowana z innymi procesami.

5. Aby zatrzymać skrypt, użyj kombinacji CTRL+C , gdzie zostanie wyświetlony monit o zatrzymanie lub kontynuowanie skryptu.

Wartości te nie są częścią żadnego kodu NetWorker i zostały szczegółowo opisane w następującym artykule firmy Microsoft: https://learn.microsoft.com/en-us/previous-versions/aa394323(v=vs.85) Kliknięcie tego hiperłącza powoduje wyświetlenie strony spoza witryny Dell Technologies.
 

Linux:

Na serwerach Linux możesz używać narzędzi takich jak topKliknięcie tego hiperłącza powoduje wyświetlenie strony spoza witryny Dell Technologies. do monitorowania wykorzystania zasobów systemowych przez procesy.  W tej bazie wiedzy omówimy prosty skrypt powłoki, który można uruchomić do znacznika czasu i pokazać użycie procesora i pamięci przez określony proces w interwale zdefiniowanym przez użytkownika.

1. Zaloguj się do serwera NetWorker za pomocą SSH.
2. Przełącz się do katalogu głównego:

sudo su -

3. Uzyskaj identyfikator PID procesu NetWorker, który chcesz monitorować:

ps -ef | grep nsr

Procesy i porty NetWorker

4. Utwórz .sh zawierający następujące elementy:

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

Gdzie:
PID = Identyfikator procesu, który chcesz monitorować.
sleep 5 = Czeka 5 sekund i uruchamia się ponownie, możesz zmienić ten interwał według własnego uznania.

5. Utwórz plik wykonywalny skryptu:

chmod +x process_monitor.sh

6. Uruchom skrypt:

./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. Pozostaw skrypt uruchomiony przez czas, który chcesz monitorować, lub ręcznie odtwórz problem, w którym występuje podejrzane nadmierne wykorzystanie zasobów.
8. Aby zatrzymać skrypt, użyj kombinacji CTRL+C , gdzie zostanie wyświetlony monit o zatrzymanie lub kontynuowanie skryptu.

UWAGA: skrypt może być uruchamiany w tle za pomocą nohup. Oto przykład: nohup ./process_monitor.sh &. Skrypt działa w tle. Aby zatrzymać skrypt, musisz uzyskać PID skryptu 'ps -ef | grep process_monitor', a następnie zatrzymać go za pomocą 'kill -9 process_monitor_PID'9

. Skrypt tworzy plik wyjściowy w katalogu /tmp z nazwą hosta systemowego:
nve:~ # ls -l /tmp | grep monitor-pid
-rw------- 1 root      root      2030 Jun  3 12:29 nve_monitor-pid.out

Zawartość pliku zawiera sygnaturę czasową z wykorzystaniem procesora i pamięci procesu określonego w skrypcie.

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): Kopiowanie plików do/z serwera Linux NetWorker.

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.