[613] | 1 | AAQSS ;JHS/FGO;10/14/97; REVISED SYSTEM STATUS [12/3/03 7:03pm]
|
---|
| 2 | ;;1.7;LOCAL;; For Kernel V8.0 and Intersystems Cache
|
---|
| 3 | ;;Revised version of %ZAUG from at/jas; birmingham ocio/albany ocio
|
---|
| 4 | K ZTSK,ZTQUEUED D GETENV S %ZIS="MQ" D ^%ZIS
|
---|
| 5 | I $D(IO("Q")) K IO("Q") S ZTCPU=AAQVOL_":"_AAQSYS,ZTDESC="Revised System Status",ZTRTN="EN^AAQSS",ZTSAVE("^UTILITY($J,")="" D ^%ZTLOAD K ZIS
|
---|
| 6 | I $D(ZTSK) W !!,"Request queued.",!! G EXIT
|
---|
| 7 | EN D GETENV I IOST["P-" U IO
|
---|
| 8 | E D HOME^%ZIS
|
---|
| 9 | D ^XQDATE S $P(LINE,"-",IOM)="",PG=0,QUIT=0 D HDR
|
---|
| 10 | K JOB S NJOB=0,NSYS=0,USER=""
|
---|
| 11 | S SW10=$V(0,-2,$ZU(40,0,1))\1024#2
|
---|
| 12 | S BASE=$V($ZU(40,2,47),-2,"S")
|
---|
| 13 | S MAXPID=$V($ZU(40,2,118),-2,4)
|
---|
| 14 | F I=1:1:MAXPID-1 S PID=$V($V($ZU(40,2,47)+((I\32)*$ZU(40,0,25)),-2,$ZU(40,0,25))+((I#32)*4),-2,4) S:PID JOB(I\1000,PID)=PID
|
---|
| 15 | S JJ="" F S JJ=$O(JOB(JJ)) Q:JJ="" S KK="" F S KK=$O(JOB(JJ,KK)) Q:KK="" D G:QUIT EXIT
|
---|
| 16 | .S PID=JOB(JJ,KK),NJOB=NJOB+1
|
---|
| 17 | .I ($ZU(67,0,PID)'=2) W !,?2,PID,?9,"************************",?51,"Ghost?, Check %SS" Q
|
---|
| 18 | .S XX=$V(-1,PID),DEV=$P(XX,"^",3),PROG=$P(XX,"^",6),SPROG=$P(XX,"^",10),UCI=$P(XX,"^",14) D PORTS I $E(DEV,1,6)="|TRM|:" S DEV=$E(DEV,1,6)_"System Console",PROG="SystemJob"
|
---|
| 19 | .I UCI'=AAQUCI,PROG="" S PROG=SPROG
|
---|
| 20 | .S:'$D(^XUTL("XQ",PID,"DUZ")) USER="Unknown"
|
---|
| 21 | .S:'$D(^XUTL("XQ",PID,0)) USER="System"
|
---|
| 22 | .S:PROG["%ZTMS" USER="Task Submanager"
|
---|
| 23 | .S:PROG="%ZTM" USER="Taskman Manager"
|
---|
| 24 | .S:PROG="%mvbTCP" USER="Cache Thin Client"
|
---|
| 25 | .I $D(^XUTL("XQ",PID,"DUZ")) S SVDUZ=^XUTL("XQ",PID,"DUZ") S:SVDUZ=0 SVDUZ=".5" S USER=$P(^VA(200,SVDUZ,0),"^",1)
|
---|
| 26 | .I PROG="%ZISTCPS" D LIST
|
---|
| 27 | .S:PROG="XWBTCPL" USER="RPC Broker Listener"
|
---|
| 28 | .S:PROG="HLCSLM" USER="HL7 Link Manager"
|
---|
| 29 | .S:PROG="XMKPLQ" USER="MailMan Background Mover"
|
---|
| 30 | .S:PROG="XMTDT" USER="MailMan Background Tickler"
|
---|
| 31 | .I USER="System" S NSYS=NSYS+1
|
---|
| 32 | .W !,?2,PID,?9,PROG,?19,DEV,?51,USER
|
---|
| 33 | .D:$Y>(IOSL-6) HDR
|
---|
| 34 | W !!,?2,"Number of Processes: "
|
---|
| 35 | ; NOTE: The number of user and system jobs will be different
|
---|
| 36 | ; for %SS (system job) and AAQSS (user job).
|
---|
| 37 | S NGLO=0 ; From Cache routine %SS
|
---|
| 38 | F M=0:1:5 S NGLO=NGLO+($V($ZU(40,2,135)+(M*$ZU(40,0,1)),-2,$ZU(40,0,1))*(2**(11+M))/(1024*1024))
|
---|
| 39 | S NGLO=$FN(NGLO,"",0)
|
---|
| 40 | S NROU=$V($ZU(40,2,26),-2,$ZU(40,0,1))*32767/(1024*1024)
|
---|
| 41 | S NROU=$FN(NROU,"",0)
|
---|
| 42 | S NUSR=NJOB-NSYS ;number of user processes
|
---|
| 43 | W NUSR_" user, "_NSYS_" system, "
|
---|
| 44 | W NGLO_" mb global/"_NROU_" mb routine cache"
|
---|
| 45 | I IOST?1"C-".E,'QUIT S X=$$RD(0)
|
---|
| 46 | EXIT K %Y,%ZIS,AAQLP,AAQPORT,AAQSERV,AAQSYS,AAQUCI,AAQUS,AAQVOL,AAQY4,BASE,DEV,DEV1,DEV2,I,JJ,JOB,KK,LINE,M,MAXPID,NGLO,NJOB,NROU,NSYS,NUSR
|
---|
| 47 | K PG,PID,PROG,QUIT,SPROG,SVDUZ,SW10,UCI,USER,X,XX,Y,ZTCPU,ZTDESC,ZTRTN,ZTSAVE,ZTSK
|
---|
| 48 | D ^%ZISC S:$D(ZTQUEUED) ZTREQ="@" Q
|
---|
| 49 | KEEP ; ZTQUEUED, ZTREQ are used to delete task and are not killed.
|
---|
| 50 | GETENV S U="^" D GETENV^%ZOSV S AAQUCI=$P(Y,"^",1),AAQVOL=$P(Y,"^",2),AAQY4=$P(Y,"^",4),AAQSYS=$P(AAQY4,":",2)
|
---|
| 51 | I AAQSYS["MIR" S AAQSYS=$P(AAQSYS,"MIR")
|
---|
| 52 | S AAQUS=AAQUCI_" on "_AAQSYS Q
|
---|
| 53 | LIST S AAQLP=$P(DEV,"|TCP|",2)
|
---|
| 54 | I $E(AAQLP,1,2)=25 S USER="TCP/IP Mail Listener"
|
---|
| 55 | E S USER="HL7 Multi-Listener"
|
---|
| 56 | Q
|
---|
| 57 | RD(X) W !!,"Press RETURN to "_$S(X:"Continue or '^' to Exit: ",1:"End: ")
|
---|
| 58 | R X:15
|
---|
| 59 | Q ($E(X)="^")
|
---|
| 60 | HDR I IOST?1"C-".E,PG'=0,'$D(ZTQUEUED),$$RD(1) S QUIT=1 Q
|
---|
| 61 | S PG=PG+1 W @IOF,!?2,%Y," Revised System Status ",AAQUS,?(IOM-12),"Page ",PG,!!
|
---|
| 62 | W " PID",?9,"Program",?19,"Device Used",?51,"Process Holder"
|
---|
| 63 | W !," ===",?9,"=======",?19,"=============================",?51,"======================="
|
---|
| 64 | Q
|
---|
| 65 | PORTS ;;Following code reformats port information to more readable format
|
---|
| 66 | I $E(DEV,1,5)="|TNT|" S DEV1=$P(DEV,".",1),DEV2=$P(DEV,":",2),DEV=DEV1_":"_DEV2 Q
|
---|
| 67 | S DEV1=$P($G(DEV),",",1),DEV2=$P($G(DEV),",",2)
|
---|
| 68 | I DEV2="",$E(DEV1,1,6)="|LAT|M" S AAQSERV=$E(DEV,10,11),AAQPORT=$E(DEV,18,19),DEV="PORT "_AAQSERV_"/"_AAQPORT Q ;EQN
|
---|
| 69 | I $E(DEV1,1,6)="|LAT|M" S AAQSERV=$E(DEV1,10,11),AAQPORT=$E(DEV1,18,22),DEV="PORT "_AAQSERV_"/"_AAQPORT_","_DEV2 Q ;EQN,null
|
---|
| 70 | I $E(DEV2,1,6)="|LAT|M" S AAQSERV=$E(DEV2,10,11),AAQPORT=$E(DEV2,18,22),DEV=DEV1_","_"PORT "_AAQSERV_"/"_AAQPORT Q ;null,EQN
|
---|
| 71 | I $E(DEV,1,8)="|LAT|PCL" S DEV="WFW PC "_$E(DEV,10,21) Q ;WFW311
|
---|
| 72 | I $E(DEV,1,5)="|LAT|" S DEV1=$P(DEV,":",1),DEV="NT PC "_$E(DEV1,6,99) Q ;SUPERLAT
|
---|
| 73 | Q
|
---|