pmie(1): Skillnad mellan sidversioner
Admin (diskussion | bidrag) Ingen redigeringssammanfattning |
Admin (diskussion | bidrag) |
||
| (2 mellanliggande sidversioner av samma användare visas inte) | |||
| Rad 1: | Rad 1: | ||
'''pmie''' – inferensmotor för prestandametrik | '''pmie''' – inferensmotor för prestandametrik | ||
| Rad 282: | Rad 280: | ||
| Relationella jämförelser | | Relationella jämförelser | ||
|- | |- | ||
| <code>! && | | | <code>! && ||Booleska operatorer | ||
| Booleska operatorer | |||
|- | |- | ||
| <code>-></code> | | <code>-></code> | ||
| Rad 643: | Rad 640: | ||
== Se även == | == Se även == | ||
[[PCPIntro(1)]], [[pmcd(1)]], [[pmconfirm(1)]], [[pmie_check(1)]], [[pmieconf(1)]], [[pmie_daily(1)]], [[pminfo(1)]], [[pmlogdump(1)]], [[pmlogger(1)]], [[pmval(1)]], [[systemd(1)]], [[ctime(3)]], [[PMAPI(3)]], [[pcp.conf(5)]], [[pcp.env(5)]] och [[PMNS(5)]]. | |||
== Användarguide == | == Användarguide == | ||
Nuvarande version från 1 maj 2026 kl. 05.36
pmie – inferensmotor för prestandametrik
Namn
pmie – inferensmotor för prestandametrik
Synopsis
pmie [-bCdeFfPqvVWxXz?] [-a arkiv] [-A justering] [-c konfig]
[-D debug] [-h värd] [-l loggfil] [-m notering] [-j stompfil]
[-n pmnsfil] [-o format] [-O offset] [-S starttid]
[-t intervall] [-T sluttid] [-U användarnamn] [-Z tidszon]
[filnamn ...]
Beskrivning
pmie accepterar en samling aritmetiska, logiska och regeluttryck som ska utvärderas med angivna frekvenser. Basdata för uttrycken består av prestandametrikvärden som levereras i realtid från valfri värd som kör Performance Metrics Collection Daemon (PMCD), eller från historiska data i Performance Co-Pilot (PCP)-arkiv.
Förutom att beräkna aritmetiska och logiska värden kan pmie utföra åtgärder (popup-larm, skriva systemloggmeddelanden och starta program) som svar på angivna villkor. Sådana åtgärder är mycket användbara för att upptäcka, övervaka och korrigera prestandarelaterade problem.
Uttrycken som ska utvärderas läses från konfigurationsfiler som anges av ett eller flera argument filnamn. Om inga filnamn anges läses uttryck från standard in.
Utdata från pmie skickas till standard ut och standard fel enligt följande:
- stdout
- Uttrycksvärden som skrivs ut i det detaljerade läget
-vsamt utdata från åtgärder av typenprint.
- stderr
- Fel- och varningsmeddelanden för syntaktiska eller semantiska problem vid tolkning av uttryck, samt semantiska problem eller problem med tillgänglighet av prestandametrik under utvärdering.
Alternativ
Följande kommandoradsalternativ finns:
-a arkiv,--archive=arkiv- arkiv är en kommaseparerad lista av namn, där varje namn kan vara basnamnet för ett arkiv eller namnet på en katalog som innehåller ett eller flera arkiv skrivna av pmlogger(1). Flera
-a-flaggor får anges. I så fall krävs att endast en arkivuppsättning finns per värd. Explicita värdnamn i ett pmie-uttryck måste också matcha värdnamnet som finns lagrat i något av arkivens etiketter. Om flera arkivuppsättningar används säkerställs tidsmässig konsistens med hjälp av tidsstämplarna i arkiven.
-A justering,--align=justering- Tvingar det initiala tidsfönstret att justeras mot gränsen för en naturlig tidsenhet justering. Se PCPIntro(1) för fullständig syntax.
-b,--buffer- Utdata blir radbuffrad och standard ut kopplas till standard fel. Detta är mest användbart vid bakgrundskörning tillsammans med
-l. Alternativet-banvänds alltid för pmie-instanser som startas av pmie_check(1).
-c konfig,--config=konfig- Ett alternativ till att ange filnamn sist på kommandoraden.
-C,--check- Tolkar konfigurationsfilen eller -filerna och avslutar innan någon utvärdering utförs. Eventuella fel rapporteras.
-d,--interact- Normalt körs pmie som en icke-interaktiv process för att övervaka och hantera prestanda på en eller flera värdar. Med
-dblir körningen interaktiv och användaren får en meny med val. Interaktivt läge är främst användbart för felsökning av nya uttryck.
-e,--timestamp- När detta används tillsammans med
-V,-veller-Wrapporteras tidsstämplar för varje uttryck. Tidsstämplarna är i ctime(3)-format, inom parentes, och visas efter uttrycksnamnet och före uttrycksvärdet.
-f,--foreground- Om
-langes och ingen-a-flagga används (alltså realtidsövervakning), körs pmie som en bakgrundsdaemon. I övriga fall är förgrunden standard.-foch-Ftvingar pmie att köras i förgrunden oberoende av andra alternativ.
-F,--systemd- Som
-f, men gör även visst underhållsarbete, till exempel skapar pid-fil, byter användar-id och meddelar systemd(1) när pmie har startat eller avslutas. Avsett för användning när pmie startas av systemd(1).-foch-Fär ömsesidigt uteslutande.
-h värd,--host=värd- Som standard hämtas prestandadata från den lokala värden i realtidsläge eller från den första namngivna arkivuppsättningen i arkivläge. Argumentet värd åsidosätter detta standardval. Det åsidosätter dock inte värdar som explicit namngivits i uttryck. Se även %h och %c under regelåtgärder längre ned.
-j fil- Alternativ STOMP-protokollkonfiguration läses från stompfil. Om detta alternativ inte används, och åtgärden stomp används i någon regel, används standardplatsen
$PCP_SYSCONF_DIR/pmie/config/stomp.
-l loggfil,--logfile=loggfil- Standard fel skickas till loggfil.
-m notering,--note=notering- Används för att ange varifrån pmie startades, till exempel använder pmie_check(1)
-m pmie_check. Detta används av pmie för att avgöra om den behöver startas om när PMCD-värdnamnet ändras.
-n pmnsfil,--namespace=pmnsfil- Ett alternativt Performance Metrics Name Space (PMNS) laddas från filen pmnsfil.
-o format,--format=format- Vid bearbetning av prestandadata från ett arkiv kan
-oanvändas för att ange ett alternativt utdataformat när en regelåtgärd exekveras. Se avsnittet om skillnader mellan värd- och arkivläge.
-O ursprung,--origin=ursprung- Anger tidsfönstrets ursprung. Se PCPIntro(1).
-P,--primary- Markerar denna som den primära pmie-instansen för en värd. Se avsnittet om automatisk omstart.
-q,--quiet- Undertrycker diagnostiska meddelanden som annars skulle skrivas till standard ut, särskilt meddelandet ”evaluator exiting”.
-S starttid,--start=starttid- Anger starttiden för tidsfönstret. Se PCPIntro(1).
-t intervall,--interval=intervall- intervall följer syntaxen i PCPIntro(1). I enklaste form kan det vara ett osignerat heltal, vilket då tolkas som sekunder. Värdet används som samplingsintervall för uttryck som inte uttryckligen sätter detta via variabeln
delta. Standard är 10,0 sekunder.
-T sluttid,--finish=sluttid- Anger sluttiden för tidsfönstret. Se PCPIntro(1).
-U användarnamn,--username=användarnamn- Användarkonto som pmie ska köras under. Standard är nuvarande användare vid interaktiv användning. Vid daemonkörning används i moderna PCP-versioner det opriviligierade kontot pcp, men äldre versioner använde root.
-v- Om inget av alternativen
-V,-veller-Wanvänds sker utvärdering tyst. Med-vskrivs värdet av varje uttryck ut när det utvärderas. Värden visas i kanoniska enheter: byte för dimensionen ”space”, sekunder för ”time” och händelser för ”count”.
-V,--verbose- Samma effekt som
-v, men även värdnamn och instans (om tillämpligt) skrivs ut.
-W- Samma effekt som
-V, men för booleska uttryck skrivs endast de namn och värden ut som gör uttrycket sant.
-x,--secret-agent- Kör i domänagentläge. Detta används inom PCP för att härleda värden för sammanfattningsmetrik, se pmdasummary(1). Endast begränsad funktionalitet finns i detta läge.
-X,--secret-applet- Kör i hemligt applet-läge (thin client).
-z,--hostzone- Byt rapporterad tidszon till tidszonen för värden som är källan till prestandametriken.
-Z tidszon,--timezone=tidszon- Byt rapporterad tidszon till tidszon i samma format som miljövariabeln
TZenligt environ(7).
-?,--help- Visa hjälpinformation och avsluta.
Exempel
Följande exempeluttryck visar några av inferensmotorns möjligheter.
Katalogen $PCP_DEMOS_DIR/pmie innehåller flera andra kommenterade exempel på pmie-uttryck.
Variabeln delta styr utvärderingsfrekvensen. Följande anger att efterföljande uttryck ska utvärderas en gång per sekund:
delta = 1 sec;
Om den totala kontextväxlingshastigheten överskrider 10000 per sekund per CPU, visa ett larm:
kernel.all.pswitch / hinv.ncpu > 10000 count/sec -> alarm "high context switch rate %v";
Om den höga kontextväxlingshastigheten varar i 10 på varandra följande prover, starta top(1) i ett xterm(1)-fönster, men högst en gång var femte minut:
all_sample (
kernel.all.pswitch @0..9 > 10 Kcount/sec * hinv.ncpu
) -> shell 5 min "xterm -e 'top'";
Om någon disk utför mer än 60 I/O-operationer per sekund, skriv ett meddelande och starta dkvis(1):
some_inst (
disk.dev.total > 60 count/sec
) -> print "busy disks:" " %i" &
shell 5 min "dkvis";
Ett exempel med tidsvillkor och krav på 3 av 4 successiva prover:
$hour >= 9 && $hour <= 17 &&
some_inst (
75 %_sample (
disk.dev.total @0..3 > 60 count/sec
)
) -> print "disks busy for 20 sec:" " [%h]%i";
Om rotfilsystemet eller /usr är mer än 95 % fullt, visa popup-larm, men inte oftare än var fjärde timme:
filesys.free #'/dev/root' /
filesys.capacity #'/dev/root' < 0.05
-> alarm 4 hour "root filesystem (almost) full";
filesys.free #'/dev/usr' /
filesys.capacity #'/dev/usr' < 0.05
-> alarm 4 hour "/usr filesystem (almost) full";
Om temperaturen i maskinrummet ökar med mer än 2 grader under 10 minuter, skriv till systemloggen:
lmsensors.coretemp_isa.temp1 @0 - lmsensors.coretemp_isa.temp1 @1 > 2 -> alarm "temperature rising fast" & syslog "machine room temperature rise alarm";
Ett exempel för Oracle-databasövervakning:
delta = 30 sec;
sid = "ptg1";
lid = "223";
lru = "#'$sid/$lid cache buffers lru chain'";
host = ":moomba.melbourne.sgi.com";
gets = "oracle.latch.gets $host $lru";
total = "oracle.latch.gets $host $lru +
oracle.latch.misses $host $lru +
oracle.latch.immisses $host $lru";
$total > 100 && $gets / $total < 0.2
-> alarm "high lru latch contention in database $sid";
Ett exempel på en ruleset som skriver exakt ett meddelande beroende på 1-minuts load average:
delta = 1 minute;
ruleset
kernel.all.load #'1 minute' > 10 * hinv.ncpu ->
print "extreme load average %v"
else kernel.all.load #'1 minute' > 2 * hinv.ncpu ->
print "moderate load average %v"
unknown ->
print "load average unavailable"
otherwise ->
print "load average OK"
;
Om ett filsystem är mer än 75 % fullt och fylls så snabbt att det blir fullt inom 30 minuter:
some_inst (
100 * filesys.used / filesys.capacity > 75 &&
filesys.used + 30min * (rate filesys.used) > filesys.capacity
) -> print "filesystem will be full within 30 mins:" " %i";
Snabbstart
Språket för pmie-specifikationer är kraftfullt och omfattande.
För att snabba upp utvecklingen av pmie-regler erbjuder verktyget pmieconf(1) möjlighet att generera en konfigurationsfil från en uppsättning generaliserade pmie-regler. Den medföljande regelsamlingen täcker många olika prestandascenarier.
Performance Co-Pilot User's and Administrator's Guide innehåller ett detaljerat handledningskapitel om pmie.
Uttryckssyntax
Denna beskrivning är kortfattad och informell. För en mer fullständig beskrivning, se Performance Co-Pilot User's and Administrator's Guide.
En pmie-specifikation är en sekvens av uttryck som avslutas med semikolon.
Grundläggande operatorer är modellerade på aritmetiska, relationella och booleska operatorer i programspråket C. Prioritetsreglerna är som väntat, men parenteser rekommenderas.
Operandtyper är namn på prestandametrik och vanliga literalkonstanter.
Operander som involverar prestandametrik kan ge upphov till mängder av värden som resultat av uppräkning i dimensionerna värdar, instanser och tid. Särskilda kvalificerare kan förekomma efter metriknamnet för att definiera uppräkningen i varje dimension. Till exempel:
kernel.percpu.cpu.user :foo :bar #cpu0 @0..2
Detta definierar sex värden som motsvarar tiden i användarläge på CPU 0 på värdarna ”foo” och ”bar” över de tre senaste proverna.
Standardtolkningen i frånvaro av kvalificerarna : (värd), # (instans) och @ (tid) är alla instanser vid senaste sampeltid från standardkällan för PCP-prestandametrik.
Värd- och instansnamn som inte följer vanliga regler för variabelnamn bör omges av enkla citationstecken.
Uttrycksutvärdering följer principen om minsta överraskning. Om prestandametrik har semantiken räknare konverterar pmie automatiskt till en takt baserad på successiva prover och tidsintervallet mellan dem. Alla numeriska uttryck utvärderas i dubbel precision och skalas vid behov automatiskt till kanoniska enheter.
En regel är en särskild uttrycksform som anger ett villkor eller logiskt uttryck, en specialoperator (->) och åtgärder som ska utföras när villkoret är sant.
Grundläggande operatorer
| Operatorer | Förklaring |
|---|---|
+ - * /
|
Aritmetik |
< <= == >= > !=
|
Relationella jämförelser |
! && |
Booleska operatorer |
->
|
Regel |
rising
|
Boolesk, övergång från falskt till sant |
falling
|
Boolesk, övergång från sant till falskt |
rate
|
Explicit taktkonvertering |
instant
|
Ingen automatisk taktkonvertering |
Alla operatorer stöds för numeriska operander och uttryck. För strängoperander, alltså strängkonstanter inom dubbla citationstecken eller metrik av datatypen PM_TYPE_STRING, stöds endast == och !=.
Aggregatoperatorer för logiska uttryck
| Operatorer | Typ | Förklaring |
|---|---|---|
some_inst, some_host, some_sample
|
Existentiell | Sant om minst en medlem i mängden är sann i den associerade dimensionen |
all_inst, all_host, all_sample
|
Universell | Sant om alla medlemmar i mängden är sanna i den associerade dimensionen |
N%_inst, N%_host, N%_sample
|
Percentil | Sant om minst N procent av mängdens medlemmar är sanna |
Instantieringsoperatorer
För att filtrera logiska uttryck baserat på reguljära uttryck för instansnamn finns följande:
| Operator | Förklaring |
|---|---|
match_inst
|
För varje sant värde blir resultatet sant om instansnamnet matchar reguljärt uttryck |
nomatch_inst
|
För varje sant värde blir resultatet sant om instansnamnet inte matchar reguljärt uttryck |
Exempel:
match_inst "^dks[23]d" disk.dev.total > 20;
Aggregatoperatorer för aritmetiska uttryck
| Operatorer | Typ | Förklaring |
|---|---|---|
min_inst, min_host, min_sample
|
Extremvärde | Minsta värde över mängden |
max_inst, max_host, max_sample
|
Extremvärde | Största värde över mängden |
sum_inst, sum_host, sum_sample
|
Aggregat | Summan över mängden |
avg_inst, avg_host, avg_sample
|
Aggregat | Medelvärdet över mängden |
Operatorerna count_inst, count_host och count_sample räknar antalet mängdmedlemmar där ett logiskt uttryck är sant.
Regelåtgärder
| Operator | Förklaring |
|---|---|
alarm
|
Visa synligt larm med xconfirm(1) |
print
|
Skriv till standard ut |
shell
|
Kör med sh(1) |
stomp
|
Skicka ett STOMP-meddelande till en JMS-server |
syslog
|
Lägg till ett meddelande i systemloggen |
Flera åtgärder kan separeras med & och | för sekventiell respektive alternativ exekvering.
Specialmarkörer i åtgärdssträngar
Strängargument till åtgärder kan innehålla följande särskilda markörer:
%h- Värdnamn som gör det vänstra toppnivåuttrycket i villkoret sant.
%c- Anslutningsspecifikationssträngar eller filer för ett PCP-verktyg att nå de värdar eller arkiv som gör uttrycket sant.
%i- Instanser som gör det vänstra toppnivåuttrycket sant.
%v- Ett värde från det vänstra toppnivåuttrycket för varje värd- och instanspar som gör villkoret sant.
Booleska uttryck
pmie-uttryck med boolesk semantik, till exempel foo.bar > 10 eller some_inst ( my.table < 0 ), tilldelas värdena true, false eller unknown.
Ett värde blir unknown om ett eller flera underliggande metrikvärden inte är tillgängliga, till exempel om pmcd(1) på värden inte kan nås, metriken inte finns i PCP-arkivet, inga värden finns tillgängliga, för få värden har hämtats för att räkna ut en takt, eller för få värden finns för att instansiera det antal sampel som krävs i tidsdomänen.
Booleska operatorer följer vanlig Kleene-logik (trevärdeslogik) vid kombination med unknown.
Regeluppsättningar
Klausulen ruleset används för att definiera en mängd regler och åtgärder som utvärderas i ordning tills någon åtgärd utförs. Då hoppas återstående regler och åtgärder över tills ruleset åter ska utvärderas.
Nyckelordet else används för att skilja regler åt.
Efter en eller flera vanliga regler kan en ruleset innehålla en valfri klausul:
unknown -> åtgärd
och därefter eventuellt:
otherwise -> åtgärd
Om alla predikat utvärderas till unknown och en unknown-klausul finns, körs dess åtgärd.
Om inget regelpredikat är true och unknown-åtgärden inte körs, men en otherwise-klausul finns, körs denna.
Skalfaktorer
Skalfaktorer kan läggas till aritmetiska uttryck och tvingar linjär skalning till kanoniska enheter. Enkla skalfaktorer byggs av nyckelorden:
nanosecond, nanosec, nsec, microsecond, microsec, usec, millisecond, millisec, msec, second, sec, minute, min, hour, byte, Kbyte, Mbyte, Gbyte, Tbyte, count, Kcount och Mcount, samt operatorn /, till exempel:
Kbytes / hour
Makron
Makron definieras med uttryck av formen:
namn = constexpr;
Där namn följer vanliga regler för variabelnamn. constexpr måste vara ett konstant uttryck, antingen en sträng eller ett aritmetiskt uttryck, eventuellt följt av en skalfaktor.
Makron expanderas när deras namn, med prefixet $, förekommer i ett uttryck. Makron kan även nästlas.
Följande reserverade makronamn förstås:
minute- Aktuell minut i timmen.
hour- Aktuell timme på dygnet, 0 till 23.
day- Aktuell dag i månaden, 1 till 31.
month- Aktuell månad, 0 (januari) till 11 (december).
year- Aktuellt år.
day_of_week- Aktuell veckodag, 0 (söndag) till 6 (lördag).
delta- Samplingsintervall för uttrycket.
Datum och tider presenteras i rapporterad tidszon.
Automatisk omstart
Det är ofta användbart att pmie-processer startas och stoppas när den lokala värden bootas eller stängs av, eller när de upptäcks ha avslutats oväntat. Se pmie_check(1) för detaljer om att automatisera detta.
Varje system som kör pmcd(1) kan också konfigureras att köra en ”primär” pmie-instans. Denna instans startas av $PCP_RC_DIR/pmie och påverkas av filer som $PCP_SYSCONF_DIR/pmie/control och $PCP_VAR_DIR/config/pmie/config.default.
Den primära instansen identifieras med alternativet -P. Det får finnas högst en sådan instans per system. Den måste köras på samma värd som den pmcd den ansluter till, så -h och -P kan inte användas tillsammans.
Händelseövervakning
Det är vanligt att produktionssystem övervakas centralt. Traditionellt görs detta på UNIX med systemloggsfunktioner, se logger(1) och syslogd(1). På Windows hanteras kommunikation med systemets händelselogg av pcp-eventlog(1).
pmie passar in i denna modell när regler använder åtgärden syslog.
Man kan också använda åtgärden shell för att skicka händelser till andra övervakningsramverk.
Ett sista alternativ är åtgärden stomp (Streaming Text Oriented Messaging Protocol), som låter pmie ansluta till en central JMS-server och skicka händelser till PMIE-ämnet.
Formatet på STOMP-konfigurationsfilen är:
host=messages.sgi.com port=61616 timeout=2 username=joe password=j03ST0MP topic=PMIE
Skillnader mellan värd- och arkivläge
När pmie körs i värdläge avgör delta-intervallet för varje regel en realtidsfördröjning mellan utvärderingarna.
I arkivläge används delta för att avgöra hur ofta reglerna utvärderas mot arkivdata, men utan realtidsfördröjningar. Arkivet ”spelas upp” så snabbt som möjligt.
Om ett regelpredikat utvärderas till true i arkivläge ändras åtgärden: i stället för att skriva till syslog, visa alarm, köra shell eller skicka stomp, skriver pmie ut åtgärdsnamnet, tidsstämpeln från arkivet samt alla argument som annars hade skickats i värdläge.
Exempel:
delta = 10 sec; kernel.all.nprocs > 10 * hinv.ncpu -> print "lotsaprocs:" " %v";
Utdata i arkivläge kan då bli:
print Mon Sep 4 00:10:21 2017: lotsaprocs: 1292 print Mon Sep 4 00:10:31 2017: lotsaprocs: 1294 print Mon Sep 4 00:10:41 2017: lotsaprocs: 1291
Utdataformatet kan ändras med -o. Följande metafält finns:
%a- Åtgärdens namn.
%d- Datum och tid i ctime(3)-format.
%f- Namnet på konfigurationsfilen som innehåller åtgärden.
%l- Ungefärligt radnummer i konfigurationsfilen.
%m- Meddelandedelen av åtgärden.
%u- Datum och tid i utökat ctime(3)-format med mikrosekundprecision.
%%- Ett bokstavligt procenttecken.
Standardformatet motsvarar:
%a %d: %m
Signaler
Om pmie får signalen SIGHUP stängs, avlänkas och öppnas loggfilen på nytt. Detta används av pmie_daily(1) för nattlig loggrotation.
Det mesta av tiden sover pmie. Om signalen SIGUSR1 skickas kommer detaljer om nästa uppsättning regler att dumpas till loggfilen, inklusive hur länge den nuvarande vilan är och hur mycket tid som återstår. Regelplaneringen ändras inte.
Ändringar av värdnamn
Värdnamnet för den PMCD som levererar metrik till pmie används på flera sätt.
PMCD:s värdnamn används internt för värdet till %h-substitutioner i regelåtgärder.
För pmie-instanser som använder lokal PMCD och startas och hanteras av pmie_check(1) och pmie_daily(1), kan det lokala värdnamnet också användas för att skapa namnet på katalogen där pmie-loggar för en värd lagras.
Värdnamnet kan ändras under boot eller genom administrativ åtgärd. När detta sker kan pmie behöva avslutas, så att en ny instans senare startas med rätt värdnamnskontext.
Buggar
Den lexikala analysatorn och parsern försöker återhämta sig efter ett fel i indatauttrycken. Parsning återupptas efter att indata hoppats fram till nästa semikolon. Under denna process känner analysatorn dock inte till kommentarer och strängar, så ett inbäddat semikolon kan få parsningen att återupptas på en oväntad plats.
Filer
$PCP_DEMOS_DIR/pmie/*- Kommenterade exempelregler.
$PCP_VAR_DIR/pmns/*- Standardfiler för PMNS-specifikationer.
$PCP_TMP_DIR/pmie- pmie underhåller filer här för att identifiera körande instanser och exportera körningsinformation om varje instans.
$PCP_PMIECONTROL_PATH- Standarduppsättningen pmie-instanser som ska startas vid boot.
PCP-miljö
Miljövariabler med prefixet PCP_ används för att parameterisera fil- och katalognamn i PCP. På varje installation innehåller /etc/pcp.conf de lokala värdena. Variabeln $PCP_CONF kan användas för att ange en alternativ konfigurationsfil, som beskrivs i pcp.conf(5).
När shell-åtgärder exekveras åsidosätter pmie två variabler i barnprocessens miljö: IFS och PATH. IFS sätts till "\t\n". PATH sätts till en kombination av standardsökvägar och konfigurerbara komponenter.
När popup-larm exekveras använder pmie värdet i $PCP_XCONFIRM_PROG som program för visuell notifiering, vanligtvis pmconfirm(1).
UNIX se även
logger(1)
Windows se även
pcp-eventlog(1)
Felsökningsalternativ
Alternativet -D eller --debug aktiverar ytterligare diagnostik på stderr för felsökning. debug är en kommaseparerad lista över felsökningsalternativ. Använd pmdbg(1) med -l för att få en lista över tillgängliga alternativ.
Felsökningsalternativ specifika för pmie är:
| Alternativ | Beskrivning |
|---|---|
appl0
|
Lexikal analys vid tolkning av konfigurationsfilen |
appl1
|
Parsning av konfigurationsfil och konstruktion av uttrycksträd |
appl2
|
Uttrycksutvärdering |
appl3
|
Operationer på statusfil |
Se även
PCPIntro(1), pmcd(1), pmconfirm(1), pmie_check(1), pmieconf(1), pmie_daily(1), pminfo(1), pmlogdump(1), pmlogger(1), pmval(1), systemd(1), ctime(3), PMAPI(3), pcp.conf(5), pcp.env(5) och PMNS(5).
Användarguide
För en mer fullständig beskrivning av pmie-språket, se Performance Co-Pilot Users and Administrators Guide. Den finns tillgänglig online på:
https://pcp.readthedocs.io/en/latest/UAG/PerformanceMetricsInferenceEngine.html
Källinformation
Denna sida är en del av projektet PCP (Performance Co-Pilot). Information om projektet finns på http://www.pcp.io/.
Om du har en felrapport för denna manualsida, skicka den till pcp@groups.io.
Denna sida hämtades från projektets Git-arkiv https://github.com/performancecopilot/pcp.git den 2026-01-16. Vid den tidpunkten var datumet för den senaste commit som hittades i arkivet 2026-01-16.
Om du upptäcker renderingsproblem i denna HTML-version av sidan, eller anser att det finns en bättre eller mer uppdaterad källa för sidan, eller om du har rättelser eller förbättringar till informationen i denna källinformation (som inte är en del av den ursprungliga manualsidan), skicka e-post till man-pages@man7.org.
Sidslut
Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/pmie.1.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorservice som har sponsrat Linux.se med webbhotell.