IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Is there a way to send a alert to consol if the volume


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Thu Apr 10, 2008 9:01 pm
Reply with quote

Hi
Is there a way to send a alert to consol using SMF stating that the volume is above 90% full..Can someone please lemme know the full process to do that....?
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Fri Apr 11, 2008 1:16 am
Reply with quote

There are commercially available tools to do that - but expensive

I suggest you talk to your storage team is space is a problem
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Fri Apr 11, 2008 1:19 am
Reply with quote

Hello,

Is there some reason you mention SMF?

Has your management agreed to permit console displays? On most systems it is not permitted for some program to issue console messages.

What would the console operator do if some volume was 90% full?

Most dasd is defined in pools and a particular volume is not an issue.

If you explain what you really want to do, we may be able to offer suggestions.
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Fri Apr 11, 2008 1:28 pm
Reply with quote

Hi,

Thanks for the reply, I want to know that if there is a way to send an alert to Consol directly from SFM..stating that a perticular Volume is over 90% full. I know if I write a Rexx or JCL and schedule it through Control M and get a report and then using WTOC i can send msg.. but I want to know if I can do it directly from SMF..and how to do it....so that I don't need to write a JCL or REXX and configure SMF in such a way that it throws alerts itself to consol....Thanks
Back to top
View user's profile Send private message
Bill Dennis

Active Member


Joined: 17 Aug 2007
Posts: 562
Location: Iowa, USA

PostPosted: Fri Apr 11, 2008 6:40 pm
Reply with quote

Don't think you can do this.

I had to write my own pgm to run as a started task that sleeps for 15 minutes and then examines certain DASD volumes. When one is xx% full, I issue a command to start an archive task.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Fri Apr 11, 2008 7:08 pm
Reply with quote

What about using Interval Migration ?
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Thu Apr 17, 2008 1:49 pm
Reply with quote

Hi

Thanks for the answers. Bill can you please let me know the way you did..a sample jcl will be helpful...Expat I am not sure of interval migration...actually I am not a Storage guy....my mngr wants me to learn this and gave me this task....and I am kind of lost here....can you please give me a sample jcl which can check the volumes and if the volume is filled above 90% or reaches 90% it automatically issue a command to start an archive task. or may be throws a msg on consol using some command....if not consol may be to a perticular user.....thanks...
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Thu Apr 17, 2008 1:59 pm
Reply with quote

If your shop uses HSM, you can define a storage pool (collection of volumes) to be processed by HSM at regular intervals, the default is every hour.

If the volumes are above the the high usage threshhold defined into SMS, then HSM will attempt to migrate datasets to reduce the usage.

If you have not got HSM, then maybe if you have another DLM product installed, that can do the same thing.
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Thu Apr 17, 2008 2:04 pm
Reply with quote

Hi Expat,

Thanks for the reply..Do you have some sample JCL or steps to do that...I am not storage guy..I do Security and CICS work...and I guess HSM is there on our shop...
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Thu Apr 17, 2008 3:38 pm
Reply with quote

Interval migration is not a batch process, everything is cobntrolled by the SMS definitions which is the responsibility of your storage team.

Usually, because of the overhead of IM processing, it is restriced to a small STORGRP, maybe up to 50 volumes maximum.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Thu Apr 17, 2008 7:44 pm
Reply with quote

Hello,

Quote:
...I am not storage guy..
I suspect that if your system is using SMS, someone is responsible for it.

It would be good to work with "them" about implementing what you want.
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Thu Apr 17, 2008 10:05 pm
Reply with quote

Thanks for the help...I am going through HSM guide now..got the idea from Expact....
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Mon Apr 21, 2008 4:30 pm
Reply with quote

Well Expact..the solution you gave..solves most of the part...however my option of sending msg to consol is still not solved..so I guess I need to go with Bill's solution of writing a REXX or JCL and schedulling it twice a day and through msg to consol if some volume is about 90%....and I need your help bill...if you can give me that sample JCL or REXX..or if someone can help me with this..please....
Back to top
View user's profile Send private message
Bill Dennis

Active Member


Joined: 17 Aug 2007
Posts: 562
Location: Iowa, USA

PostPosted: Mon Apr 21, 2008 7:16 pm
Reply with quote

My code is an Assembler program that uses system macros to total the tracks used and then uses macro MGCR to issue the "S tasknnn" command. It's not a REXX that I can share.

Does SMS will automatically run the archive? Why do you still need a console message?
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Mon Apr 21, 2008 7:25 pm
Reply with quote

Well I know...It can be done automatically.....but we have two LPARS...on TEST LPAR..SMS is not installed and I need it for that....
I have a JCl... but need to ask something

Code:

//****************************************************************** 
//* DFSORT/ICETOOL STORAGE ADMINISTRATOR EXAMPLES                     
//* DCOLLECT EXAMPLE 3: CAPACITY PLANNING                             
//*   CAPACITY PLANNING ANALYSIS AND REPORTS.                         
//****************************************************************** 
//S1      EXEC  PGM=ICETOOL,REGION=1024K                             
//DFSMSG    DD  SYSOUT=*                                             
//TOOLMSG   DD  SYSOUT=*                                             
//INDD      DD  DSN=USERGRP.DCOLLECT,DISP=SHR                         
//OUTDD1    DD  DSN=&&TEMP1,DISP=(NEW,PASS),LIKE=USERGRP.DCOLLECT     
//SGVOLS    DD  SYSOUT=*                                             
//OUTDD2    DD  DSN=&&TEMP2,DISP=(NEW,PASS),LIKE=USERGRP.DCOLLECT     
//SCRPT     DD  SYSOUT=*                                             
//OUTDD3    DD  DSN=&&TEMP3,DISP=(NEW,PASS),LIKE=USERGRP.DCOLLECT     
//VOLRPT    DD  SYSOUT=*                                             
//TOOLIN    DD  *                                                     
* Part 1                                                             
*  Show the number of system-managed data sets that may be reblocked 
*  Include only D-type records with DCDSMSM and DCDREBLK flags on     
  COUNT FROM(INDD) USING(SMSM)                                       
* Part 2                                                             
*  Create a temporary data set with only 'V' type records             
  COPY FROM(INDD) TO(OUTDD1) USING(CPY1)                             
*  Show volume free space statistics                                 
  STATS FROM(OUTDD1) ON(40,1,BI)                                     
*   Show the number of volumes with free space > 30%                 
  RANGE FROM(OUTDD1) ON(40,1,BI) HIGHER(30)                           
*   Part 3                                                           
*   Print a report showing the number of volumes in each storage group
  OCCUR FROM(OUTDD1) LIST(SGVOLS) BLANK -                             
  DATE TITLE('VOLUMES IN EACH STORAGE GROUP') -                       
  HEADER('STORAGE GROUP') HEADER('VOLUME COUNT') -                     
  ON(87,30,CH)                   ON(VALCNT)                           
  PART 4                                                               
*   Create a temporary data set containing data set records that       
*   are sorted by storage class, with the allocated space totalled     
*   (SUMmed)                                                           
  SORT FROM(INDD) TO(OUTDD2) USING(SRT1)                               
*   Print a report showing total allocated space by storage class     
*   including the maximum, minimum and average allocated space         
  DISPLAY FROM(OUTDD2) LIST(SCRPT) BLANK -                             
  TITLE('TOTAL ALLOCATED SPACE (KB) BY STORAGE CLASS') DATE TIME -     
  HEADER('STORAGE CLASS')  HEADER('TOTAL SPACE (KB)') -               
  ON(171,10,CH)                  ON(93,4,BI) -                         
  MAXIMUM('MOST SPACE:') MINIMUM('LEAST SPACE:') -                     
  AVERAGE('AVERAGE SPACE:')                                           
* Part 5                                                               
*   Create a temporary data set that contains:                         
*    - Type 'C' capacity planning records,                             
*    - Occupancy after processing > target occupancy, and           
*    - Volume level is L0                                           
  COPY FROM(INDD) TO(OUTDD3) USING(CPY2)                           
*   PRINT A REPORT SHOWING VOLUME SERIAL NUMBER, TARGET OCCUPANCY, 
*   occupancy after processing and date                             
  DISPLAY FROM(OUTDD3) LIST(VOLRPT) BLANK -                         
  DATE(DMY.) TITLE('VOLUMES NOT MEETING TARGET THRESHOLD') -       
  HEADER('VOLUME') ON(29,6,CH) -                                   
  HEADER('TARGET OCCUPANCY') ON(45,1,FI) -                         
  HEADER('OCCUPANCY AFTER PROCESSING') ON(48,1,FI) -               
  HEADER('DATE') ON(35,4,PD)                                       
//SMSMCNTL DD *                                                     
*   Include only D-type records with DCDSMSM and DCDREBLK flags on 
 OPTION VLSHRT                                                     
 INCLUDE COND=(9,1,CH,EQ,C'D',AND,74,1,BI,EQ,B'.1...1..')           
/*                                                                 
//CPY1 CNTL DD *                                                   
*   Include only V-type records                                     
  INCLUDE COND=(9,1,CH,EQ,C'V')                                         
 /*                                                                     
 //SRT1CNTL DD *                                                       
 * Include only D-type records, sort by storage class and               
 * sum (total) allocated space                                         
  INCLUDE COND=(9,1,CH,EQ,C'D')                                         
  SORT FIELDS=(171,10,CH,A)                                             
  SUM FIELDS=(93,4,BI)                                                 
 /*                                                                     
 //CPY2 CNTL DD *                                                       
 *   Include only C-type records with volume level of L0 and           
 *   occupancy after processing > target occupancy                     
  OPTION VLSHRT                                                         
  INCLUDE COND=((9,1,CH,EQ,C'C'),&,                                     
  (39,1,BI,EQ,X'00'),&,                                                 
  (48,1,FI,GT,45,1,FI))                                                 
 /*                                                                     
 //*                                                                   


Now what is "USERGRP.DCOLLECT" ...just submiting this will give me the details of the usage or there is something else do I need to do....Thanks
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Mon May 12, 2008 2:24 pm
Reply with quote

Now everything is working fine but I am not able to get few things which the above program should give....

Show volume free space statistics
STATS FROM(OUTDD1) ON(40,1,BI)
* Show the number of volumes with free space > 30%
RANGE FROM(OUTDD1) ON(40,1,BI) HIGHER(30)

AND

* Part 5
* Create a temporary data set that contains:
* - Type 'C' capacity planning records,
* - Occupancy after processing > target occupancy, and
* - Volume level is L0
COPY FROM(INDD) TO(OUTDD3) USING(CPY2)
* PRINT A REPORT SHOWING VOLUME SERIAL NUMBER, TARGET OCCUPANCY,
* occupancy after processing and date
DISPLAY FROM(OUTDD3) LIST(VOLRPT) BLANK -
DATE(DMY.) TITLE('VOLUMES NOT MEETING TARGET THRESHOLD') -
HEADER('VOLUME') ON(29,6,CH) -
HEADER('TARGET OCCUPANCY') ON(45,1,FI) -
HEADER('OCCUPANCY AFTER PROCESSING') ON(48,1,FI) -
HEADER('DATE') ON(35,4,PD)

The 3 optput files created...2 have records...Type V and D but what is this type C records for...the thrd output file is empty.....and even if the first file have type V records...I am not getting the output for free space statistics....Can someone please help .....

Thanks
Back to top
View user's profile Send private message
graswant

New User


Joined: 29 Apr 2006
Posts: 93
Location: Singapore

PostPosted: Mon May 26, 2008 1:47 pm
Reply with quote

Work done...used this jcl to get the report...and then wrote a REXX to find if some volser is filled above 90% and throw a msg using SEND command...thanks for the inputs guys......
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Mon May 26, 2008 7:14 pm
Reply with quote

Good to hear that it is working as you need - thank you for letting us know icon_smile.gif

d
Back to top
View user's profile Send private message
Pedro

Global Moderator


Joined: 01 Sep 2006
Posts: 2547
Location: Silicon Valley

PostPosted: Tue May 27, 2008 10:08 pm
Reply with quote

DCOLLECT is an IDCAMS command which gives you volume information. You probably want a job somewhat like this that creates your DCOLLECT dataset.

Code:

//IDCAMS   EXEC PGM=IDCAMS               
//SYSPRINT DD SYSOUT=*                   
//REPORT   DD SYSOUT=* 
 DCOLLECT OUTFILE(REPORT) VOLUMES(SYS159)
/*EOF                                   
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Volume chain using DFSORT DFSORT/ICETOOL 17
No new posts REXX to send an email in Mainframe wi... CLIST & REXX 3
No new posts volume mass delete RMM JCL & VSAM 2
No new posts REXX to send an email in Mainframe CLIST & REXX 4
No new posts help send file AFT CONTROLM EM IBM Tools 0
Search our Forums:

Back to Top