[613] | 1 | XWBDLOG ;ISF/RWF - Debug Logging for Broker ;08/04/2004 13:56
|
---|
| 2 | ;;1.1;RPC BROKER;**35**;Mar 28, 1997
|
---|
| 3 | Q
|
---|
| 4 | ;
|
---|
| 5 | ;Setup the log, Clear the log location.
|
---|
| 6 | LOGSTART(RTN) ;Clear the debug log
|
---|
| 7 | K ^XTMP("XWBLOG"_$J)
|
---|
| 8 | S ^XTMP("XWBLOG"_$J,0)=$$HTFM^XLFDT($$HADD^XLFDT($H,7))_"^"_$$DT^XLFDT
|
---|
| 9 | S ^XTMP("XWBLOG"_$J,.1)=0
|
---|
| 10 | D LOG("Log start: "_$$HTE^XLFDT($H)),LOG(RTN)
|
---|
| 11 | Q
|
---|
| 12 | LOG(MSG) ;Record Debug Info
|
---|
| 13 | Q:'$G(XWBDEBUG)
|
---|
| 14 | N CNT
|
---|
| 15 | S CNT=1+$G(^XTMP("XWBLOG"_$J,.1)),^(.1)=CNT,^(CNT)=$E($H_"^"_MSG,1,255)
|
---|
| 16 | Q
|
---|
| 17 | ;
|
---|
| 18 | ;
|
---|
| 19 | VIEW ;View log files
|
---|
| 20 | N DIRUT,XWB,DIR,IX,X,CON
|
---|
| 21 | D HOME^%ZIS
|
---|
| 22 | W !,"Log Files"
|
---|
| 23 | S XWB="XWBLOG",CON=""
|
---|
| 24 | F S XWB=$O(^XTMP(XWB)) Q:XWB'["XWBLOG" D
|
---|
| 25 | . D V1(.XWB)
|
---|
| 26 | . I $$WAIT(.CON) S:CON=3 XWB="XWC"
|
---|
| 27 | . Q
|
---|
| 28 | Q
|
---|
| 29 | ;
|
---|
| 30 | V1(XWB) ;View one log
|
---|
| 31 | N IX,X,CNT
|
---|
| 32 | S IX=.9,X=$G(^XTMP(XWB,IX)),CON=0,CNT=+$G(^XTMP(XWB,.1))
|
---|
| 33 | Q:CNT<1
|
---|
| 34 | W !!,"Log from Job ",$E(XWB,7,99)," ",CNT," Lines"
|
---|
| 35 | F S IX=$O(^XTMP(XWB,IX)) Q:'$L(IX) S X=^XTMP(XWB,IX) D VL1(IX,X)
|
---|
| 36 | Q
|
---|
| 37 | ;
|
---|
| 38 | VL1(J,K) ;Write a line
|
---|
| 39 | I $Y'<IOSL,$$WAIT(.CON) S IX="A" S:CON=3 XWB="XWC" Q
|
---|
| 40 | Q:'$D(^XTMP(XWB,IX))
|
---|
| 41 | N H,D,T,I
|
---|
| 42 | S H=$P($$HTE^XLFDT($P(K,"^"),"2S"),"@",2)_" = "
|
---|
| 43 | S D=$P(K,"^",2,99),K=D
|
---|
| 44 | I D?.E1C.E D
|
---|
| 45 | . S D=""
|
---|
| 46 | . F I=1:1:$L(K) S T=$A(K,I),D=D_$S(T>31:$E(K,I),1:"\"_$E((1000+T),3,4))
|
---|
| 47 | S T=$L(H)
|
---|
| 48 | F W !,H,?T,$E(D,1,68) S H="",D=$E(D,69,999) Q:'$L(D)
|
---|
| 49 | Q
|
---|
| 50 | ;
|
---|
| 51 | WAIT(CON) ;continue/kill/exit
|
---|
| 52 | S DIR("?")="Enter RETURN to continue, Next for next log, Kill to remove log, Exit to quit log view."
|
---|
| 53 | S DIR("A")="Return to continue, Next log, Exit: "
|
---|
| 54 | S DIR(0)="SAB^1:Continue;2:Next;3:Exit;4:Kill",DIR("B")="Continue"
|
---|
| 55 | D ^DIR
|
---|
| 56 | S CON=+Y
|
---|
| 57 | I Y=4 D K1(XWB,0) H 1
|
---|
| 58 | I Y=1 W @IOF
|
---|
| 59 | Q Y>1
|
---|
| 60 | ;
|
---|
| 61 | K1(REF,S) ;Kill one
|
---|
| 62 | I REF["XWBLOG" K ^XTMP(REF)
|
---|
| 63 | I 'S W !,"Log "_REF_" deleted."
|
---|
| 64 | Q
|
---|
| 65 | ;
|
---|
| 66 | KILLALL ;KILL ALL LOG Entries
|
---|
| 67 | N DIR,XWB
|
---|
| 68 | S DIR(0)="Y",DIR("A")="Remove all XWB log entries",DIR("B")="No"
|
---|
| 69 | D ^DIR Q:Y'=1
|
---|
| 70 | S XWB="XWBLOG"
|
---|
| 71 | F S XWB=$O(^XTMP(XWB)) Q:XWB'["XWBLOG" D K1(XWB,1)
|
---|
| 72 | W !,"Done"
|
---|
| 73 | Q
|
---|