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

Monitor the member of a PDS 24/7.


IBM Mainframe Forums -> TSO/ISPF
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Wed May 30, 2012 4:57 pm
Reply with quote

Hi folks,

First of all, thanks to everyone who has contributed and is continuing the good job in this forum. You guys have taught me a good deal!!.. OK that said, here is my question.

I have a PDS with a lot of members under a high level qualifier which can be edited by a bunch of people. I would like to keep track of what's being changed here in this PDS. Say, if a particular member XXX is edited by 3 different persons at 3 different times of a day, I want to know who edited when; may be I could store these info in a file and check it by EOD. I was also wondering if it's possible to display a small alert to the user who intends to edit the member. Perhaps some small message to notify the component owner before editing.

I have no idea how to trigger that event when someone tries to edit a member under the PDS. How do I acquire such a handle on a PDS? A CLIST code, perhaps? .. and most importantly, I also wanted to know if I have to rope in my Security Admin to accomplish this.

P.S: I tried searching here but couldn't get hold of anything. If this has already been discussed, kindly redirect me to that post and close this.

Thanks,
Vishwa.
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2481
Location: Netherlands, Amstelveen

PostPosted: Wed May 30, 2012 5:05 pm
Reply with quote

Use a software configuration management tool.
Back to top
View user's profile Send private message
vasanthz

Global Moderator


Joined: 28 Aug 2007
Posts: 1742
Location: Tirupur, India

PostPosted: Wed May 30, 2012 5:09 pm
Reply with quote

Quote:
Say, if a particular member XXX is edited by 3 different persons at 3 different times of a day, I want to know who edited when; may be I could store these info in a file and check it by EOD.

For this part, look at this topic from last week, it has some useful information
www.ibmmainframes.com/viewtopic.php?t=58368&highlight=
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Wed May 30, 2012 5:12 pm
Reply with quote

Peter, we do use RMS to maintain data but on a daily basis we normally don't upload components. While the component is still being built there are chances that one of our team member might end up changing few lines for his/her code to work. This change may not affect me but however it remains unnoticed by me unless he/she tells that something has been changed. So basically, I was wondering if we could display a small alert to the "editing" user to notify the group in case something is being changed. I know the protocol dictates a mail should be sent but in practice, no one does! icon_sad.gif
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Wed May 30, 2012 5:17 pm
Reply with quote

Vasanth, I did go through your JCL to pull some information from SMF but I need some help from you to understand the JCL better.

//SORTIN DD DISP=SHR,DSN=SMF DUMP DATASET

I really don't know where exactly this information is being dumped. I am just an application programmer and I am not sure if I have access to view/browse these information... but if you could help me locate the PDS I sure can give this a try.. icon_smile.gif
Back to top
View user's profile Send private message
vasanthz

Global Moderator


Joined: 28 Aug 2007
Posts: 1742
Location: Tirupur, India

PostPosted: Wed May 30, 2012 5:20 pm
Reply with quote

Hi,
If you do not know the SMF dataset names then I guess you would not have security rights to access to them. Generally application programmers are not given access to SMF. So im afraid the JCL will be of no use to you. ):
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Wed May 30, 2012 5:29 pm
Reply with quote

@Vasanth

Oh drat! I thought so.. but anyway, thanks for that JCL.. I hope it'll be useful someday. I am going to have to wait to hear from other experts.. icon_smile.gif.. If storing the entire information is complicated then a simple alert to the user would suffice(I know it sounds simple but it isn't)..
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed May 30, 2012 5:50 pm
Reply with quote

Vishwa310 wrote:
I am going to have to wait to hear from other experts..



Vishwa310,
why don't you search the forum for this same topic
(seems everybody wants to control everything, even though they have no understanding of what is going on in a computer)
and think real hard if any of the "other experts" want to waste their time on this often asked question?
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed May 30, 2012 5:51 pm
Reply with quote

Vishwa310 wrote:
I am going to have to wait to hear from other experts..



Vishwa310,
why don't you search the forum for this same topic
(seems everybody wants to control everything, even though they have no understanding of what is going on in a computer)
and think real hard if any of the "other experts" want to waste their time on this often asked question?

and what makes you think Vasanth is not qualified to answer this rookie question?
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Wed May 30, 2012 6:32 pm
Reply with quote

Personally, my expert opinion is that the question is hogwash. There should NEVER be a need for something like this in a properly designed system. The mere fact you're asking for something like this indicates your site is not properly applying existing controls already, so why complicate things by adding another layer that won't be used?
Back to top
View user's profile Send private message
Pedro

Global Moderator


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

PostPosted: Wed May 30, 2012 7:21 pm
Reply with quote

Run a SUPERC batch job several times a day. The second job step should be to notify you if there are changes.
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Wed May 30, 2012 7:36 pm
Reply with quote

Dear dbzTHEdinosauer,

By *other* experts, I mean an alternate or perhaps a second opinion from some *other* expert. By all means, I agree that Vasanth is more than qualified to answer such 2nd grade questions.

..and I posted here just because my search was futile. I just can't figure out the correct "keyword".. and as was told, if it's already asked then please redirect me and close this thread.

Robert, my intention is not to have a control over the user's edit access but to just know which member is he/she wanting to edit.
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed May 30, 2012 8:18 pm
Reply with quote

Keyword is Respository.
Back to top
View user's profile Send private message
don.leahy

Active Member


Joined: 06 Jul 2010
Posts: 765
Location: Whitby, ON, Canada

PostPosted: Wed May 30, 2012 8:40 pm
Reply with quote

My "expert" advice is not to over think the problem. Take regular backups; when there is a question about the code, compare the new version to the backup. Use baseball bat (or cricket bat if that is more convenient) to educate your programmers about the importance of communicating with their colleagues.
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Wed May 30, 2012 8:46 pm
Reply with quote

Alright, so this is not possible without SMF data, is it? .. and as I asked earlier, even if there are any other means, do I have to bring my security team into this picture to get things done?

Occasionally, due to some network latency, I will be kicked out of the emulator. When I re-login and try to open the PDS I will receive a small alert notifying that I was in the middle of an "edit" task the last time I was here. I am thinking if we could override that function and reuse it to display a similar warning message whenever someone accesses that PDS.
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Wed May 30, 2012 8:55 pm
Reply with quote

don.leahy wrote:
Use baseball bat (or cricket bat if that is more convenient) to educate your programmers about the importance of communicating with their colleagues.


ha ha, I wish I could do that. Well, we end up digging deep into a dozen of modules to zero in on the "problem" and when we report, what we often hear is simple - "oh, my bad. I forgot to notify you guys".

OK If this is going to be complicated and not a bit worthy accomplishing, I guess I have to live with the current practice - backups and compare.
Back to top
View user's profile Send private message
daveporcelan

Active Member


Joined: 01 Dec 2006
Posts: 792
Location: Pennsylvania

PostPosted: Wed May 30, 2012 9:05 pm
Reply with quote

Vishwa310,

You a thinking very progressively. This is good.

What you propose can not be done however (without some serious ISPF system programming).

What you could do if you really 'need' this to be done.

Write a Rexx exec that runs periodically. This exec would use LMMLIST with the SAVE and STATS options.

It would then check which members have been saved since the last run and report them. This is provided that the member was actually updated using ispf.

You would need your scheduling package to submit a job to perform this process on a schedule of your choosing.

This is one approach if you really 'need' this.
Back to top
View user's profile Send private message
daveporcelan

Active Member


Joined: 01 Dec 2006
Posts: 792
Location: Pennsylvania

PostPosted: Wed May 30, 2012 9:27 pm
Reply with quote

Even easier,

Use an ibm utility (can't remember which) to create an pds index listing with statistics.

Use Superce to compare this to the previous listing.

If you get a cc=1 then you have chages, and send the report to those who care.
Back to top
View user's profile Send private message
Pedro

Global Moderator


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

PostPosted: Wed May 30, 2012 9:45 pm
Reply with quote

Quote:
"oh, my bad. I forgot to notify you guys".


I found myself editing from ISPF option 2, rather than in ISPF option 10.2, so I made it harder for myself by disallowing it.

1. local version of panel ISREDM01, it sets a value for the initial macro:
Code:
&IMAC    = '$CHEKIT'


2. my $chekit macro checks the dataset name and cancels right away when a particular dataset is found:
Code:
/* rexx  */   
Address ISREDIT                   
"MACRO"                           
"(dsn) = DATASET"               
Select                             
  When (dsn = 'DEPTX.IMPORT.ANT') Then
    Do                             
      Say 'do not edit this file' 
      "CANCEL"                     
    End                           
  Otherwise                       
    Nop                           
End                               


It prevents me from editing without SCLM's blessing. Perhaps you can do something similar... you can change the rexx to send you a message for example.

Yes, this process can be easily circumvented. But it might deter the casual "oh, my bad" editor.
Back to top
View user's profile Send private message
Pandora-Box

Global Moderator


Joined: 07 Sep 2006
Posts: 1592
Location: Andromeda Galaxy

PostPosted: Wed May 30, 2012 10:03 pm
Reply with quote

daveporcelan wrote:
Even easier,

Use an ibm utility (can't remember which) to create an pds index listing with statistics.

Use Superce to compare this to the previous listing.

If you get a cc=1 then you have chages, and send the report to those who care.


IEHLIST + LISTPDS????
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2481
Location: Netherlands, Amstelveen

PostPosted: Wed May 30, 2012 10:24 pm
Reply with quote

Vishwa310 wrote:
Peter, we do use RMS to maintain data but on a daily basis we normally don't upload components. While the component is still being built there are chances that one of our team member might end up changing few lines for his/her code to work. This change may not affect me but however it remains unnoticed by me unless he/she tells that something has been changed. So basically, I was wondering if we could display a small alert to the "editing" user to notify the group in case something is being changed. I know the protocol dictates a mail should be sent but in practice, no one does! icon_sad.gif


Utterly a load of BS.
Back to top
View user's profile Send private message
Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1788
Location: Bloomington, IL

PostPosted: Wed May 30, 2012 10:38 pm
Reply with quote

PeterHolland wrote:
Vishwa310 wrote:
Peter, we do use RMS to maintain data but on a daily basis we normally don't upload components. While the component is still being built there are chances that one of our team member might end up changing few lines for his/her code to work. This change may not affect me but however it remains unnoticed by me unless he/she tells that something has been changed. So basically, I was wondering if we could display a small alert to the "editing" user to notify the group in case something is being changed. I know the protocol dictates a mail should be sent but in practice, no one does! icon_sad.gif


Utterly a load of BS.

Unfortunately, this sounds too much like the way things are done in my shop. I recently wrote some simple tools for others to use to detect unauthorized updates to staging libraries.

(And yes, I did ask, "Wouldn't be better to 'lock down' the staging libraries?" I was told, in effect, that it would be too demoralizing for the developers if they weren't allowed to do whatever they want icon_rolleyes.gif )
Back to top
View user's profile Send private message
Nic Clouston

Global Moderator


Joined: 10 May 2007
Posts: 2455
Location: Hampshire, UK

PostPosted: Wed May 30, 2012 11:46 pm
Reply with quote

once again I missed page 2!
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Thu May 31, 2012 12:55 pm
Reply with quote

daveporcelan wrote:
Vishwa310,

You a thinking very progressively. This is good.

What you propose can not be done however (without some serious ISPF system programming).

What you could do if you really 'need' this to be done.

Write a Rexx exec that runs periodically. This exec would use LMMLIST with the SAVE and STATS options.

It would then check which members have been saved since the last run and report them. This is provided that the member was actually updated using ispf.

You would need your scheduling package to submit a job to perform this process on a schedule of your choosing.

This is one approach if you really 'need' this.



Dave, the only "drawback" I see here is the reactive approach. I mean, between two successive runs there could be a chance that same member will be updated at different places by different users but this report thingy would catch hold of the last edited user. Nevertheless, thank you so much for your suggestion.. I will certainly give this a try.. icon_smile.gif
Back to top
View user's profile Send private message
Vishwa310

New User


Joined: 21 May 2012
Posts: 16
Location: India

PostPosted: Thu May 31, 2012 1:00 pm
Reply with quote

Pedro wrote:
Quote:
"oh, my bad. I forgot to notify you guys".


I found myself editing from ISPF option 2, rather than in ISPF option 10.2, so I made it harder for myself by disallowing it.

1. local version of panel ISREDM01, it sets a value for the initial macro:
Code:
&IMAC    = '$CHEKIT'


2. my $chekit macro checks the dataset name and cancels right away when a particular dataset is found:
Code:
/* rexx  */   
Address ISREDIT                   
"MACRO"                           
"(dsn) = DATASET"               
Select                             
  When (dsn = 'DEPTX.IMPORT.ANT') Then
    Do                             
      Say 'do not edit this file' 
      "CANCEL"                     
    End                           
  Otherwise                       
    Nop                           
End                               


It prevents me from editing without SCLM's blessing. Perhaps you can do something similar... you can change the rexx to send you a message for example.

Yes, this process can be easily circumvented. But it might deter the casual "oh, my bad" editor.



Pedro, this is simple and brilliant idea. One more humble attempt to let the programmer know that he/she should let others know what he is upto. Just one greedy question though, is there a way I can set this macro to stick to that PDS globally rather than with just my profile? In other words, can I achieve this without having to ask my dear programmers to set their edit profiles with this macro? icon_smile.gif
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 -> TSO/ISPF Goto page 1, 2  Next

 


Similar Topics
Topic Forum Replies
No new posts How to copy the -1 version of a membe... TSO/ISPF 4
No new posts Searching for a member but don't know... TSO/ISPF 6
No new posts Looking For a PDS Member Without Open... PL/I & Assembler 10
No new posts Library member auto insert option TSO/ISPF 3
No new posts DataSet member creation failed with B... Java & MQSeries 15
Search our Forums:

Back to Top