User Tools

Site Tools


ibm:vm370-lib:macro:sysmon.macro_src

SYSMON Source

References

Source Listing

SYSMON.MACRO.txt
  1. MACRO 00001000
  2. SYSMON &TIME=(09:00,17:00),&LIMIT=(50000,NOSTOP),&USERID=OPERAX00002000
  3. TOR,&ENABLE=(PERFORM,USER,DASTAP),&CLASS=M,&AUTO=NO,&BUFX00003000
  4. FS=CPU 00004010
  5. GBLC &SY$MON @V60BBBC 00004300
  6. &SY$MON SETC 'HERE' ANNOUNCE PRESENCE TO SYSLOCS @V60BBBC 00004600
  7. LCLA &I,&K,&NUM,&NUM1,&NUM2,&NUMTS,&AUTST,&EN 00005000
  8. LCLA &DEC,&J,&I1,&NUMME,&NUMMS 00006000
  9. LCLA &VAL(8) 00007000
  10. LCLC &RS,&HS,&HE,&AUT,&NOTN(8),&ME,&MS 00008000
  11. LCLC &ABBR(8) @VA08717 00008100
  12. LCLC &HEX,&ENC,&AST,&ALPHA 00009000
  13. &VAL(1) SETA X'8000' 00010000
  14. &VAL(2) SETA X'4000' 00011000
  15. &VAL(3) SETA X'2000' 00012000
  16. &VAL(4) SETA X'0800' 00013000
  17. &VAL(5) SETA X'0400' 00014000
  18. &VAL(6) SETA X'0200' 00015000
  19. &VAL(7) SETA X'0100' 00016000
  20. &VAL(8) SETA X'0080' 00017000
  21. &ABBR(1) SETC 'PERF' @VA08717 00017100
  22. &ABBR(2) SETC 'RESP' @VA08717 00017200
  23. &ABBR(3) SETC 'SCH' @VA08717 00017300
  24. &ABBR(4) SETC 'USER' @VA08717 00017400
  25. &ABBR(5) SETC 'INST' @VA08717 00017500
  26. &ABBR(6) SETC 'DAS' @VA08717 00017600
  27. &ABBR(7) SETC 'SEEK' @VA08717 00017700
  28. &ABBR(8) SETC 'SYS' @VA08717 00017800
  29. &NOTN(1) SETC 'PERFORM' 00018000
  30. &NOTN(2) SETC 'RESPONSE' @VA08365 00019100
  31. &NOTN(3) SETC 'SCHEDULE' @VA08365 00020100
  32. &NOTN(4) SETC 'USER' 00021000
  33. &NOTN(5) SETC 'INSTSIM' 00022000
  34. &NOTN(6) SETC 'DASTAP' 00023000
  35. &NOTN(7) SETC 'SEEKS' 00024000
  36. &NOTN(8) SETC 'SYSPROF' 00025000
  37. ENTRY DMKSYSAT,DMKSYSTS,DMKSYSTE,DMKSYSMX,DMKSYSUR 00026000
  38. ENTRY DMKSYSEN,DMKSYSCL,DMKSYSBF 00027000
  39. AIF (N'&TIME EQ 1).LAB1A 00028000
  40. AIF (N'&TIME NE 2).ERR1A 00029000
  41. &NUM1 SETA K'&TIME(1) 00030000
  42. &NUM2 SETA K'&TIME(2) 00031000
  43. AGO .LAB2 00032000
  44. .LAB1A ANOP 00033000
  45. &K SETA K'&TIME 00034000
  46. AIF ((&K NE 3) OR ('&TIME'(1,&K) NE 'ALL')).LAB1 00035000
  47. DMKSYSTS DS 0D MONITOR AUTOMATIC START TIME 00036000
  48. DC F'0' 00037000
  49. DC F'0' 00038000
  50. DMKSYSTE DC F'86400' MONITOR AUTOMATIC STOP TIME 00039000
  51. DC F'0' 00040000
  52. AGO .QSPL 00041000
  53. .LAB1 ANOP 00042000
  54. AIF ((&K NE 4) OR ('&TIME'(1,&K) NE 'NONE')).ERR2 00043000
  55. DMKSYSTS DS 0F MONITOR AUTOMATIC START TIME 00044000
  56. DC F'86400' 00045000
  57. DC F'0' 00046000
  58. DMKSYSTE DC F'86400' MONITOR AUTOMATIC STOP TIME 00047000
  59. DC F'0' 00048000
  60. AGO .QSPL 00049000
  61. .LAB2 ANOP 00050000
  62. &I SETA 1 00051000
  63. .CUMP AIF ('&TIME(1)'(&I,1) EQ ':').CALC 00052000
  64. &I SETA &I+1 00053000
  65. AIF (&I GT K'&TIME(1)).ERR1 00054000
  66. AGO .CUMP 00055000
  67. .CALC ANOP 00056000
  68. &I SETA &I-1 00057000
  69. AIF (&I LE 0).ERR1 00058000
  70. &J SETA 1 00059000
  71. .RED1 AIF (&J GT &I).BRLP 00060000
  72. AIF ('&TIME(1)'(&J,1) LT '0').E3 00061000
  73. AIF ('&TIME(1)'(&J,1) GT '9').E3 00062000
  74. &J SETA &J+1 00063000
  75. AGO .RED1 00064000
  76. .BRLP ANOP 00065000
  77. &HS SETC '&TIME(1)'(1,&I) 00066000
  78. &I SETA &I+2 00067000
  79. &I1 SETA K'&TIME(1)-&I+1 00068000
  80. AIF (&I1 LE 0).ERR1 00069000
  81. &J SETA &I 00070000
  82. .RED2 AIF (&J GT K'&TIME(1)).BRLP2 00071000
  83. AIF ('&TIME(1)'(&J,1) LT '0').E3 00072000
  84. AIF ('&TIME(1)'(&J,1) GT '9').E3 00073000
  85. &J SETA &J+1 00074000
  86. AGO .RED2 00075000
  87. .BRLP2 ANOP 00076000
  88. &MS SETC '&TIME(1)'(&I,&I1) 00077000
  89. &I SETA 1 00078000
  90. .CUMP1 AIF ('&TIME(2)'(&I,1) EQ ':').CALC2 00079000
  91. &I SETA &I+1 00080000
  92. AIF (&I GT K'&TIME(2)).ERR1 00081000
  93. AGO .CUMP1 00082000
  94. .CALC2 ANOP 00083000
  95. &I SETA &I-1 00084000
  96. AIF (&I LE 0).ERR1 00085000
  97. &J SETA 1 00086000
  98. .RED3 AIF (&J GT &I).BRLP3 00087000
  99. AIF ('&TIME(2)'(&J,1) LT '0').E3 00088000
  100. AIF ('&TIME(2)'(&J,1) GT '9').E3 00089000
  101. &J SETA &J+1 00090000
  102. AGO .RED3 00091000
  103. .BRLP3 ANOP 00092000
  104. &HE SETC '&TIME(2)'(1,&I) 00093000
  105. &I SETA &I+2 00094000
  106. &I1 SETA K'&TIME(2)-&I+1 00095000
  107. AIF (&I1 LE 0).ERR1 00096000
  108. &J SETA &I 00097000
  109. .RED4 AIF (&J GT K'&TIME(2)).BRLP4 00098000
  110. AIF ('&TIME(2)'(&J,1) LT '0').E3 00099000
  111. AIF ('&TIME(2)'(&J,1) GT '9').E3 00100000
  112. &J SETA &J+1 00101000
  113. AGO .RED4 00102000
  114. .BRLP4 ANOP 00103000
  115. &ME SETC '&TIME(2)'(&I,&I1) 00104000
  116. &NUM SETA &HS 00105000
  117. &NUMMS SETA &MS 00106000
  118. &NUM1 SETA &HE 00107000
  119. &NUMME SETA &ME 00108000
  120. AIF ((&NUM GT 24) OR (&NUM1 GT 24) OR (&NUM GT &NUM1)).E3 00109000
  121. AIF ((&NUMMS GT 60) OR (&NUMME GT 60)).E3 00110000
  122. &NUM SETA &NUM*60*60+&NUMMS*60 00111000
  123. &NUM1 SETA &NUM1*60*60+&NUMME*60 00112000
  124. AIF (&NUM GE &NUM1).E3 00113000
  125. DMKSYSTS DS 0D MONITOR AUTOMATIC START TIME 00114000
  126. DC F'&NUM' 00115000
  127. DC F'0' 00116000
  128. DMKSYSTE DS 0D MONITOR AUTOMATIC STOP TIME 00117000
  129. DC F'&NUM1' 00118000
  130. DC F'0' 00119000
  131. .QSPL ANOP 00120000
  132. AIF (N'&LIMIT NE 2).ERR4 00121000
  133. &K SETA K'&LIMIT(1) 00122000
  134. &I SETA 1 00123000
  135. .LOP1 AIF ('&LIMIT(1)'(&I,1) LT '0').E4 00124000
  136. AIF ('&LIMIT(1)'(&I,1) GT '9').E4 00125000
  137. &I SETA &I+1 00126000
  138. AIF (&I LE &K).LOP1 00127000
  139. &RS SETC '&LIMIT(1)'(1,&K) 00128000
  140. &NUM SETA &RS 00129000
  141. AIF ((&NUM LT 10) OR (&NUM GT 50000)).ERR5 00130000
  142. DMKSYSMX DC F'&NUM' MONITOR SPOOL FILE RECORD LIMIT 00131000
  143. &K SETA K'&LIMIT(2) 00132000
  144. AIF ('&LIMIT(2)' NE 'NOSTOP').LAB3A @V60BEBC 00133000
  145. &AUTST SETA X'40' @V60BEBC 00133100
  146. AGO .LAB3 @V60BEBC 00133200
  147. .LAB3A AIF ('&LIMIT(2)' NE 'SAMPLE').LAB3B @V60BEBC 00133300
  148. &AUTST SETA X'60' @V60BEBC 00133400
  149. AGO .LAB3 @V60BEBC 00133500
  150. .LAB3B AIF ('&LIMIT(2)' NE 'STOP').ERR6A @V60BEBC 00133600
  151. &AUTST SETA X'00' 00137000
  152. .LAB3 ANOP 00138000
  153. &K SETA K'&BUFFS 00139000
  154. AIF ('&BUFFS'(1,&K) EQ 'CPU').SKIP @VA08356 00139500
  155. AIF (&K NE 0).NODFLT 00140000
  156. .SKIP ANOP 00140500
  157. DMKSYSBF DC H'0' DEFAULT MONITOR BUFFERS 0 00141000
  158. AGO .STRTEN 00142000
  159. .NODFLT ANOP 00143000
  160. &RS SETC '&BUFFS'(1,&K) 00144000
  161. &NUM SETA &RS 00145000
  162. AIF (&NUM GT 10).BIGBUF 00146000
  163. DMKSYSBF DC H'&NUM' NUMBER OF MONITOR BUFFERS 00147000
  164. .STRTEN ANOP 00148000
  165. &EN SETA 0 00149000
  166. &K SETA N'&ENABLE 00150000
  167. AIF (&K GT 8).ERR10 00151000
  168. &NUM SETA 1 00152000
  169. .COMP AIF (&NUM GT &K).SETEN 00153000
  170. &NUM1 SETA 1 00154000
  171. .L1 AIF (&NUM1 GT 8).ERR11 00155100
  172. AIF ('&ENABLE(&NUM)' NE '&NOTN(&NUM1)').GETNXT 00156000
  173. .EQUAL ANOP 00156100
  174. AIF (&VAL(&NUM1) EQ 0).ERR12 @VA09888 00157100
  175. &EN SETA &EN+&VAL(&NUM1) 00158000
  176. &VAL(&NUM1) SETA 0 00159000
  177. AGO .NXTPARM 00160000
  178. .GETNXT ANOP 00161000
  179. AIF ('&ENABLE(&NUM)' EQ '&ABBR(&NUM1)').EQUAL @VA08717 00161100
  180. &NUM1 SETA &NUM1+1 00162000
  181. AGO .L1 00163000
  182. .NXTPARM ANOP 00164000
  183. &NUM SETA &NUM+1 00165000
  184. AGO .COMP 00166000
  185. .SETEN ANOP 00167000
  186. &ENC SETC '' 00168000
  187. .LOP3 ANOP 00169000
  188. &DEC SETA &EN-&EN/16*16 00170000
  189. &HEX SETC '0123456789ABCDEF'(&DEC+1,1) 00171000
  190. &ENC SETC '&HEX&ENC' 00172000
  191. &EN SETA &EN/16 00173000
  192. AIF (&EN GT 0).LOP3 00174000
  193. DMKSYSEN DC XL2'&ENC' MONITOR CLASS ENABLE MASK 00175000
  194. &K SETA K'&AUTO 00176000
  195. AIF (&K EQ 0).ERR5 00177000
  196. &AUT SETC '&AUTO'(1,&K) 00178000
  197. AIF ((&K EQ 3) AND ('&AUT' EQ 'YES')).AUTOYES 00179000
  198. AIF ((&K EQ 2) AND ('&AUT' EQ 'NO')).AUTONO 00180000
  199. AGO .ERR7 00181000
  200. .AUTOYES ANOP 00182000
  201. &AUTST SETA X'80'+&AUTST 00183000
  202. AGO .PUTAUT 00184000
  203. .AUTONO ANOP 00185000
  204. &AUTST SETA X'00'+&AUTST 00186000
  205. .PUTAUT ANOP 00187000
  206. &AST SETC '' 00188000
  207. .LOP4 ANOP 00189000
  208. &DEC SETA &AUTST-&AUTST/16*16 00190000
  209. &HEX SETC '0123456789ABCDEF'(&DEC+1,1) 00191000
  210. &AST SETC '&HEX&AST' 00192000
  211. &AUTST SETA &AUTST/16 00193000
  212. AIF (&AUTST GT 0).LOP4 00194000
  213. DMKSYSAT DC XL1'&AST' AUTOMATIC MONITORING FLAG 00195000
  214. .GETUSR ANOP 00196000
  215. &K SETA K'&USERID 00197000
  216. AIF (&K GT 8).ERR8 00198000
  217. DMKSYSUR DC CL8'&USERID' SPOOL FILE DESTINATION USERID 00199000
  218. &ALPHA SETC 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 00200000
  219. &K SETA K'&CLASS 00201000
  220. AIF ((&K EQ 0) OR (&K GT 1)).ERR13 00202000
  221. &I SETA 1 00203000
  222. .LOP5 AIF (&I GT 26).ERR14 00204000
  223. AIF ('&CLASS' EQ '&ALPHA'(&I,1)).CLASSOK 00205000
  224. &I SETA &I+1 00206000
  225. AGO .LOP5 00207000
  226. .CLASSOK ANOP 00208000
  227. DMKSYSCL DC CL1'&CLASS' SPOOL FILE CLASS 00209000
  228. MEXIT 00210000
  229. .ERR1 MNOTE 8,'NO TIME PARAMETER SPECIFIED' 00211000
  230. MEXIT 00212000
  231. .ERR1A MNOTE 8,'TWO TIME PARAMETERS REQUIRED' 00213000
  232. MEXIT 00214000
  233. .ERR2 MNOTE 8,'ILLEGAL TIME PARAMETER' 00215000
  234. MEXIT 00216000
  235. .E3 MNOTE 8,'ILLEGAL NUMERICAL PARAMETER FOR TIME' 00217000
  236. MEXIT 00218000
  237. .ERR4 MNOTE 8,'TWO PARAMETERS ARE REQUIRED FOR SPLMAX' 00219000
  238. MEXIT 00220000
  239. .E4 MNOTE 8,'NO SPOOL MAXIMUM SPECIFIED' 00221000
  240. MEXIT 00222000
  241. .ERR5 MNOTE 8,'ILLEGAL NUMBER SPECIFIED FOR MAXIMUM' 00223000
  242. MEXIT 00224000
  243. .ERR5A MNOTE 8,'START TIME IS GREATER THAN OR EQUAL TO STOP TIME' 00225000
  244. MEXIT 00226000
  245. .ERR6 MNOTE 8,'NO AUTO PARAMETER SPECIFIED' 00227000
  246. MEXIT 00228000
  247. .ERR6A MNOTE 8,'SECOND PARAMETER OF SPLMAX IS IN ERROR' 00229000
  248. MEXIT 00230000
  249. .ERR7 MNOTE 8,'ILLEGAL AUTO PARAMETER' 00231000
  250. MEXIT 00232000
  251. .ERR8 MNOTE 8,'ILLEGAL USERID LENGTH' 00233000
  252. MEXIT 00234000
  253. .ERR10 MNOTE 8,'TOO MANY ENABLE CLASSES SPECIFIED' 00235000
  254. MEXIT 00236000
  255. .ERR11 MNOTE 8,'ILLEGAL ENABLE PARM SPECIFIED' 00237000
  256. MEXIT 00238000
  257. .ERR12 MNOTE 8,'DUPLICATE ENABLE PARM SPECIFIED' 00239000
  258. MEXIT 00240000
  259. .ERR13 MNOTE 8,'EITHER NO CLASS SPECIFIED, NOT ONE CHARACTER' 00241000
  260. MEXIT 00242000
  261. .ERR14 MNOTE 8,'ILLEGAL CHARACTER FOR CLASS' 00243000
  262. MEXIT 00244000
  263. .ERR15 MNOTE 8,'TOO MANY CHARACTERS FOR FNAME, 24 OR LESS' 00245000
  264. MEXIT 00246000
  265. .ERR16 MNOTE 8,'NAME NEEDS EXACTLY TWO PARAMETERS' 00247000
  266. MEXIT 00248000
  267. .ERR17 MNOTE 8,'A PARAMETER CAN HAVE AT MOST 8 CHARACTERS' 00249000
  268. MEXIT 00250000
  269. .BIGBUF MNOTE 8,'ILLEGAL TO SPECIFY OVER 10 BUFFERS' 00251000
  270. MEND 00252000
ibm/vm370-lib/macro/sysmon.macro_src.txt ยท Last modified: 2023/08/06 13:38 by Site Administrator