PowerFlex: GET_INFO – verktyg för insamling av supportpaket

Résumé: get_info.sh – samla in diagnostikinformation från en PowerFlex-värd och packa den i ett supportpaket.

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Instructions

get_info.sh [ALTERNATIV]


BESKRIVNING

get_info.sh är ett diagnostikverktyg som samlar in felsökningsinformation från en PowerFlex-värd (tidigare ScaleIO) och arkiverar den i ett komprimerat paket för analys av supportpersonal.

Verktyget samlar in data från flera källor, inklusive:

  • Loggar, konfiguration och spårningsfiler för PowerFlex-komponenter
  • MDM/SCLI-frågeutdata och intern felsökningsdump
  • Intern diagnostik för PowerFlex-komponenter
  • Operativsystemets konfiguration, loggar och körningsstatus
  • Maskinvaruinventering (lagringsstyrenheter, nätverksenheter, NVMe, NVDIMM osv.)
  • Kärndumpar (befintliga och eventuellt genererade på begäran)
  • Insamlare av diagnostikdata (diag_coll) statistik

Det resulterande paketet är ett enda komprimerat arkiv (tar/gz som standard) som kan överföras till PowerFlex-support för vidare analys.

Endast en förekomst av get_info.sh kan köras på en värd vid en viss tidpunkt. Om det inte finns tillräckligt med ledigt utrymme för dess utdata vägrar den att köras (såvida inte utrymmeskontroll uttryckligen hoppas över).

ALTERNATIV

Allmänna alternativ

  • -a--all

    Samla in alla data. Detta är likvärdigt med att ange --mdm-repository--collect-cores--max-cores=2--valgrind-coresoch --analyse-diag-coll.

  • -A--analyse-diag-coll

    Analysera diagnostikdatainsamlare (diag coll) uppgifter

  • -b[COMPONENTS], --collect-cores[=COMPONENTS]

    Samla in befintliga kärndumpar för den blankstegsavgränsade listan över användarland COMPONENTS. Standard (när COMPONENTS utelämnas): Alla komponenter på användarland
     

Obs! Det får inte finnas något mellanrum mellan -b och KOMPONENTER. För den långa formen, separera med =

 

Exempel

-b'mdm sds'
--collect-cores='mdm sds'
  • -d OUT_DIR--output-dir=OUT_DIR

    Lagra det resulterande paketet under katalog OUT_DIR. Default: <WORK_DIR>/scaleio-getinfo (mer information finns i --work-dir).

  • -f--skip-mdm-login

    Hoppa över frågan om inloggningsuppgifter för PowerFlex MDM. Användbart när användaren redan har loggat in manuellt.

  • -h--help

    Visa hjälpmeddelandet och avsluta. I kombination med --tech, visa även teknikeralternativ.

  • -J--xz

    Använd tar/xz format för det insamlade paketet i stället för standardformatet tar/gz. Ignoreras om systemets tar(1) Stöder inte --use-compress-program eller xz(1) hittades inte.

  • -k NUM--max-cores=NUM

    Samla in upp till NUM Kärnfiler från varje komponent. Default: Alla kärnfiler, innebär --collect-cores

  • -l--light

    Skapa ett lätt knippe. Endast den senaste generationen numrerade loggfiler samlas in, och körbara komponentfiler eller bibliotek ingår inte vid insamling av kärnor. Användning av det här alternativet minskar supportmöjligheten och vi rekommenderar inte att det används.

  • -m NUM--max-traces=NUM

    Samla in upp till NUM PowerFlex-spårningsfiler från varje komponent. Default: Alla filer

  • -N--skip-space-check

    Hoppa över verifiering av ledigt diskutrymme före datainsamling.

  • -P PATH--collect-path=PATH

    Samla in ytterligare sökväg PATH. Endast absoluta sökvägar accepteras. Jokertecken accepteras. Jokertecken ska anges. Det här alternativet kan anges flera gånger för att samla in flera sökvägar.

  • -q--quiet--silent

    Ignorera meddelanden vid standardutmatning.

  • -r--mdm-repository

    Samla in MDM-lagringsfiler.

  • -s--skip-sdbg

    Hoppa över insamling av SDBG-utdata (diagnostisk felsökare).

  • -S--pause-core-generation

    Pausa kärngenereringen av PowerFlex-komponenter under datainsamling. Den ursprungliga konfigurationen återställs när insamlingen har slutförts.

  • -w WORK_DIR--work-dir=WORK_DIR

    Använd katalog WORK_DIR för temporära filer. Default: /tmp.

  • -x FILE--output-file=FILE

    Lagra det insamlade paketet som en fil med namnet FILE. Lämpligt filnamnssuffix (.tgz.zipoch så vidare) läggs till automatiskt. Om FILE Är (bindestreck), skriv paketet till standardutmatning (implicerar --quiet). När ett paket skrivs till standardutdata skapas ingen paketfil på disken. Default: getInfoDump.

  • -z--zip

    Använd zip format för det insamlade paketet i stället för standardformatet tar/gz. Ignoreras om zip(1) finns inte i systemet.

  • --mdm-port=PORT

    Ansluta till MDM med port PORT för SCLI-kommandon. Default: scli default behavior.

  • --overwrite-output-file

    Skriv över utdatafilen om den redan finns. När en utdatafil eller katalog uttryckligen anges (med hjälp av -x eller -d) är standardbeteendet att vägra att skriva över. Det här alternativet åsidosätter det.

  • --tech

    Inkludera teknikeralternativ i hjälpmeddelandets utdata.

MDM-inloggningsalternativ

Följande alternativ skickas till SCLI: --login Kommandot. Deras beteende och standardvärden styrs av SCLI.

  • -n--use-nonsecure-communication

    Anslut till MDM i osäkert läge.

  • -p PASSWORD--password=PASSWORD

    Använd PASSWORD för PowerFlex MDM-inloggning. Default: SCLI-standardbeteende

  • -u USERNAME--username=USERNAME

    Använd USERNAME för PowerFlex MDM-inloggning. Default: SCLI-standardbeteende

  • --ldap-authentication

    Logga in på PowerFlex MDM med LDAP-baserad autentisering.

  • --management-system-ip=ADDRESS

    Anslut till SSO/M&O På ADDRESS för PowerFlex-inloggning. Default: SCLI-standardbeteende

  • --p12-password=PASSWORD

    Kryptera PowerFlex-inloggningen PKCS#12 fil med hjälp av PASSWORD. Default: SCLI-standardbeteende

  • --p12-path=FILE

    Lagra PowerFlex-inloggningen PKCS#12 fil som FILE. Default: SCLI-standardbeteende

Teknikeralternativ

Följande alternativ är avsedda att användas av supporttekniker och visas endast i hjälpmeddelandet när --tech anges.

  • -c[COMPONENTS], --generate-cores[=COMPONENTS]

Generera kärnfiler (med gcore(1)) för de pågående processerna för den utrymmesseparerade förteckningen över COMPONENTS. Standard: alla komponenter i användarland, implicerar --collect-executables, och kräver gdb och gcore.

 
Obs! Det får inte finnas något mellanrum mellan -c och COMPONENTS. För den långa formen, separera med =
 

Exempel:

-c'mdm sds'
--generate-cores='mdm sds'
  • -C CORE_FILE--reference-core-file=CORE_FILE

    Samla in produktloggar och kärnor i förhållande till den senaste ändringstiden (mtime) av den CORE_FILEi stället för starttiden för körningen. Innebär --collect-cores

  • -E REF_TIME--event-time=REF_TIME

    Samla in produktloggar och kärnor i förhållande till REF_TIMEi stället för starttiden för körningen. Accepterar alla format som tolkas av date(1). Innebär --collect-cores.

  • -g[COMPONENTS], --valgrind-cores[=COMPONENTS]

Samla valgrind Kärndumpar för det angivna användarlandet COMPONENTS. Standard: alla komponenter i användarland. Innebär --collect-executables.

 
Obs! Det får inte finnas något mellanrum mellan -b och COMPONENTS. För den långa formen, separera med =
 

Exempel:

-g'mdm sds'
--valgrind-cores='mdm sds'
  • -t MIN--minutes-before-event=MIN

    Samla in produktloggar och kärnor som genererats upp till MIN minuter före referenstidpunkten. Default: 15

  • -T MIN--minutes-after-event=MIN

    Samla in produktloggar och kärnor som genererats upp till MIN minuter efter referenstidpunkten. Default: 5

  • -X[COMPONENTS], --collect-executables[=COMPONENTS]

    Samla in körbara komponentfiler och deras delade bibliotek för det angivna användarlandet COMPONENTS. Default: Alla komponenter på användarland

 
Obs! Det får inte finnas något mellanrum mellan -b och COMPONENTS. För den långa formen, separera med =
 

Exempel:

-X'mdm sds'
--collect-executables='mdm sds'
  • --keep-work-dir

    Behåll den genererade tillfälliga arbetskatalogen när paketet har skapats (rensas automatiskt).

PAKETSTRUKTUR

Utdatapaketet är ett enda komprimerat arkiv.

  • Katalogen på den översta paketnivån är värdnamnet för det insamlade systemet.
  • Allmänna kommandoutdata för värd hamnar i en server/ underkatalog.
    Filnamnet är <command> + <arguments> + suffix (.txt som standard). Blanksteg ersatta med _, icke-alfanumeriska tecken borttagna
    Exempel: server/ip_-s_addr.txt – output of ip -s addr
  • Utdata för produktkommandon hamnar i komponentens underkatalog. mdm/ För sclisdc/ För drv_cfgoch så vidare.
    Kommandonamn (sclidrv_cfg, och så vidare) är avskalad. Det första meningsfulla argumentet blir filnamnet. Filer tilldelas som relevant suffix, .txt som standard.

Exempel: 

    • mdm/query_cluster.txt - Utmatning av scli --query_cluster
    • mdm/tgt_dump.txt - Utmatning av scli --debug_action --tgt_dump
    • sdc/query_mdms.txt - Utmatning av drv_cfg --query_mdms
    • sds/sdbg.txt - utdata från SDBG dumpallscreens för SDS
  • Produktkomponentfiler (i motsats till kommandoutdata), <component>/cfg<component>/logsoch så vidare
    Kopieras från komponentens katalog med prefixet borttaget.

Exempel: 

    • mdm/cfg/conf.txt - kopia av /opt/emc/scaleio/mdm/cfg/conf.txt
    • sds/logs/trc.0 - kopia av /opt/emc/scaleio/sds/logs/trc.0
  • Värdfilsystemfiler placeras på sin filsystemsökväg i förhållande till paketroten.

Exempel:

    • etc/os-release - kopia av /etc/os-release
    • var/log/messages - kopia av /var/log/messages
    • proc/cpuinfo - kopia av /proc/cpuinfo
  • Diagnostikinsamlarfiler (diag_coll) kopieras med /opt prefixet avskalas, vilket bevarar den inre strukturen.
    Exempel: diag_coll/logs/sar.0 - kopia av /opt/diag_coll/logs/sar.0
  • Dolda filer (med punktprefix) döljs genom att den inledande punkten tas bort.
  • Körningslogg för verktyg, get_info_run.log, placerad direkt under värdnamnet>/roten <

Trädstruktur för buntkatalog:

<hostname>/
|-- get_info_run.log                   Utility execution log
|-- server/                            General command output directory
|   |-- ip_-s_addr.txt
|   |-- uptime.txt
|   |-- uname_-a.txt
|   |-- ps_-elF.txt
|   |-- dmesg.txt
|   +-- ...                            (one file per collected command)
|
|-- mdm/                               PowerFlex component data (if installed)
|   |-- cfg/                           Configuration files (excl. PEM)
|   |-- logs/                          Trace and log files
|   |-- rep/                           Repository (if --mdm-repository)
|   |-- query_all.txt                  SCLI query outputs
|   |-- sdbg.txt                       SDBG screen dumps
|   +-- ...
|-- sds/
|-- pds/  
|-- dgwt/
|-- sdr/
|-- sdt/
|-- lia/
|-- sdc/
|-- gateway/
|
|-- diag_coll/                         Diagnostic data collector (if installed)
|   |-- logs/
|   |-- cfg/
|   +-- ...
|
|-- etc/                               Host files
|   |-- os-release
|   |-- sysconfig/
|   |-- network/
|   +-- ...
|-- var/
|   |-- log/
|   |   |-- messages
|   |   +-- ...
|   +-- ...
|-- proc/
|   |-- cpuinfo
|   |-- meminfo
|   +-- ...
|-- sys/
|-- ...
|
|-- scaleio-getinfo-extra/        Extra diagnostic data (if present)
+-- scaleio-getinfo-backup/       Backed-up configuration files (if any)

FILTRERING AV PRODUKTLOGG OCH KÄRNFIL

Alternativen som beskrivs i det här avsnittet styr hur produktloggfiler (kallas även spårningsfiler, t.ex. trc.0trc.1exp.0) och kärndumpfiler väljs för inkludering i det insamlade paketet. De gör det genom att definiera en referenstid, ett tidsfönster runt den och räkna gränser.

När inga filtreringsalternativ anges samlas alla produktloggfiler och (om kärninsamling är aktiverat) alla kärndumpfiler in. Filtreringsalternativen begränsar successivt det här urvalet enligt beskrivningen nedan.

Referenstid

En referenstid kan ställas in med hjälp av antingen -E/--event-time eller -C/--reference-core-file.

Om ingetdera --event-time Eller --reference-core-file anges, utförs ingen tidsfönsterfiltrering: referenstiden är som standard den aktuella tiden och används endast för närhetsbaserad ordning när en antalsgräns (-m eller -k) är i kraft (se Antalsgränser nedan).

Om båda -E och -C visas träder det sista objektet på kommandoraden i kraft.

Tidsfönster

När en referenstid ställs in (med hjälp av --event-time eller --reference-core-file) upprättas ett tidsfönster runt den. Tidsfönstrets omfattning kan ställas in med hjälp av -t/--minutes-before-event och/eller -T/--minutes-after-event, som standard är 15 respektive 5 minuter. Endast filer vars innehåll överlappar det här fönstret kan hämtas.

Till exempel -E "2020-03-20 14:30" -t 10 -T 3 Samlar in filer som täcker perioden 14:20:00 till 14:33:00.

--minutes-before-event och --minutes-after-event ignoreras när varken --event-time Eller --reference-core-file anges.

Antalsgränser

En filantalsgräns kan ställas in med hjälp av -m/--max-traces och -k/--max-cores, för loggfiler respektive kärnfiler. Gränsen mäts per komponent.

När fler filer än NUM faller inom tidsperioden (eller är tillgängliga, om inget fönster är aktivt) samlas de NUM-filer som är närmast referenstiden in.

När en antalsgräns används utan --event-time eller --reference-core-file, alla filer är kandidater (inget tidsfönster) och NUM:s senaste filer är markerade.

Filtreringslogik

Filfiltrering tillämpas först på tidsperioden och sedan på antalsgränsen:

  1. Etablera kandidater. Alla produktloggfiler och/eller kärndumpfiler för en komponent räknas upp.
  2. Härled innehåll, punkt slut. Innehållet i produktloggfiler representerar en period. Innehållsperioden anses börja vid den föregående ändringens senaste ändringstidpunkt (mtime), eller UNIX-epoken, när det inte finns någon föregångare. den slutar vid filens egen mtime. Kärndumpfiler representerar en tidpunkt vid filens mtime.
  3. Tillämpa tidsfönster (om -E eller -C specificeras). Filer vars innehåll ligger helt utanför fönstret tas bort från markeringen. För produktloggfiler, om ingen fil faller inom fönstret, behålls den enda filen närmast fönstret så att paketet aldrig är tomt för en komponent. För kärndumpfiler gäller ingen sådan återställning.
  4. Tillämpa antalsgräns (om -m och/eller -k specificeras). Bland de återstående filerna, som mest NUM väljs och de som ligger närmast referenstiden föredras. Filer före och efter referenstiden konkurrerar lika om urvalet.

AUTENTISERING

Verktyget försöker logga in på den lokala MDM-enheten om en primär MDM-process detekteras genom att lyssna på den förväntade porten (standard: 6611)

MDM-inloggningsalternativ skickas till SCLI --login kommando och bearbetas av den.

Om inloggningen misslyckas avslutas verktyget med ett fel.

När inloggningen hoppas över görs fortfarande försök med SCLI-kommandon (för att stödja scenarier där användaren har loggat in manuellt i förväg). Efter tre SCLI-fel visas en varning och alla ytterligare SCLI-kommandon hoppas över.

Inloggningen hoppas över när:

  • Det finns ingen primär MDM-process på den lokala värden.
  • Informationen --skip-mdm-login alternativet har angetts.

Inloggningen misslyckas när:

  • MDM-processägaren finns inte i listan över behöriga användare (standard: root) och säker inloggning är aktiverad.
  • The SCLI --login returnerar ett fel (till exempel felaktiga autentiseringsuppgifter).

DISKUTRYMME

Diskutrymmeskraven för temporära filer och det resulterande paketet kan variera avsevärt.

Verktyget försöker minimera tillfällig utrymmesanvändning; Den är begränsad till kommandoutdata och kopior av insamlade virtuella filsystem (/proc och /sys) filer.

Paketet kan streamas från en fjärrvärd med --output-file=- för att minimera diskutrymmet på PowerFlex-värden. Paketfilen skrivs direkt till standardutmatning (stdout) vid strömning. Den skapas inte på disken.

Verktyget uppskattar det diskutrymme som krävs för både den tillfälliga arbetskatalogen och utdatapaketet innan data samlas in.

Om det uppskattade utrymmet som krävs överskrider det tillgängliga utrymmet i relevanta filsystem avslutas verktyget med ett fel. Den här kontrollen kan kringgås med --skip-space-check.

Arbetskatalogen och utdatakatalogen kan finnas på olika filsystem. Var och en kontrolleras oberoende av varandra.

De uppskattade utrymmeskraven skrivs till verktygets loggfil, get_info_run.log.

AVSLUTNINGSSTATUS

0 Framgångsrikt slutförande
1 Fel (ogiltiga argument, otillräckligt utrymme, inloggningsfel, en annan instans som redan körs, fel på paketgenerering, signal fångad och så vidare)

FILER

<WORK_DIR>/get_info_run.log Körningslogg (ingår också i paketet)
<WORK_DIR>/scaleio-getinfo-tmp/ Tillfällig arbetskatalog (rensad när det lyckades)
/tmp/scaleio-getinfo/getInfoDump.tgz Standardplats för utdatapaket
<WORK_DIR>/scaleio-getinfo-extra/
/tmp/scaleio-getinfo-extra/
Extra kataloger med diagnostikdata som tillval
/tmp/scaleio-getinfo-backup/ Temporära säkerhetskopior av ändrade konfigurationsfiler (skapas automatiskt)
/opt/emc/scaleio/ PowerFlex installationskatalog

MILJÖ

Förutsättningar

  • Verktyget måste köras som root (eller en användare med tillräcklig behörighet för att läsa komponentfiler, köra diagnostikkommandon och komma åt /proc/sysoch så vidare).
  • Standardverktyg: targzipstatfindawksedgetopt(1) (förbättrad), nice.
  • Valfri: zip (för --zip), xz (för --xz), gdb/gcore (för --generate-cores)

Samtidighet

Endast en förekomst av get_info.sh kan köras åt gången. Verktyget söker efter en befintlig instans som körs med hjälp av pidof(1) och avslutas om en instans hittas.

Signalhantering

Verktygsfällorna INTEXIToch TERM signaler under datainsamlingen. När den tar emot en signal

  1. Återställer alla säkerhetskopierade konfigurationsfiler (t.ex. inställningar för kärngenerering).
  2. Rensar tillfälliga kataloger
  3. Avslutar med status 1

Körningsloggen bevaras och sökvägen skrivs ut till standardfelet.

Exempel

Skaffa ett standardsupportpaket:

get_info.sh

Strömma ett paket via en SSH-anslutning utan att skapa en paketfil på PowerFlex-fjärrvärden:

ssh <host> 'get_info.sh --output-file=-' > getInfoDump-<host>.tgz

Använd en annan arbetskatalog för att undvika att fylla upp /tmp:

get_info.sh --work-dir=/var/tmp

Inkludera anpassade sökvägar i paketet:

get_info.sh --collect-path=/opt/custom/app/logs --collect-path='/var/log/app*'

Samla endast in den senaste kärndumpen för SDS- och MDM-komponenterna:

get_info.sh --collect-cores='mdm sds' --max-cores=1

Samla in data centrerade kring en kärnfils ändringstid, med ett anpassat tidsfönster:

get_info.sh --reference-core-file=/opt/emc/scaleio/sds/bin/core.1000 \
            --minutes-before-event=10 \  
            --minutes-after-event=2  
 

Produits concernés

PowerFlex rack, ScaleIO
Propriétés de l’article
Numéro d’article: 000455324
Type d’article: How To
Dernière modification: 21 mai 2026
Version:  3
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.